【官方脚本重写】魔法蘑菇ERA版
首先说说为什么要重写官方脚本:1、ERA新增了外部变量(SN:W、SN:M),使用外部变量能够大大减少ERM的变量冲突发生。但是官方脚本依然处于358F时代,占用了大量变量。重写官方脚本,不仅仅使官方脚本本身更稳定,也使得第三方脚本更稳定。
2、官方脚本很多甚至都不是358F时代的作品,而是诞生于更早的版本,逻辑结构繁杂而无序,晦涩难懂,大量的变量毫无节制地占用,非常不稳定。(比如说这个魔法蘑菇脚本就是典型的例子)
3、ERA新增了挺多的新功能,其实可以在不改变原脚本原理的基础上,加上这些功能,让ERM有趣。(比如该脚本加入了彩色字体)
下面进入正题:
重写魔法蘑菇脚本只是因为在地图《生命的烈焰2》中要用到这个脚本,所以自己为了加强自己地图的稳定性,在原来的基础上重新写了一下,顺便就抛砖引玉发出来。
主要改动了以下几个方面:
1、去除了原脚本中一半的ERM变量使用,改用临时变量y,英雄变量w改用SN:M数组。
2、加入了彩色字体功能
3、调整繁琐的逻辑结构,改用if-else-end语法
4、修正文本框内容
5、重写中文注释,方便阅读
使用方法:将zip文件解压并覆盖原文件即可。
备注:仅用于ERA2.46以上,不保证低于该版本是否会出现异常。
脚本代码:
ZVSE
变量使用申明:TM10、FU10、SN:M20~M23、z10~z14
该脚本根据WOG358F官方68号ERM脚本:魔法蘑菇重写,将繁杂的的语法结构重构,重写中文注释,去除不必要的变量,并将英雄变量改用为SN:M数组。
仅用于ERA2.46及以上版本
注:如需使用在地图脚本中,请在脚本说明部分开头(或WOG选项部分)加上UN:P110/1命令。
****定义每周清除魔法蘑菇效果****
!#UN:P110/?v1; 检查魔法蘑菇选项是否打开
!#TM10&v1=1:S1/999/7/255; 每个玩家每周一触发一次
****蘑菇暗示文本****
**水系魔法蘑菇**
!#VRz11&v1=1:S^{~DodgerBlue}水系魔法蘑菇{~}^;
!#HT63/18&v1=1:Tz11;
**火系魔法蘑菇**
!#VRz12&v1=1:S^{~FireBrick}火系魔法蘑菇{~}^;
!#HT63/29&v1=1:Tz12;
**土系魔法蘑菇**
!#VRz13&v1=1:S^{~Tan}土系魔法蘑菇{~}^;
!#HT63/23&v1=1:Tz13;
**气系魔法蘑菇**
!#VRz14&v1=1:S^{~Cyan}气系魔法蘑菇{~}^;
!#HT63/14&v1=1:Tz14;
**设置ERA数组**
!#SN&v1=1:M20/156/0/1;
!#SN&v1=1:M21/156/0/1;
!#SN&v1=1:M22/156/0/1;
!#SN&v1=1:M23/156/0/1;如果选项打开则设置ERA数组
****每周重置计时器****
!?TM10;
!!UN:P110/?y1;检查魔法蘑菇选项是否打开
!!FU&y1<>1:E;
!!OW:C?y1;检查当前玩家颜色
!!DO10/0/155/1:Py1;触发循环函数,x16为英雄编号,x1为当前玩家颜色
**进入循环函数**
!?FU10;
!!HEx16:O?y1;检查x16号英雄所属玩家
!!if&y1=x1:;如果英雄x16属于当前玩家颜色
!!SN:M20/x16/?y1;
!!SN:M21/x16/?y2;
!!SN:M22/x16/?y3;
!!SN:M23/x16/?y4;
*水
!!if&y1>0:;
!!VRy1:*-1;
!!HEx16:S16/dy1; 将英雄的辅助技能等级减去y1
!!en:;
*火
!!if&y2>0:;
!!VRy2:*-1;
!!HEx16:S14/dy2; 将英雄的辅助技能等级减去y1
!!en:;
*土
!!if&y3>0:;
!!VRy3:*-1;
!!HEx16:S17/dy3; 将英雄的辅助技能等级减去y1
!!en:;
*气
!!if&y4>0:;
!!VRy4:*-1;
!!HEx16:S15/dy4; 将英雄的辅助技能等级减去y1
!!en:;
*重置访问标志
!!SN:M20/x16/0;
!!SN:M21/x16/0;
!!SN:M22/x16/0;
!!SN:M23/x16/0;
!!en:;
****访问魔法蘑菇****
**水系蘑菇**
!?OB63/18;
!!UN:P110/?y1;
!!FU&y1<>1:E;检查魔法蘑菇是否打开
!!HE-1:N?y1;检查当前英雄编号
!!SN:M20/y1/?y2;获取数组中当前英雄的储存值
!!if&y2>0:;如果y2大于0,显示已访问
!!IF&1000:M^{~DodgerBlue}水系魔法蘑菇{~}
您已经在本周访问了水系魔法蘑菇。
请下周再来。^;
!!el:;否则进行访问环节
!!HE-1:S16/?y3;检查英雄当前技能等级
!!if&y3=3:;如果已经拥有高级技能,显示访问无效
!!IF&1000:Q1/20/53/1^{~DodgerBlue}水系魔法蘑菇{~}
水系魔法蘑菇使英雄在本周获得高级水系魔法……
由于你已经拥有了高级水系魔法,蘑菇无法给你任何帮助。^;
!!el:;否则进入生效环节
!!VRy4:S3 -y3;y4的值为【高级技能3】-【已有技能y3】的差
!!IF&1000:Q1/20/53/1^{~DodgerBlue}水系魔法蘑菇{~}
水系魔法蘑菇使英雄在本周获得高级水系魔法……
你吸入了魔法蘑菇孢子……你学会了高级水系魔法!^;
!!HE-1:S16/3;英雄获得技能
!!SN:M20/y1/y4;将差值写入数组
!!en:;
!!en:;
**火系蘑菇**
!?OB63/29;
!!UN:P110/?y1;
!!FU&y1<>1:E;检查魔法蘑菇是否打开
!!HE-1:N?y1;检查当前英雄编号
!!SN:M21/y1/?y2;获取数组中当前英雄的储存值
!!if&y2>0:;如果y2大于0,显示已访问
!!IF&1000:M^{~FireBrick}火系魔法蘑菇{~}
您已经在本周访问了火系魔法蘑菇。
请下周再来。^;
!!el:;否则进行访问环节
!!HE-1:S14/?y3;检查英雄当前技能等级
!!if&y3=3:;如果已经拥有高级技能,显示访问无效
!!IF&1000:Q1/20/47/1^{~FireBrick}火系魔法蘑菇{~}
火系魔法蘑菇使英雄在本周获得高级火系魔法……
由于你已经拥有了高级火系魔法,蘑菇无法给你任何帮助。^;
!!el:;否则进入生效环节
!!VRy4:S3 -y3;y4的值为【高级技能3】-【已有技能y3】的差
!!IF&1000:Q1/20/47/1^{~FireBrick}火系魔法蘑菇{~}
火系魔法蘑菇使英雄在本周获得高级火系魔法……
你吸入了魔法蘑菇孢子……你学会了高级火系魔法!^;
!!HE-1:S14/3;英雄获得技能
!!SN:M21/y1/y4;将差值写入数组
!!en:;
!!en:;
**土系蘑菇**
!?OB63/23;
!!UN:P110/?y1;
!!FU&y1<>1:E;检查魔法蘑菇是否打开
!!HE-1:N?y1;检查当前英雄编号
!!SN:M22/y1/?y2;获取数组中当前英雄的储存值
!!if&y2>0:;如果y2大于0,显示已访问
!!IF&1000:M^{~Tan}土系魔法蘑菇{~}
您已经在本周访问了土系魔法蘑菇。
请下周再来。^;
!!el:;否则进行访问环节
!!HE-1:S17/?y3;检查英雄当前技能等级
!!if&y3=3:;如果已经拥有高级技能,显示访问无效
!!IF&1000:Q1/20/56/1^{~Tan}土系魔法蘑菇{~}
土系魔法蘑菇使英雄在本周获得高级土系魔法……
由于你已经拥有了高级土系魔法,蘑菇无法给你任何帮助。^;
!!el:;否则进入生效环节
!!VRy4:S3 -y3;y4的值为【高级技能3】-【已有技能y3】的差
!!IF&1000:Q1/20/56/1^{~Tan}土系魔法蘑菇{~}
土系魔法蘑菇使英雄在本周获得高级土系魔法……
你吸入了魔法蘑菇孢子……你学会了高级土系魔法!^;
!!HE-1:S17/3;英雄获得技能
!!SN:M22/y1/y4;将差值写入数组
!!en:;
!!en:;
**气系蘑菇**
!?OB63/14;
!!UN:P110/?y1;
!!FU&y1<>1:E;检查魔法蘑菇是否打开
!!HE-1:N?y1;检查当前英雄编号
!!SN:M23/y1/?y2;获取数组中当前英雄的储存值
!!if&y2>0:;如果y2大于0,显示已访问
!!IF&1000:M^{~Cyan}气系魔法蘑菇{~}
您已经在本周访问了气系魔法蘑菇。
请下周再来。^;
!!el:;否则进行访问环节
!!HE-1:S15/?y3;检查英雄当前技能等级
!!if&y3=3:;如果已经拥有高级技能,显示访问无效
!!IF&1000:Q1/20/50/1^{~Cyan}气系魔法蘑菇{~}
气系魔法蘑菇使英雄在本周获得高级气系魔法……
由于你已经拥有了高级水系魔法,蘑菇无法给你任何帮助。^;
!!el:;否则进入生效环节
!!VRy4:S3 -y3;y4的值为【高级技能3】-【已有技能y3】的差
!!IF&1000:Q1/20/50/1^{~Cyan}气系魔法蘑菇{~}
气系魔法蘑菇使英雄在本周获得高级气系魔法……
你吸入了魔法蘑菇孢子……你学会了高级气系魔法!^;
!!HE-1:S15/3;英雄获得技能
!!SN:M23/y1/y4;将差值写入数组
!!en:;
!!en:;
********end~~~魔法蘑菇脚本完毕********
重写:克招
日期:2015/11/5
克招搞ERA上手真快.值得一赞.
不过这样用SN:M数组也太泛滥了吧.
既然是针对英雄,应该直接用英雄w变量才方便啊.还整那么多个SN:M..156.
别以为SN:M不会冲突哦.你用的是 SN:M20,那你怎么觉得别人不会用SN:M20.
;aieol; 贤知有您 发表于 2015-11-5 16:15
克招搞ERA上手真快.值得一赞.
不过这样用SN:M数组也太泛滥了吧.
起码M是无限的,W变量就那几个 贤知有您 发表于 2015-11-5 16:15
克招搞ERA上手真快.值得一赞.
不过这样用SN:M数组也太泛滥了吧.
原脚本你看一下就知道了,居然占用了8个w变量,那才叫浪费。 好吧从不开蘑菇环,还有传送门收费之类的。。。。。。 看到克招重燃圣火,感觉未来很光明。我年纪大了,反应慢了,也健忘,但更念旧。看到老朋友们回来总是很激动。 slot 20#周期性跳出。
独孤求败 发表于 2015-12-11 03:19
slot 20#周期性跳出。
除了用这个脚本之外你还用了什么脚本? 克招 发表于 2015-12-11 09:00
除了用这个脚本之外你还用了什么脚本?
- 触发方式在脚本开始有说明
21 wog - neutral units——生物银行7日重置=1
25 wog - dungeon of the dragonmaster——已经修改好的随机17种龙周期无限访问=2
26 wog - mirror of the home-way——回城卷轴右键英雄头像图标=3
28 wog - enhanced monsters——沧海版本怪物强化3诸神之刃v1.7=4
42 wog - mithril enhancements——秘银右键攻击图标=5
53 wog - map options——地图规则针对高山堡垒修改版及右键力量图标=6
82 - 资源类、矿井驻守=8
83 - 资源类、交易市场=9
84 - 生物类、关联升级=10
85 - 生物类、生物融合=11
86 - 生物类、幻影神弓=12
87 - 生物类、冠军骑士=13
88 - 系统类、查询修改=14
89 - 系统类、修正合集=15
90 - 城镇类、建筑师=16
91 - 城镇类、八级工会=17
92 - 城镇类、一键招兵=18
93 - 英雄类、驻防经验=19
94 - 英雄类、无城不败=20
95 - 英雄类、英雄转世=21
96 - 英雄类、原组可拆=22
97 - 英雄类、新组不拆=23
98 - 英雄类、宠物跨关=24
http://www.h3wog.com/forum.php?mod=viewthread&tid=53132 独孤求败 发表于 2015-12-11 15:30
- 触发方式在脚本开始有说明
21 wog - neutral units——生物银行7日重置=1
25 wog - dungeon...
有这么多啊,那我就不清楚了,我用了SN:M20~23,如果那些脚本里有用这个的话,就冲突了,有空我再改改我的脚本。
页:
[1]