- 积分
- 34677
- 威望
- 499
- 魅力
- 507
- 经验
- 20326
- 热心度
- 9
- 注册时间
- 2006-3-13
- 最后登录
- 2024-9-30
- 主题
- 134
- 回帖
- 4949
- 精华
- 35
- 阅读权限
- 150
TA的每日心情 | 郁闷 2015-6-6 16:12 |
---|
签到天数: 52 天 连续签到: 1 天 [LV.5]女巫
超级版主
- 积分
- 34677
|
本帖最后由 贤知有您 于 2013-8-26 15:33 编辑
论坛装修过之后,貌似我还没发过新主题.而且感觉论坛比之前冷清了.
看看ERM版块,连之前常在的沧海兄和FLY兄等众ERM人物也神龙无影了.
然则我自己最近也是很少光顾论坛,杂事缠身实在是抱歉.
最近看到OxFEA(对H3硬编码超熟悉的外国人)的一则用ERM内存操作法控制模拟战场堆栈攻击事件的代码.
其中控制箭手射击的代码貌似很有趣,而且可以应用到ERA脚本上且出BUG的几率较少.
今天有点空档我就尝试写了2个有趣的代码,这些代码是ERM标准语法无法做到的(因为正常ERM语法无法控制堆栈动画)
先声明的是,以下脚本都是ERA脚本,不要放到WOG中运行,给你N个错误.而且,这些脚本我并没有仔细测试,是凭感觉写出来的.
但其中一些关键语句,估计对很多喜欢创作ERM的朋友很有用.可以衍生出很多有趣写法.
首先,大家一定很喜欢WOG的残忍之斧,它能够给予肉搏生物多一次攻击能力.但奇怪的是,它居然不眷顾箭手.实在是气人.
于是我写了这么一个脚本,当英雄同时携带"黄金弓+幻影神弓+神目鸟"宝物时(刚好填满杂物栏),英雄带领的箭手将获得新技能.
这个技能允许箭手每次射击行动都多一次射击.(原先双击则拥有3次攻击),是箭手版的残忍之斧.
当然你可以修改用那些宝物来催化出这个技能.我感觉黄金弓和幻影神弓基本不会混在一起用,干脆给他们个组合机会吧.
另外在创作这个脚本后,又想到了一个有趣的衍生脚本.
格鲁麾下的幻影箭手拥有远程反击特技
所谓远程反击,就是幻影箭手遭受远程攻击后(非箭塔),能够自发反击一次(当然自身还存在下).
如果幻影箭手本身有双击的话,那就双击反击哈哈.
为了不出现BUG,当对手攻击后出现高士气的情况时,幻影箭手的反击当次不生效(自己测试体会).
注:
生物只能是原地射击,不会转身.
如果生物需要转身才能射击时,你会发现该生物原地射击,箭头会往后拐弯的搞笑现象.- ZVSE
- **英雄同时佩戴"黄金弓+幻影神弓+神目鸟"宝物时,获得加强效果
- 英雄携带的所有箭手能射击后再多一次射击
- **格鲁麾下的幻影箭手拥有远程反击特技(射击一次,但对手高士气时无效)
- **ERA版本的本地游戏专用
- **贤知有您作品 007-130826
- !?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;
- !!SN:W^007.ShootA.0^/0 W^007.ShootA.1^/0;
- !!if&v9555>-1:;
- !!HEv9555:A2/91/?y10/?y1 A2/137/?y10/?y2 A2/63/?y10/?y3;[检查3件宝物]
- !!SN&y1>0/y2>0/y3>0:W^007.ShootA.0^/999; [作为标志用]
- !!en:;
- !!if&v9560>-1:;
- !!HEv9560:A2/91/?y10/?y11 A2/137/?y10/?y12 A2/63/?y10/?y13;
- !!SN&y11>0/y12>0/y13>0:W^007.ShootA.1^/999;
- !!en:;
- !?BG0&v7501=7/v8502>-1/v7502>-1/v7507<>149;[用于FU77006或BG1时会有BUG(见后面衍生脚本的说明)]
- !!BU:T?y90 C?y91; [战术学/战斗结束(可忽略)]
- !!FU|y90=1/y91=1:E;
- **FU&v7507>144/v7507<150:E; [排除战争机器(暂不用)]
- !!SN:W^007.ShootA.%V8503^/?y99; [检测攻击方是否拥有3件装备]
- !!FU&y99<>999: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; [执行一次射击事件(精华语句)]
- *---------------------------------------------------------------------
- **衍生出有趣脚本(单独使用时仍然需要上面的动作前变量)
- **格鲁麾下的幻影箭手拥有远程反击特技(射击一次,但对手高士气时无效)
- !?BG1&v7501=7/v8502>-1/v7502>-1/v7507<>149/v8507=137;
- !!BU:T?y90 C?y91; [战术学/战斗结束(可忽略)]
- !!FU|y90=1/y91=1:E;
- !!VRy10:Sv8503 *-1 +1; [被攻击方]
- !!BHy10:N?y11; [当前攻击方的英雄y11]
- !!FU&y11<>148:E; [不是格鲁退出]
- !!BMv7502&v7502>-1:T?y30 N?y31; [检查堆栈是否存在(避免可能的特殊情况)]
- !!BMv8502&v8502>-1:T?y40 N?y41 U3/?y42;[y42=弹药数]
- !!FU|y30<0/y31<1/y40<0/y41<1/y42<1:E;
- !!BG:N?y3; [下一轮堆栈]
- !!FU&y3=v7502:E; [这里有个特殊情况]
- **当对方射击完成后,下一轮仍然是此堆栈行动(比如高士气),此时最好不要攻击,可能出现BUG
- **此BUG跟上面脚本一样,模拟攻击语句前刚好下一轮是对手行动的话,当模拟攻击恰好杀死对手,此时会出现站尸
- **站尸的出现,是因为有行动堆栈而没有实质堆栈数量(一个空壳),所以这里忽略掉以免出错
- !!BMv8502:F?i;
- !!VRy4:Si &4; [射击]
- !!VRy5:Si &32768; [双击]
- !!FU&y4<>4:E;
- !!UN:C6919200/4/?y10; [战场信息内存地址y10]
- !!VRy70:Sv8502 *1352 +21708 +y10; [箭手的内存(硬编码内部函数)](必须是真正的箭手)
- !!VRy80:Sv7502 *1352 +21708 +y10; [目标的内存(硬编码内部函数)]
- !!SN:E4453920/2/y70/y80; [执行一次射击事件]
- !!if&y5=32768:; [箭手本身可射击2次时]
- !!BMv7502&v7502>-1:T?y30 N?y31; [重新检查堆栈是否存在(避免可能的特殊情况)]
- !!BMv8502&v8502>-1:T?y40 N?y41 U3/?y42;[y42=弹药数]
- !!FU|y30<0/y31<1/y40<0/y41<1/y42<1:E;
- !!SN:E4453920/2/y70/y80; [再执行一次射击事件]
- !!en:;
- **贤知有您**
复制代码
黄金弓 幻影 神目鸟的组合.rar
(1.62 KB, 下载次数: 149)
|
评分
-
6
查看全部评分
-
|