Project1
标题:
[难以理解的脚本]计算旅馆费用
[打印本页]
作者:
timiesea
时间:
2015-6-26 00:12
标题:
[难以理解的脚本]计算旅馆费用
本帖最后由 timiesea 于 2015-6-26 00:58 编辑
#encoding:utf-8
#==============================================================================
# ■ Game_Timiesea
#------------------------------------------------------------------------------
# 管理一些需要即时计算的类。
# 本类的实例请参考 $game_tim 。
#==============================================================================
class Game_Timiesea
#--------------------------------------------------------------------------
# ● 初始化对象
#--------------------------------------------------------------------------
def initialize
end
#--------------------------------------------------------------------------
# ● 在事件中,使用$game_tim.getINN获取旅馆住宿的费用
# 包含未上场队友,每损失1点生命值按照游戏难度需要支付金币
# 如果处于不可战斗状态,则需要的金币数量翻倍
# 魔法值的回复费用是生命值的一半。旅店休息强制驱散所有状态
# 费用列表:0.5(简单),1(普通),2(困难)
#--------------------------------------------------------------------------
def getINN
gold = 0;#最终的计算结果,这里进行初始化
xInn = 0.5;#倍率初始化
xInn = $game_variables[13] * 0.5;#倍率和难度有关
if xInn == 1.5 then#困难难度的倍率是2而不是1.5
xInn = 2;
end
actors = $game_party.all_members;
actors.each{#遍历队伍的所有成员,包含未出战
|actor|
xhp = actor.mhp - actor.hp;#计算出每一个角色所损失的生命值
xmp = (actor.mmp - actor.mp) / 2;#计算出每一个角色所损失的魔力值
x = xhp + xmp;#将计算的结果进行累加,作为一个角色的费用
if actor.state?(1) then#如果拥有战斗不能的状态则费用翻倍
x = x * 2;
end
gold = gold + x;
}
gold = (gold * xInn).to_i;
return gold;
end
end
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1