- 积分
- 10807
- 威望
- 64
- 魅力
- 63
- 经验
- 7156
- 热心度
- 3
- 注册时间
- 2015-11-15
- 最后登录
- 2024-2-20
- 主题
- 104
- 回帖
- 1839
- 精华
- 8
- 阅读权限
- 120
TA的每日心情 | 开心 2015-12-9 01:09 |
---|
签到天数: 9 天 连续签到: 1 天 [LV.3]火元素使者
版主
- 积分
- 10807
|
发表于 2016-6-21 20:04:34
|
显示全部楼层
程序会在相应的时候,把各种游戏数据记录在各种物体(可以理解为不同的信息文件)中,所以,
脚本的基本结构是,哪个物体,在怎样的条件下,干什么。
举个例子,触发位于地图坐标1/1/1的事件物体时,如果v100的值为1,则执行后面跟的句子,即读取一号英雄的坐标到v1,v2,v3。
!?LE1/1/1&v100=1/v100=2; 这句可以这么读:当触发编号为1/1/1的事件物体时,如果v100=1,而且v100=2,则执行以下命令
!!HE1:Pv1/v2/v3; 这句可以这么读:一号英雄的位置改为v1,v2,v3
!!HE2:P?v11/?v12/?v13; 这句可以这么读:二号英雄的位置读取到v11,v12,v13
对于新手来讲,写脚本前,先写注解(即怎么读)很重要。请不要用人类的跳跃性思维写注解!
!?表示触发开始前。!!表示要执行的命令。每句以!开头;结尾。/是用来分开不同的参数,多数情况下没实际意义。
LE是本地事件Local Event物体,就是地图编辑器里设置的蓝色的事件物体,1/1/1是事件物体的编号(其实是地图坐标),这样就可以告诉程序,当遇到在1/1/1的事件时执行设定的命令了。
&可以理解为“并且”,当v100=1,并且v100=2。当然同一个东西有不同的值是不可能的,那么之后的!!句子就不会执行。
另外,既然有“并且”,那就肯定有“或者”,留个楼主自己去翻erm帮助吧。
HE是英雄Hero物体,1是英雄编号。:表示这个物体要干什么,P是位置信息Position,v1/v2/v3 表示把x,y,z坐标分别改成v1,v2,v3。?v11/?v12/?v13 表示把x,y,z坐标分别记录到v11,v12,v13。这里的?表示读取。另外并不是所有的命令都支持读取和写入的,要看erm帮助。我就是跟着帮助自学的erm。帮助里除了没讲把写好的脚本放在什么地方,其他的都很全了。
另外,我这句HE:P的语句好像有个小问题,楼主能参考erm帮助找出来吗?
|
|