Project1
标题:
如何制作一个能够让敌人持续损失MP的状态效果。
[打印本页]
作者:
lxw2008
时间:
2019-4-25 21:32
标题:
如何制作一个能够让敌人持续损失MP的状态效果。
通过修改连续伤害脚本可以做到扣蓝,但我想和连续伤害区分开来,那么如何让一个处于指定的状态下的敌人持续损失MP呢。
作者:
sxjkjly8010
时间:
2019-4-25 22:04
盲猜一下可以可以通过这每个敌群设置一个回合结束时触发一次判定的效果?1号敌人处于x号状态时减少x点mp,我三年前就是这么制作被动技能的(虽然楼主是扣mp)
作者:
活气寒露
时间:
2019-4-25 23:04
#==============================================================================
# ** Game_Battler
#------------------------------------------------------------------------------
# 這個類專門用來處理參戰者。 是用於 Game_Actor和 Game_Enemy 的超級類。
#==============================================================================
class Game_Battler
#--------------------------------------------------------------------------
# * 應用連續傷害效果(MP)
#--------------------------------------------------------------------------
def slip_damage_effect_mp
if slip_damage? && state?(18)
@mp_damage = apply_variance(maxmp / 10, 10)
@mp_damage = @mp - 1 if @mp_damage >= @mp
self.mp -= @mp_damage
end
end
end
#==============================================================================
# ** Game_Unit
#------------------------------------------------------------------------------
# 這個類專門用來操控隊伍。
# 這個類作為 Game_Party 類和 Game_Troop 類的父類使用。
#==============================================================================
class Game_Unit
#--------------------------------------------------------------------------
# * 應用連續傷害效果(MP)
#--------------------------------------------------------------------------
def slip_damage_effect_mp
for member in members
member.slip_damage_effect_mp
end
end
end
#==============================================================================
# ** Scene_Battle
#------------------------------------------------------------------------------
# 這個類用來執行顯示作戰畫面的程式。
#==============================================================================
class Scene_Battle < Scene_Base
#--------------------------------------------------------------------------
# * 回合結束
#--------------------------------------------------------------------------
def turn_end
$game_troop.turn_ending = true
$game_party.slip_damage_effect
$game_troop.slip_damage_effect
$game_party.slip_damage_effect_mp
$game_troop.slip_damage_effect_mp
$game_party.do_auto_recovery
$game_troop.preemptive = false
$game_troop.surprise = false
process_battle_event
$game_troop.turn_ending = false
start_party_command_selection
end
end
复制代码
18号为mp连续伤害,对敌对友都有效果
作者:
crow2006
时间:
2019-6-25 10:01
class Game_Enemy < Game_Battler
def sx15 #魔法回复
n = 0
n -= 10 if self.state?(20) #20号状态每回合扣蓝10点
return n
end
end
#我是分界线----------------------------
在class Scene_Battle < Scene_Base
def turn_end 里面加入:
for member in $game_troop.members
member.mp += member.sx15
end
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1