# ● 判断状态 [无法回避攻击]
#--------------------------------------------------------------------------
def cant_evade?
for i in @states
if $data_states.cant_evade
return true
end
end
return false
end
#--------------------------------------------------------------------------
简单来说,这是做一个any?的遍历
先对所有状态都判断,也就是for i in @states
然后只要有一个状态是“无法回避”,那么这个角色就会“无法回避”,所以
if $data_states.cant_evade # 这里是不是应该用 if $data_states[ i].cant_evade
return true
end
剩下的状态就不需要判断了,这就是return在这里的作用。
只有所有状态都不含“无法回避”,才能下结论“不是无法回避”,所以在最后return false