- 积分
- 56
- 威望
- 0
- 魅力
- 0
- 经验
- 8
- 热心度
- 0
- 注册时间
- 2008-10-1
- 最后登录
- 2019-2-1
- 主题
- 3
- 回帖
- 14
- 精华
- 0
- 阅读权限
- 10
TA的每日心情 | 开心 2017-8-23 22:13 |
---|
签到天数: 13 天 连续签到: 1 天 [LV.3]火元素使者
1级 Hired Hero
- 积分
- 56
|
本帖最后由 kosisiyo 于 2015-9-18 07:15 编辑
ERM是一种反人类的语言,功能逆天却读起来像天书...
为此花了几天时间写了个脚本工具,把ERM解析的好看懂一点。
还没完工,只作了触发器和不多的几种接收器。
使用:
下载附件,解压缩,可以看到一个 ERM2TXT.BAT功能: 将WOG游戏的ERM脚本解析为可读文本的工具。执行后会在程序所在目录下生成一个与ERM同名的文本文件。
使用方法有四种
1.[推荐]用鼠标拖一个erm文件到本程序图标上执行
2.[推荐]用鼠标拖一个erm文件到本程序窗口,按[ENTER]键执行。
3.命令行格式: erm2txt drive:path\file.erm, 可用于被其他脚本调用。
4.在下方输入文件名,按[ENTER]键执行。
链接:http://pan.baidu.com/s/1jGGmPYe
疗效如下,从猪大的9合一里面随便摘了一段更换宠物的
=========我是华丽的分割线==========
触发器_函数调用(1012) 而且 (x1=13) ;!?FU1012&x1=13;
if(x1<>13)结束函数 ;!!FU&x1<>13:E;
!!IF&x3<2000:M^更换指挥官需要2000金,您的金钱不足!^;
if(x3<2000)结束函数 ;!!FU&x3<2000:E;
!!CO-1:E?x5;
!!IF&x5<>1:M^您还没有雇佣指挥官!^;
if(x5<>1)结束函数 ;!!FU&x5<>1:E;
!!CO-1:T?x4;
if(and(x4<0,x4>8))结束函数 ;!!FU&x4<0/x4>8:E;
x5=v3515 &256 ;!!VRx5:Sv3515 &256;
if(x5=0)z3=^开启^ ;!!VRz3&x5=0:S^开启^;
if(x5=256)z3=^关闭^ ;!!VRz3&x5=256:S^关闭^;
if(x4=0)z8=^圣骑士^ ;!!VRz8&x4=0:S^圣骑士^;
if(x4=1)z8=^圣师^ ;!!VRz8&x4=1:S^圣师^;
if(x4=2)z8=^圣堂守卫^ ;!!VRz8&x4=2:S^圣堂守卫^;
if(x4=3)z8=^女妖^ ;!!VRz8&x4=3:S^女妖^;
if(x4=4)z8=^收魂使者^ ;!!VRz8&x4=4:S^收魂使者^;
if(x4=5)z8=^嗜杀者^ ;!!VRz8&x4=5:S^嗜杀者^;
if(x4=6)z8=^食人魔领袖^ ;!!VRz8&x4=6:S^食人魔领袖^;
if(x4=7)z8=^萨满^ ;!!VRz8&x4=7:S^萨满^;
if(x4=8)z8=^星界灵^ ;!!VRz8&x4=8:S^星界灵^;
z9=^当前指挥官是{%Z8}需要更换吗?^ ;!!VRz9:S^当前指挥官是{%Z8}需要更换吗?^;
z22=^不需要更换^ ;!!VRz22:S^不需要更换^;
z23=z125043 ;!!VRz23:Sz125043;
z24=z125044 ;!!VRz24:Sz125044;
z25=z125045 ;!!VRz25:Sz125045;
z26=z125046 ;!!VRz26:Sz125046;
z27=z125047 ;!!VRz27:Sz125047;
z28=z125048 ;!!VRz28:Sz125048;
z29=z125049 ;!!VRz29:Sz125049;
z30=z125050 ;!!VRz30:Sz125050;
z31=z125051 ;!!VRz31:Sz125051;
z32=^%Z3 弱化女妖特技(无法魅惑3级以上兵种)^ ;!!VRz32:S^%Z3 弱化女妖特技(无法魅惑3级以上兵种)^;
v10=0 ;!!VRv10:S0;
!!IF:G1/10/1/9/22/23/24/25/26/27/28/29/30/31/32/0;
x6=v10 ;!!VRx6:Sv10;
if(or(x6<2,x6>1024))结束函数 ;!!FU|x6<2/x6>1024:E;
if(and(x6=1024,x5=0))v3515=v3515 | 256 ;!!VRv3515&x6=1024/x5=0: |256;
if(and(x6=1024,x5=256))v3515=v3515 - x5 ;!!VRv3515&x6=1024/x5=256:-x5;
x7=-1 ;!!VRx7:S-1;
if(x6=2)x7=0 ;!!VRx7&x6=2:S0;
if(x6=4)x7=1 ;!!VRx7&x6=4:S1;
if(x6=8)x7=2 ;!!VRx7&x6=8:S2;
if(x6=16)x7=3 ;!!VRx7&x6=16:S3;
if(x6=32)x7=4 ;!!VRx7&x6=32:S4;
if(x6=64)x7=5 ;!!VRx7&x6=64:S5;
if(x6=128)x7=6 ;!!VRx7&x6=128:S6;
if(x6=256)x7=7 ;!!VRx7&x6=256:S7;
if(x6=512)x7=8 ;!!VRx7&x6=512:S8;
if(or(x7<0,x7>8))结束函数 ;!!FU|x7<0/x7>8:E;
!!OW:R-1/6/d-2000 R-1/6/?x3;
!!CO-1:Tx7;
立即调用函数1012(1,x2,x3) ;!!FU1012:P1/x2/x3;
**END**
!?OB54;
立即调用函数1012(52) ;!!FU1012:P52;
|
|