#--------------------------------------------------------------------------
# ● 获取基本攻击力
#--------------------------------------------------------------------------
def base_atk
n = actor.parameters[2, @level]
for item in equips.compact do n += item.atk end
return n
end
for item in equips.compact
n += item.atk
end
以下引用njx937于2009-2-7 11:48:41的发言:
compact 在帮助文件【标准函数库】【内建类】【object】【array】里面
就是跳过 nil的部分,因为为nil就是没有嘛。。
不跳过会出错
以下引用NaturalBlue于2009-2-7 17:20:08的发言:
以下引用njx937于2009-2-7 11:48:41的发言:
compact 在帮助文件【标准函数库】【内建类】【object】【array】里面
就是跳过 nil的部分,因为为nil就是没有嘛。。
不跳过会出错
还有一个compact!,和compact有一点混淆,能在详细说一下吗?
谢谢!
以下引用njx937于2009-2-7 23:03:27的发言:
compact!照帮助文件就是处理数组,把nil都删去,生成新的,数组变了
XXX.compact 就是使用数组的非nil部分,原数组不变
ary = [1, nil, 2, nil, 3, nil]
p ary.compact # => [1, 2, 3]
p ary # => [1, nil, 2, nil, 3, nil]
ary.compact!
p ary # => [1, 2, 3]
p ary.compact! # => nil
最后一行,ary.compact!为什么为nil?
欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |