Hugolino
Messages : 21 Date d'inscription : 09/11/2007 Age : 29
Points concours Points RPG maker XP: Points jeux video: Points dessins:
| Sujet: Combat ATB Lun 12 Nov - 22:59 | |
| Auteur : Fukuyama Permet de mettre un script pour que le combat soit plus jolie. Screen : Faite un nouveau script au-dessus de Main et rentrez le script : - Code:
-
#============================================================================== # New_Battle #------------------------------------------------------------------------------ # Compiled By : MakirouAru #============================================================================== # XRXS_BP 3. HP ver.1.01 # by fukuyama, ݓy
# Battle_End_Recovery # # 퓌̉W[ # # Request: stay # Script: fukuyama # Test: mRmq # # URL: http://www4.big.or.jp/~fukuyama/rgss/Battle_End_Recovery.txt #
module Battle_End_Recovery
module Scene_Battle_Module
# ϐID @@recovery_rate_variable_id = nil
# ̎擾 def battle_end_recovery_rate if @@recovery_rate_variable_id.nil? @@recovery_rate_variable_id = $data_system.variables.index '퓌̉' if @@recovery_rate_variable_id.nil? @@recovery_rate_variable_id = false end end return 0 unless @@recovery_rate_variable_id return $game_variables[@@recovery_rate_variable_id] end
# 퓌̉ def battle_end_recovery
# recovery_rate = battle_end_recovery_rate
# ϐOȊOAN^[ĂꍇA퓌̉s if recovery_rate != 0 and not actor.dead?
# p[eB̃AN^[Ƀ[v $game_party.actors.each do |actor|
# ʌvZ recovery_hp = (actor.maxhp / 100.0 * recovery_rate).truncate recovery_sp = (actor.maxsp / 100.0 * recovery_rate).truncate
# ۂɉ actor.hp += recovery_hp actor.sp += recovery_sp
# Aj[Vݒ actor.damage = - recovery_hp actor.damage_pop = true
end
# Xe[^XEBhEXV @status_window.refresh
end end
end # module Scene_Battle_Module end # module Battle_End_Recovery
#------------------------------ # 퓃V[̍Ē` #------------------------------ class Scene_Battle
# Scene_BattlepW[CN[h include Battle_End_Recovery::Scene_Battle_Module
# ̃tF[YTJnɕʖ alias battle_end_recovery_original_start_phase5 start_phase5
# tF[YTJnĒ` def start_phase5
# 퓌̉Ăяo battle_end_recovery
# ̃tF[YTJnĂяo battle_end_recovery_original_start_phase5
end end
#============================================================================== # Game_Battler #============================================================================== class Game_Battler #-------------------------------------------------------------------------- # Xbv_[W̌ʓKp #-------------------------------------------------------------------------- alias xrxs_bp7_slip_damage_effect slip_damage_effect def slip_damage_effect # l̏ slip_damage_percent = 0 slip_damage_plus = 0 # ݕtĂXe[g̒Xbv_[WL̃mT for i in @states if $data_states[i].slip_damage # ̃Xe[gĂXbv_[W # LvvXXe[g܂Lv}CiXXe[gB for j in $data_states[i].plus_state_set if $data_states[j] != nil if $data_states[j].name =~ /^Xbv([0-9]+)(%|)/ slip_damage_percent += $1.to_i elsif $data_states[j].name =~ /^Xbv([0-9]+)$/ slip_damage_plus += $1.to_i end end end for j in $data_states[i].minus_state_set if $data_states[j] != nil if $data_states[j].name =~ /^Xbv([0-9]+)(%|)/ slip_damage_percent -= $1.to_i elsif $data_states[j].name =~ /^Xbv([0-9]+)$/ slip_damage_plus -= $1.to_i end end end end end if slip_damage_percent == 0 and slip_damage_plus == 0 xrxs_bp7_slip_damage_effect else # hXbvh䂪 ꍇ for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id] armor = $data_armors[i] next if armor == nil for j in armor.guard_state_set if $data_states[j] != nil if $data_states[j].name =~ /^Xbv([0-9]+)(%|)/ if slip_damage_percent > 0 slip_damage_percent = [slip_damage_percent - $1.to_i, 0].max end end if $data_states[j].name =~ /^Xbv([0-9]+)$/ if slip_damage_percent > 0 slip_damage_plus = [slip_damage_plus - $1.to_i, 0].max end end end end end # _[Wݒ self.damage = self.maxhp * slip_damage_percent / 100 + slip_damage_plus # U if self.damage.abs > 0 amp = [self.damage.abs * 15 / 100, 1].max self.damage += rand(amp+1) + rand(amp+1) - amp end # HP _[WZ self.hp -= self.damage # \bhI return true end end end # XRXS_BP 1. CP ver.15 # by ݓy, a, Jack-R
#============================================================================== # Scene_Battle_CP #============================================================================== class Scene_Battle_CP #-------------------------------------------------------------------------- # JCX^Xϐ #-------------------------------------------------------------------------- attr_accessor :stop # CPZXgbv #---------------------------------------------------------------------------- # IuWFNg̏ #---------------------------------------------------------------------------- def initialize @battlers = [] @cancel = false @agi_total = 0 # z @count_battlers @count_battlers = [] # Gl~[z @count_battlers ɒlj for enemy in $game_troop.enemies @count_battlers.push(enemy) end # AN^[z @count_battlers ɒlj for actor in $game_party.actors @count_battlers.push(actor) end for battler in @count_battlers @agi_total += battler.agi end for battler in @count_battlers battler.cp = [[65535 * (rand(15) + 85) / 100 * battler.agi / @agi_total * 4, 0].max, 65535].min end end #---------------------------------------------------------------------------- # CPJEg̊Jn #---------------------------------------------------------------------------- def start if @cp_thread != nil then return end @cancel = false @stop = false # Xbh @cp_thread = Thread.new do while @cancel != true if @stop != true self.update # XV sleep(0.05) end end end # ܂ŃXbh end #---------------------------------------------------------------------------- # CPJEgAbv #---------------------------------------------------------------------------- def update if @count_battlers != nil then for battler in @count_battlers # soȂΖ if battler.dead? == true #or battler.movable? == false then battler.cp = 0 next end # 1.3ς邱ƂŁXs[hύX\B_͎gp邱ƁB battler.cp = [[battler.cp + 1.3 * 4096 * battler.agi / @agi_total, 0].max, 65535].min end end end #---------------------------------------------------------------------------- # CPJEg̊Jn #---------------------------------------------------------------------------- def stop @cancel = true if @cp_thread != nil then @cp_thread.join @cp_thread = nil end end end #============================================================================== # Game_Battler #============================================================================== class Game_Battler attr_accessor :now_guarding # ݖh䒆tO attr_accessor :cp # CP attr_accessor :slip_state_update_ban # XbvEXe[g̋֎~ #-------------------------------------------------------------------------- # R}h͉\ #-------------------------------------------------------------------------- def inputable? return (not @hidden and restriction <= 1 and @cp >=65535) end #-------------------------------------------------------------------------- # Xe[g [Xbv_[W] #-------------------------------------------------------------------------- alias xrxs_bp1_slip_damage? slip_damage? def slip_damage? return false if @slip_state_update_ban return xrxs_bp1_slip_damage? end #-------------------------------------------------------------------------- # Xe[gR (^[ƂɌĂяo) #-------------------------------------------------------------------------- alias xrxs_bp1_remove_states_auto remove_states_auto def remove_states_auto return if @slip_state_update_ban xrxs_bp1_remove_states_auto end end
| |
|