mkfx521 发表于 2023-2-28 19:47:53

又一个全屏吸怪的设想

[@MagicAttack]

;释放魔法触发
;由于这里可能会写更多的其他触发,建议使用延迟调转到其他脚本(不使用goto是因为引擎的延迟跳转无法发送封包)

#IF
NOT CHECKCURRTARGETRACE = 0
;检测是否不是人物
#Act
DELAYGOTO 100 @MagicAttack_全屏吸怪
; (注意使用分段式脚本时 使用系统触发+_可以有效防止封包,该经验来自老GOM GEE)
;这里没写break 是因为 这里是系统触发 可能后面还会写其他逻辑 加上break 后面的就不会运行了

[@MagicStruck_全屏吸怪]
#OR
EQUAL <$CURRRUSEMAGICID> 1091
EQUAL <$CURRRUSEMAGICID> 1092
EQUAL <$CURRRUSEMAGICID> 1093
;检测是否使用的规定内的技能ID
#Act
M.MAPMOVE <$MAP> <$X> <$Y>
;多级M.表示怪物移动到人物的 地图代码 X Y 应该就是吸怪的主要逻辑了(没有测试过,不知道怪物能不能被传送)
break
;这里break由于使用 延迟跳转或goto 不会禁止其他脚本运行
;在使用mapmove命令传送人物时会秒弹出一个NPC对话框 部分引擎break就能删除 有的必须使用close

;注意 break 是停止脚本 所以要写在所有逻辑之后 close是关闭对话框 可以是Act后就写入

;分段式写法 也容易集中检测条件 在某些情况下 减少服务器压力 例如:拾取鉴定



另一种写法:
[@MagicAttack]
;释放魔法触发
;由于这里可能会写更多的其他触发,建议使用延迟调转到其他脚本(不使用goto是因为引擎的延迟跳转无法发送封包)

#OR
EQUAL <$CURRRUSEMAGICID> 1091
EQUAL <$CURRRUSEMAGICID> 1092
EQUAL <$CURRRUSEMAGICID> 1093
;检测是否使用的规定内的技能ID
#Act
DELAYGOTO 100 @MagicAttack_全屏吸怪

[@MagicStruck_全屏吸怪]
#IF
NOT CHECKCURRTARGETRACE = 0
;检测是否不是人物
#Act
M.MAPMOVE <$MAP> <$X> <$Y>
;多级M.表示怪物移动到人物的 地图代码 X Y 应该就是吸怪的主要逻辑了(没有测试过,不知道怪物能不能被传送)
break


第一种 只要不是人 都会去检测技能是否在ID内 好处是在Act可以 goto DELAYGOTO #CALL 其他更多的触发
第二种 是 使用ID内的技能 后 只要不是人 好处是在发现不是规定技能后就停止运行 微量减少服务器压力

传奇客家 发表于 2023-2-28 21:36:07

以前就是这样写的啊~!!GOM引擎之前邪七的教程就是这样了~!

551397 发表于 2023-3-1 00:49:56

本帖最后由 551397 于 2023-3-1 00:51 编辑

谢谢楼主分享

551397 发表于 2023-3-1 00:57:49

去下载一个我写的全屏吸怪脚本吧 保证你吸怪爽的飞起

萝卜将军 发表于 2023-3-1 11:22:55

感谢大佬分享

tibaiwan1888 发表于 2023-5-25 22:32:24



才卖100金币,真便宜。可是我买不起

assa0000 发表于 2023-8-2 07:51:28

感谢大哥分享

zyc081204 发表于 2025-5-3 08:39:35

有道理,我是小白完全懵逼

蓝大侠 发表于 2025-6-4 13:22:31

有道理,我是小白完全懵逼
页: [1]
查看完整版本: 又一个全屏吸怪的设想