TS版 中毒感染脚本[老论坛]
本帖最后由 独家记忆 于 2022-7-1 10:59 编辑思路:创建一个 个人时钟,循环检测附近怪物的中毒状态,如果有怪中毒了就感染给附近的怪,代码非常简单
用个人时钟启动此函数
export function 中毒感染处理(Player: TPlayObject) {
let 怪物列表 = Player.Map.GetActorListInRange(Player.MapX,Player.MapY,300)
for (let i = 0; i < 怪物列表.Count; i++) {
let 当前怪物 = 怪物列表.Actor(i)
if (当前怪物.CheckState(0) == true){
let 要感染的怪物列表 = 当前怪物.Map.GetActorListInRange(当前怪物.MapX,当前怪物.MapY,2)
let 最多感染数量 = 5
let 已经感染数量 = 0
for (let ii = 0; ii < 要感染的怪物列表.Count; ii++) {
let 要感染的怪物 = 要感染的怪物列表.Actor(ii)
if (要感染的怪物.CheckState(0) == false && 要感染的怪物.Name != Player.Name) {
已经感染数量 = 已经感染数量 + 1
要感染的怪物.SetState(0,2,20)
if (已经感染数量 >= 最多感染数量) {
return
}
}
}
}
}
}
uploadfiles/images/400/20220107/023325_lxIZeR.png 学习一下 感谢分享!!! 这个思路就很牛了!
页:
[1]