设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: 晴兰
打印 上一主题 下一主题

[讨论] [消除事件党脚本党区别]关于RMVA事件-脚本翻译器的讨论

[复制链接]

Lv1.梦旅人

路人党员

梦石
0
星屑
52
在线时间
2276 小时
注册时间
2010-12-30
帖子
3225
11
发表于 2012-11-30 13:45:48 | 只看该作者
@晴兰 ,仔细阅读你的文章过后发现到你的方案其实存在着一个问题,
就是你遗忘了这些存在:
  1.   #--------------------------------------------------------------------------
  2.   # ● 更新画面
  3.   #--------------------------------------------------------------------------
  4.   def update
  5.     super
  6.     $game_map.update(true)
  7.     $game_player.update
  8.     $game_timer.update
  9.     @spriteset.update
  10.     update_scene if scene_change_ok?
  11.   end
复制代码
外加Graphics.update,
这些存在虽说会降低效率,但是不存在又不行,
然而完全忽略用脚本取而代之。。。

以上的图前者与后者所要表达的内容看似一模一样,
但是执行起来的效果是前者先显示图片而后msgbox,
而后者则是先msgbox再显示图片。
当然在适当的时候才刷新画面也能增加效率,
但是这个工程谁要负责?

点评

另外从源代码预测这两个分别,运行效果是相同的,我运行也是这样。问题是不是出在这两个写在一起然后已经由前者初始化了后者要显示的图片。。  发表于 2012-11-30 14:03
这个方案与并行化无关。。与数据同步也无关。。原来VA是怎么并行的还是怎么并行,这里只是把一些明显的循环啊指令啊展开一下  发表于 2012-11-30 14:02
并行的话沿用VA的Fiber  发表于 2012-11-30 13:54
p/s:真的loop的时候并行事件要怎么办,难不成用Thread?  发表于 2012-11-30 13:49
本人擅长XP,如果有脚本或者Ruby方面的问题欢迎发电邮到[email protected]咨询,本人很少检查电邮所以不一定会及时回复,本人不会直接出手解决问题只会提供一个方向,所以谢绝伸手党
回复 支持 反对

使用道具 举报

Lv2.观梦者

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
帖子
6562

烫烫烫开拓者

12
发表于 2012-11-30 18:03:58 | 只看该作者
……这样有一个很严重的问题,全部翻译成脚本会把整个事件挂起……
事件解释器一一条一条运行的,这样才能伪多个事件一起运行……还能随时存档什么的。。

点评

发生了外部IO如存档时,从这里断开为上下两部分,总比事件一条一条断开要优化  发表于 2012-11-30 18:09
把整个事件挂起的语义和并行相同,与这里的语义无关。。只要Fiber.yield能正常工作,按原样翻译就行了  发表于 2012-11-30 18:08
哎呀,蛋疼什么的最有爱了
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv2.观梦者 (禁止发言)

梦石
0
星屑
653
在线时间
3774 小时
注册时间
2011-2-26
帖子
1839

开拓者

13
 楼主| 发表于 2012-11-30 18:12:28 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-19 01:32

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表