|
请教各位大师能否帮我将脚本完善一下解决与封神2.1局部冲突问题!我编辑修改的脚本大多数地图都可玩,也很少报错,但是变态地图就容易出错,不知是变量冲突还是内存冲突!希望能得到沧海大师、贤知大师、骷髅大师等的帮助!
ZVSE
ERMS_ScriptName=script92
ERMS_ScriptAuthor=GB
ERMS_ScriptVersion=1.0.0
ERMS_ScriptDate=23.5(May).2005
ERMS_ScriptERMVersion=2.70
ERMS_ScriptLanguage=简体中文 or 中文(简体) (native)
ERMS_ScriptUsedVariables=v85-87;z3-8;z466;v2800-2806
ERMS_AdditionalFiles=新英雄特长ERM;在其他ERM不要修改v83-86的值
ERMS_ScriptUsedTimers=19
ERMS_ScriptUsedFunctions=FU644;FU7041-7052
_WARNING_#1=IMPORTANT! This file is not in a plain text format. NEVER use any editor except ERM_S for making any kind of changes!
ERMS_PoweredBy=ERM Scripter v. 2004.6.29.918
;------------------------------选择新特长--------------------------------------------
!#VRv83:C156/156/156/156; 初始化变量
!#VRz3:S^新英雄特长^;
!#VRz4:S^输入拥有该特长的英雄名字:^;
!#VRz5:S^英雄特长为:^;
!#VRz6:S^每级增加己方部队生命的5%^;
!#IF:D6/3/4/5/////////6/7/8/9;
!#IF:E87/6;
!#VRz466&v87>0:Sz1; 将输入的名字保存到z466
!?TM19&1000;
!!DO9999995/0/155/1:P; 历遍所有英雄
!!VRv85&v85=156:S99; 没有符合名字的英雄,则默认设为跟Mars的设置一样
!?FU9999995;
!!HEx16:B0/?z8; 取名字
!!HEx16:N?y10; 取编号
!!VRv85&z8=z466/v87=1:Sy10; 比较
!!VRz9&z8=z466/v87=1:S^L^;
!!VRz9&z8=z466:+z8;
!!HEx16&z8=z466:B0/z9;
!#TM77:S2/999/1/255;
!?TM77;
!!DO9999994/0/155/1:P; 检查每个英雄
!?FU9999994;
!!HEx16&x16=v85:E?j/?k W?y1 O?y6;取得英雄移动力
!!FU&y6<0:E;!!VRy2:S1;!!VRy81:Sy1 *k :30;移动力随等级计算
!!VRy6:Sy2 *k *50;经验随等级计算
!!VRy7:Sy2 *k :2;
!!VRy3:Sy1+y81;
!!HEx16&x16=v85/x16<>147/x16<>148:Gy3 Wy3 Y9/y6/1/1 Y64/2/1/1;
!!HEx16&x16=v85/x16=148:Gy3 Wy3 Y9/y6/1/1 Y64/2/1/1;
!!HEx16&x16=v85/x16=147:Gy3 Wy3 Y9/y6/1/1 Y64/2/1/1;;
---------------------------战斗开始-------------------------------------------
!?BA0&1000;
!!BA:H0/?v9555; 保存进攻方英雄到v9555
!!BA:H1/?v9560; 防守方hero到v9560
!?BF&1000; 战场生成后
!!DO9999996/0/20/1&v9555=v85:P; 小雨
!!DO9999996/21/41/1&v9560=v85:P;
---------------------------新英雄特长--------------------------------
!?FU9999996; rain(寒江夜雨)
!!BMx16:H?y-37 T?y-44 S?y23;
!!HEx16&x16=v85:E?j/?k;!!FU&y-37=0:E;
!!VRy-37&y-44<>171/y-44<>136/y-44<>136::150;
!!VRy-37&y-44=171::20;!!VRy-37&y-44=136::20;
!!VRy-37&y-44=137::20; 每级增加1%的HP
!!VRy-37&y-37=0:S1;
!!VRy-38:Sy-37 *k;
!!BMx16:Hdy-38;
!!BMx16:U2/?y-42 U3/?y-62; 按等级直接增加攻,防,伤害-------------------------
!!VRy-53:T3 +3;随机数
!!BMx16:G212/?y-57/d;提取士气值
!!BMx16:G213/?y-58/d;获取幸运值
!!VRy-57&y-57<1:S2;
!!VRy-58&y-58<1:S2;
!!VRy-63:Sy-57 +y-58 +y-53;
!!VRy-60:Sk*y-42 *y-63 :3000;---------------------------
!!VRy-48:Sk*y-42;
!!VRy-43:Sy-48:100 +y-60;怪物伤害
!!VRy-62&y-62>0:+k;
!!BMx16:U1/dy-43 U2/dy-43 U3/dy-62;
!!BMx16:N?y-45;
!!BMx16&x16=v7207|x16=v7208:N?y-65 H?y-66;
!!VRy-66:*y-65;
!!VRy-47&x16=v7207|x16=v7208:Sk:10;
!!VRy-65:+y-47;增加追随者数量
!!VRy-47&y-44=146/y-45=0:S1;
!!VRy-47&y-44=146/y-45>0:Sk:4;弩车计算公式
!!VRy-47&y-44=147/y-45>-1:Sk;帐篷计算公式
!!VRy-47&y-44>173/y-44<>180:Sk:10;指挥官不为食人魔领袖
!!VRy-47&y-44>173/y-44=180:Sk:15;指挥官为食人魔领袖
!!VRy-45&y-44=146|y-44>173:+y-47;
!!VRy-45&y-44=147:+y-47;
!!BMx16&y-44=146|y-44=147:Ndy-45;增加弩车数量
!!BMx16&x16=v7207/v9555=v85:Hdy-66;
!!BMx16&x16=v7208/v9560=v85:Hdy-66;增加追随者数量
!!VRy-43&y-44=146|y-44>173:*y-45;
!!VRy-43&x16=v7208/v9560=v85:*y-65;
!!VRy-43&x16=v7207/v9555=v85:*y-65;
!!VRy23&y-44=146:S38; 增加弩车38点速度;
!!VRy23&y-44<>146/y-44<>145/y-44<>147:Sk:5 +3; 按等级增加6点速度;
!!BMx16&x16=v7208:U1/dy-43 U2/dy-43 Sdy23;
!!BMx16&x16=v7207:U1/dy-43 U2/dy-43 Sdy23;
!!VRy-38:*y-45;!!BMx16&y-44>173:Hdy-38;以生命增加指挥官数量
!!BMx16:Sdy23 M27/1000/3 M28/1000/3 M31/1000/3 M41/1000/3;
射手能够多次射击
!?BG&1000;
!!BG:Q?y1 N?y2 E?y3 A?y5;
!!BHy1:N?y4;
!!FU|y2<0/y3<0/y4<>v85/y4<0/y5<>7:E;[限制条件]y2和y3为存在堆栈编号,y4=v85为指定英雄,y5=7表示是堆栈射击的动作
!!BMy2:T?y11 N?y12;
!!BMy3:T?y13 N?y14;
!!FU|y11<0/y13<0/y12<1/y14<1/y11=149:E;[本堆栈和目标生物存在,且本堆栈不是箭塔]
!!HEv85:E?j/?k;
!!VRy42&k>0/k<20:S0;
!!VRy42&k>19/k<30:S1;
!!VRy42&k>29/k<40:S2;
!!VRy42&k>39/k<60:S3;
!!VRy42&k>59/k<80:S4;
!!VRy42&k>79|k=0:S9;
!!FU9999993:Py2/y3/y42;
***以下直接复制贤知有你代码,只复制一次,类似增加射击次数的功能可无限重复调用,不用再复制。
!?FU9999993;
**A堆栈射击B堆栈且产生伤害(箭塔射击除外)
**x1=堆栈号
**x2=目标堆栈号
**x3=射击次数(需>0)
!!FU|x1<0/x1>41/x2<0/x2>41/x1=x2/x3<1:E;[#0]
!!BMx1:T?y1 N?y2; [#1]
!!BMx2:T?y11 N?y12;
!!FU|y1<0/y11<0/y2<1/y12<1/y1=149/y11=149:E;
!!BMx1:F?i U3/?j; [标志与弹药]
!!VRi:&4;
!!FU|i<>4/j<1:E; [非箭手或无弹药(若无射击动作会崩溃)]
*!FU&y1>144/y1<150:E; [排除战争机器]
!!UN:C6919200/4/?y20; [内存]
!!VRy31:Sx1 *1352 +21708 +y20;[A方内存地址]
!!VRy41:Sx2 *1352 +21708 +y20;[B方内存地址]
!!SN:E4453920/2/y31/y41; [射击且伤害]
!!BMx1:U3/d-1; [减少弹药]
!!VRx3:-1;
!!SN&x3>0:G0; [循环代码]------------------------------END--------------------------------;
|
|