| 赞 | 0 |
| VIP | |
| 好人卡 | |
| 积分 | 7 |
| 经验 | |
| 最后登录 | 2023-12-15 |
| 在线时间 | 530 小时 |
- 梦石
- 0
- 星屑
- 723
- 在线时间
- 530 小时
- 注册时间
- 2010-6-9
- 回帖
- 668
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有账号?注册会员
×
本帖最后由 负零 于 2015-5-17 14:38 编辑
[pre lang="ruby"]if user.skills.include?($data_skills[450])
if rand(100)<100 && user.mp>=40
t_value=value
value += (user.atk+user.agi)*1.5
p"├√长驱1触发(-1),累积伤害#{@t_value};附加伤害#{value-t_value}!"
self.mp-=1
else
p"├×长驱1#{bcf}"
value
end
end[/pre]
以上是具体实现的代码,以下是编写的方法
[pre lang="ruby"]
def skilleffect(target,skills_id,skills_rand,)
if target.skills.include?($data_skills[skills_id])
if rand(100)<skills_rand && self.mp>=40
t_value=value
value += (user.atk+user.agi)*1.5
p"├√长驱1触发(-1),累积伤害#{@t_value};附加伤害#{value-t_value}!"
self.mp-=1
else
p"├×长驱1#{bcf}"
value
end
end
end[/pre]
从第二行的self.mp开始,写的时候觉得好像要传的参数过多了,因为条件判断不止有mp,还有HP,tp甚至物理攻击物理防御等等,目标还可能有user,这段实在是写不下去了,特来求解,希望能用科学的方法来处理。另外还有个问题,怎么定义可用可不用的参数?即多重判断,如self.mp==XX&&self.hp==XX如此这类。 |
|