在贤知有您作品上修改箭手如何实现多次射击
请教各位大师我在贤知有您的作品上进行了局部修改目的是实现多次射击,在地图验证过程中并未出现逾期效果,程序也未出错,不知道是什么原因?!?BA0&1000;
!!BA:H0/?v9555;[保存进攻方英雄到v9555]
!!BA:H1/?v9560;[防守方hero到v9560]
!?BG0; [动作前的变量准备(007forNH3)]v7501-v7520,v8501-v8520
!!VRv7501:C-1/-1/-1/-1/-1/-1/-1/-1/-1/-1;
!!VRv8501:C-1/-1/-1/-1/-1/-1/-1/-1/-1/-1;
!!BG:A?v7501 D?v8501 E?v8502 N?v7502 S?v7503 H?v7510 Q?v8503;
!!BMv8502&v8502>-1:B?v8504 R?v8505 N?v8506 T?v8507 I?v8508 P?v8509;[目
标]
!!BMv7502&v7502>-1:B?v7504 R?v7505 N?v7506 T?v7507 I?v7508 P?v7509;[源]
!?BA0&1000;
!!if&v9555=v85/k<21/k>-1:;
!!VRy2:S1;
!!en:;
!!if&v9555=v85/k>20/k<41:;
!!VRy2:S2;
!!en:;
!!if&v9555=v85/k>40/k<61:;
!!VRy2:S3;
!!en:;
!!if&v9555=v85/k>60/k<81:;
!!VRy2:S4;
!!en:;
!!if&v9555=v85/k>80:;
!!VRy2:S5;
!!en:;
!!if&v9560=v85/k>-1/k<21:;
!!VRy2:S1;
!!en:;
!!if&v9560=v85/k>20/k<41:;
!!VRy2:S2;
!!en:;
!!if&v9560=v85/k>40/k<61:;
!!VRy2:S3;
!!en:;
!!if&v9560=v85/k>60/k<81:;
!!VRy2:S4;
!!en:;
!!if&v9560=v85/k>80:;
!!VRy2:S5;
!!en:;
#0
!?BG0&v7501=7/v8502>-1/v7502>-1/v7507<>-1;[用于FU77006或BG1时会有BUG(见
后面衍生脚本的说明)]
!!BU:T?y90 C?y91; [战术学/战斗结束(可忽略)]
!!FU|y91=1:E;
**FU&v7507>144/v7507<150:E; [排除战争机器(暂不用)]
!!FU&v9555<>v85|v9560<>v85:E;
!!BMv7502&v7502>-1:T?y30 N?y31; [检查堆栈是否存在(可忽略)]
!!BMv8502&v8502>-1:T?y40 N?y41;
!!FU|y30<0/y31<1/y40<0/y41<1:E;
!!UN:C6919200/4/?y10; [战场信息内存地址y10]
!!VRy70:Sv7502 *1352 +21708 +y10; [箭手的内存(硬编码内部函数)](必须是真
正的箭手)
!!VRy80:Sv8502 *1352 +21708 +y10; [目标的内存(硬编码内部函数)]
!!SN:E4453920/2/y70/y80; [执行一次射击事件(精华语句)]
!!VRy2:-1;
!!SN&y2>0:G0;
我尊敬的楼主大人,贤知大师的函数已经帮你全部地写好了,你要实现扩展的东西只是两句话的事而已,你这样洋洋洒洒写了一大堆,你不觉得累我看得都累了。而且作为ERM编写者,建议楼主固定变量V这种东西能不用就不用,写一个功能用了几个个V多了肯定冲突,而且用ERA来写一般情况下也犯不着用V变量了,直接用SN:W代替即可。
ZVSE
**格鲁带领的射手可以10连击(双击再叠加),只用三行字不用一个固定变量的。我相信贤版,就不再测试了,麻烦楼主试试,应该不至于没效果吧
!?BG&1000;
!!BG:Q?y1 N?y2 E?y3;
!!BHy1:N?y4;
!!FU9999993&y4=148:Py2/y3/9;
***以下直接复制贤知有你代码,只复制一次,类似增加射击次数的功能可无限重复调用,不用再复制。
!?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;
!!VRy41:Sx2 *1352 +21708 +y20;
!!SN:E4453920/2/y31/y41; [射击且伤害]
!!BMx1:U3/d-1; [减少弹药]
!!VRx3:-1;
!!SN&x3>0:G0; [循环代码]
本帖最后由 沧海一粟 于 2014-6-13 23:54 编辑
再比如你还想继续加个德肯带领的魔幻法师增加9次射击的功能,直接这样就可以了,连复制函数都省了......
ZVSE
!?BG&1000;
!!BG:Q?y1 N?y2 E?y3;
!!BHy1:N?y4;
!!BMy2:T?y5;
!!FU9999993&y4=147/y5=136:Py2/y3/9; 贤知有您是真正的内存大师、汇编大师、DL大师、ERM大师......他所发布的函数不用再作修改直接即可调用并扩展,简单快捷而无比地强大:good_job:下面帮楼主简单例举几个实例,都是利用贤知大师上面那段函数进行的简单扩展,但真正的核心还是那段代,顺便...那些恐怖的特效动画也是先知函数应用的部分。若想体验更多更强的007射击函数应用,敬请期待怪三2.0,站在巨人的肩膀上前进的战士是最最可怕的:deyi:
不修改,确实有效果,谢谢! 沧海一粟 发表于 2014-6-14 01:14
贤知有您是真正的内存大师、汇编大师、DL大师、ERM大师......他所发布的函数不用再作修改直接即可调用并扩 ...
我觉得最强大的是 沧海一粟 大师的改进改良.
千变万化,绚丽夺目,出神入化.
看得我目瞪口呆,套用粤语一句话是: O嗮嘴.
:good_job:
楼主还是得先从基础学起啊,有些基本概念弄清楚了.阅读或修改代码就容易多了. 沧海一粟 发表于 2014-6-14 01:14
贤知有您是真正的内存大师、汇编大师、DL大师、ERM大师......他所发布的函数不用再作修改直接即可调用并扩 ...
沧海老大,这实在是太华丽了。堪比英雄无敌5 179mod里的幻影射手(3级兵的等级,6级兵的实力) 我觉得007和苍老师有在这里相互当托的嫌疑,明显是地下约好上来互捧的;hi;
你说搞ERM你们已经那么NB了,难道还要抢我们这些小白的台词???那我们还能干什么;exp; yinnaicha 发表于 2015-4-19 00:04
请问剑圣贤知有您是什么东西,能整走吗...只有电脑又他,而且太厉害了......打不赢,反倒是每回合加血比开局还 ...
那是种族特技,你只带人族士兵不混带其他族的去电脑就没这个了;jx; 这个猛了,我复制过来放入脚本,狂射。。。有没有写好的多次攻击,或不反击的代码?哪位大神 沧海一粟 发表于 2014-6-13 23:49
我尊敬的楼主大人,贤知大师的函数已经帮你全部地写好了,你要实现扩展的东西只是两句话的事而已,你这样洋 ...
这脚本不知道为什么会射自己人,比方我方点防御或休息,还是会强制出招,有时乱射自己人。。。 本帖最后由 canary 于 2018-3-8 11:49 编辑
regeditxie 发表于 2015-4-21 00:01
这脚本不知道为什么会射自己人,比方我方点防御或休息,还是会强制出招,有时乱射自己人。。。
这个我以前刚好修正过
加上句堆栈行动状态检测非射击退出即可
!?BG&1000;
!!BG:Q?y1 N?y2 E?y3 A?y8; //y8为当前堆栈动作编号
!!BHy1:N?y4; //当前攻方英雄编号
!!HEy1:E?y5/?y6/2; //y6当前攻方英雄级别
!!VRy7&y6<11:S1;//每10级+1攻击次数
!!VRy7&y6>10/y6<21:S3;
!!VRy7&y6>20/y6<31:S4;
!!VRy7&y6>30/y6<41:S5;
!!VRy7&y6>40:S6; //最多额外增加5次射击次数
!!FU9999993&y4=0/y8=7:Py2/y3/y7;//欧灵
!!FU9999993&y4=148/y8=7:Py2/y3/y7;//格鲁
页:
[1]