赞 | 390 |
VIP | 0 |
好人卡 | 11 |
积分 | 379 |
经验 | 242285 |
最后登录 | 2024-5-13 |
在线时间 | 5449 小时 |
Lv5.捕梦者
- 梦石
- 0
- 星屑
- 37910
- 在线时间
- 5449 小时
- 注册时间
- 2006-11-10
- 帖子
- 6554
|
因为, @battler.states是"对象"而不是"返回值"
if @battler.states != @battler_states#####3
@battler_states = @battler.states
p 2
end
你这句就是把 @battler_states "绑定" @battler.states 这个对象, 那自然, 除了第一次 @battler_states是nil,因此 != @battler.states 判定有效外, 其他时候, ==都是成立的, 因为就是"同一个人"嘛
举个栗子, 今天改名叫张三,明天改名叫李四, 你不一样还是你, 而你今天带个帽子,明天披个披风, 那对 你 == 你 这个判定有影响么?
那怎么才能让判定生效?
if @battler.states != @battler_states#####3
@battler_states = @battler.states.dup
p 2
end
|
评分
-
查看全部评分
|