本帖最后由 719783572 于 2019-5-1 05:44 编辑
想法二毫无疑问错误,如果取消选择敌人的话攻击数还是会增加,这样就可以用选择+取消无限刷攻击次数了。
其次你说是某个角色使用这个技能,如果直接写在脚本和公共变量里的话,所有角色普攻都会加到这个变量里,也毫无疑问错误。
所以如果是指定只有某个角色才会这个技能,那就很好实现,举个例子,假如1号角色才会这个技能,那就只计算1号角色的普攻次数,普攻次数存1号变量,
那就在Game_Battler 3的79行"if hit_result == true"下面添加
if attacker == $game_actors[1] $game_variables[1] += 1 else return end
if attacker == $game_actors[1]
$game_variables[1] += 1
else
return
end
如果是学会这个技能的角色都要计算普攻次数,那你就最好添加一个属性,比如“连击数”,用attr_accessor的方法写入module。
同时自己要想好,如果这个技能是按照每局的普攻次数来计算的话,那你一局战斗结束后还得清空普攻次数这个值。
我随便写段你自己参考。
module RPG class Actor def initialize @combo = 0 end attr_accessor :combo ##这个是记录角色普攻次数的属性 end end class Game_Actor < Game_Battler attr_accessor :combo def initialize @combo = 0 end end
module RPG
class Actor
def initialize
@combo = 0
end
attr_accessor :combo ##这个是记录角色普攻次数的属性
end
end
class Game_Actor < Game_Battler
attr_accessor :combo
def initialize
@combo = 0
end
end
然后是单次普攻计入每个角色的combo值,在Game_Battler 3的79行"if hit_result == true"下面添加
for i in 0 .. 3 if attacker == $game_party.actors[i] $game_party.actors[i].combo += 1 end end
for i in 0 .. 3
if attacker == $game_party.actors[i]
$game_party.actors[i].combo += 1
end
end
最后是去Scene_Battle 1的战斗结束那里清空所有角色的combo值。
for i in 0 .. 3 $game_party.actors[i].combo = 0 end
for i in 0 .. 3
$game_party.actors[i].combo = 0
end
|