Project1
标题:
战斗的时候防御补一定的HP和MP
[打印本页]
作者:
54cn
时间:
2010-8-12 11:41
标题:
战斗的时候防御补一定的HP和MP
战斗时防御就可以补充一定的HPMP,这个怎么做啊
作者:
wangswz
时间:
2010-8-12 12:42
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#_/ ◆ 防御時回復 - KGC_GuardRecover ◆ VX ◆
#_/ ◇ Last update : 2008/08/10 ◇
#_/----------------------------------------------------------------------------
#_/ 防御時に HP/MP を回復する処理を追加します。
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#==============================================================================
# ★ カスタマイズ項目 - Customize ★
#==============================================================================
module KGC
module GuardRecover
# ◆ HP回復割合 [%] (アクター)
HP_RATE_ACTOR = 1
# ◆ MP回復割合 [%] (アクター)
MP_RATE_ACTOR = 1
# ◆ HP回復割合 [%] (敵)
HP_RATE_ENEMY = 2
# ◆ MP回復割合 [%] (敵)
MP_RATE_ENEMY = 2
end
end
#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
$imported = {} if $imported == nil
$imported["GuardRecover"] = true
#==============================================================================
# ■ Game_Battler
#==============================================================================
class Game_Battler
#--------------------------------------------------------------------------
# ○ 防御時回復量の計算
# hp_rate : HP 回復率
# mp_rate : MP 回復率
#--------------------------------------------------------------------------
def make_guard_recover_value(hp_rate, mp_rate)
recover_hp = maxhp * hp_rate / 100
if hp_rate > 0
recover_hp = [1, recover_hp].max
elsif hp_rate < 0
recover_hp = [-1, recover_hp].min
end
recover_mp = maxmp * mp_rate / 100
if mp_rate > 0
recover_mp = [1, recover_mp].max
elsif mp_rate < 0
recover_mp = [-1, recover_mp].min
end
@hp_damage -= recover_hp
@mp_damage -= recover_mp
end
end
#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
#==============================================================================
# ■ Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# ○ 防御時回復効果の適用
#--------------------------------------------------------------------------
def guard_recover_effect
clear_action_results
make_guard_recover_value(
KGC::GuardRecover::HP_RATE_ACTOR,
KGC::GuardRecover::MP_RATE_ACTOR)
execute_damage(nil)
end
end
#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
#==============================================================================
# ■ Game_Enemy
#==============================================================================
class Game_Enemy < Game_Battler
#--------------------------------------------------------------------------
# ○ 防御時回復効果の適用
#--------------------------------------------------------------------------
def guard_recover_effect
clear_action_results
make_guard_recover_value(
KGC::GuardRecover::HP_RATE_ENEMY,
KGC::GuardRecover::MP_RATE_ENEMY)
execute_damage(nil)
end
end
#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
#==============================================================================
# ■ Scene_Battle
#==============================================================================
class Scene_Battle < Scene_Base
#--------------------------------------------------------------------------
# ● 戦闘行動の実行 : 防御
#--------------------------------------------------------------------------
alias execute_action_guard_KGC_GuardRecover execute_action_guard
def execute_action_guard
execute_action_guard_KGC_GuardRecover
@active_battler.guard_recover_effect
if @active_battler.hp_damage != 0
display_damage(@active_battler)
elsif @active_battler.mp_damage != 0
display_mp_damage(@active_battler)
end
end
end
复制代码
作者:
小鱼子
时间:
2010-8-12 12:43
在脚本:防御指令编辑中添加
$game_temp.common_event_id = 1
然后设置公共事件1为补充量即可……
不懂的话给我一百经验,帮你解决……
作者:
a50
时间:
2010-8-12 15:13
:L看不懂
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1