Project1
标题:
请问如何实现自定义技能类型的消耗
[打印本页]
作者:
xkm198510
时间:
2015-4-10 16:18
标题:
请问如何实现自定义技能类型的消耗
比方说原本自带的技能类型是 魔法和特技,我现在增加了一个叫“怒气”的技能类型有些技能必须消费新加的“怒气值”才能使用,但是在数据库编辑里面只有魔法和特技的消耗值,没有新加的怒气消耗值,请问该如何设置?
作者:
taroxd
时间:
2015-4-10 16:23
思路就是
写在备注里并用脚本读取
作者:
xkm198510
时间:
2015-4-10 17:00
taroxd 发表于 2015-4-10 16:23
思路就是写在备注里并用脚本读取
请问这个脚本应该怎么写?
作者:
chd114
时间:
2015-4-11 10:44
首先你需要添加怒气这样的属性,然后参考
#--------------------------------------------------------------------------
# ● 计算技能消费的 MP
#--------------------------------------------------------------------------
def skill_mp_cost(skill)
(skill.mp_cost * mcr).to_i
end
#--------------------------------------------------------------------------
# ● 计算技能消费的 TP
#--------------------------------------------------------------------------
def skill_tp_cost(skill)
skill.tp_cost
end
#--------------------------------------------------------------------------
# ● 判定是否足够扣除技能的使用消耗
#--------------------------------------------------------------------------
def skill_cost_payable?(skill)
tp >= skill_tp_cost(skill) && mp >= skill_mp_cost(skill)
end
#--------------------------------------------------------------------------
# ● 扣除技能的使用消耗
#--------------------------------------------------------------------------
def pay_skill_cost(skill)
self.mp -= skill_mp_cost(skill)
self.tp -= skill_tp_cost(skill)
end
复制代码
添加对应的判定,再写进
#--------------------------------------------------------------------------
# ● 检查技能的使用条件
#--------------------------------------------------------------------------
def skill_conditions_met?(skill)
usable_item_conditions_met?(skill) &&
skill_wtype_ok?(skill) && skill_cost_payable?(skill) &&
!skill_sealed?(skill.id) && !skill_type_sealed?(skill.stype_id)
end
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1