作者共发了5篇帖子。 内容转换:不转换▼
 
点击 回复
269 4
在Flash样板中,RMXP事件的执行内容将会直接编译成AS3脚本
一派护法 十九级
1楼 发表于:2015-12-6 23:13
不按RMXP原有的对象格式输出。
因为RMXP原有的对象格式不仅复杂冗长,而且还会导致flash执行缓慢:
一派护法 十九级
2楼 发表于:2015-12-6 23:15
例如,把变量1的值设为10这条事件命令,RMXP原有的对象格式是:
            this[1].list[0] = {}; // RPG::EventCommand
            this[1].list[0].parameters = [];
            this[1].list[0].parameters[0] = 1;
            this[1].list[0].parameters[1] = 1;
            this[1].list[0].parameters[2] = 0;
            this[1].list[0].parameters[3] = 0;
            this[1].list[0].parameters[4] = 10;
            this[1].list[0].indent = 0;
            this[1].list[0].code = 122;
可见这样太复杂了,
不如直接编译成:
$game.variables[10] = 1;
一派护法 十九级
3楼 发表于:2015-12-6 23:17
再如,变量1乘上变量12这条事件指令,原对象格式是:
            this[1].list[0] = {}; // RPG::EventCommand
            this[1].list[0].parameters = [];
            this[1].list[0].parameters[0] = 2;
            this[1].list[0].parameters[1] = 2;
            this[1].list[0].parameters[2] = 3;
            this[1].list[0].parameters[3] = 1;
            this[1].list[0].parameters[4] = 12;
            this[1].list[0].indent = 0;
            this[1].list[0].code = 122;

不如直接编译成$game.variables[2] *= $game.variables[12];
一派护法 十九级
4楼 发表于:2015-12-6 23:40
回复1楼 @巨大八爪鱼 的内容:
不按RMXP原有的对象格式输出。
因为RMXP原有的对象格式不仅复杂冗长,而且还会导致flash执行缓慢:
对于这一大堆RMXP对象,可以直接编译成ActionScript3代码:
ShowDialog("老人", "我是老人\n在Flash魔塔样板中\n请直接创建我就行了");
ShowDialog("老人", "不再像原来RMXP那样都用复制的方法创建");
ShowDialog("老人", "但是事件名必须以NPC开头\n切记!");
这样的话执行速度要快无数倍。
一派护法 十九级
5楼 发表于:2015-12-7 09:20
编译时,如果事件名是NPC,暗墙,那么还会自动增加语句。

回复帖子

内容:
用户名: 您目前是匿名发表
验证码:
(快捷键:Ctrl+Enter)
 

本帖信息

点击数:269 回复数:4
评论数: ?
作者:巨大八爪鱼
最后回复:巨大八爪鱼
最后回复时间:2015-12-7 09:20
 
©2010-2024 Arslanbar Ver2.0
除非另有声明,本站采用知识共享署名-相同方式共享 3.0 Unported许可协议进行许可。