Jump to content
Rpg²S Forum

*New Battle Script


Sora-Master
 Share

Recommended Posts

Descrizione

E' un battle System

Autore

MakirouAru

 

Script

 

 

 

#==============================================================================
# ¦ New_Battle
#------------------------------------------------------------------------------
# Compiled By : MakirouAru
#==============================================================================
# ¥£¥ XRXS_BP 3. Ÿ—˜ŽžHP‰ñ•œ ver.1.01 ¥£¥
# by fukuyama, ÷‰ë Ý“y

# Battle_End_Recovery
#
# 퓬Œã‚̉ñ•œˆ—ƒ‚ƒWƒ…[ƒ‹
#
# Request: stay
# Script: fukuyama
# Test: ƒmƒRƒmŽq
#
# URL: http://www4.big.or.j...nd_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ˆÈŠO‚©‚ƒAƒNƒ^[‚ª¶‘¶‚µ‚Ä‚¢‚éê‡A퓬Œã‚̉ñ•œˆ—‚ðs‚¤
			if recovery_rate != 0 and not actor.dead?
				
				# ƒp[ƒeƒB‚̃AƒNƒ^[–ˆ‚Ƀ‹[ƒv
				$game_party.actors.each do |actor|
					
					# ‰ñ•œ—ÊŒvŽZ
					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
					
					# ƒAƒjƒ[ƒVƒ‡ƒ“Ý’è
					actor.damage = - recovery_hp
					actor.damage_pop = true
					
				end
				
				# ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðXV
				@status_window.refresh
				
			end
		end
		
	end # module Scene_Battle_Module
end # module Battle_End_Recovery

#------------------------------
# 퓬ƒV[ƒ“‚ÌÄ’è‹`
#------------------------------
class Scene_Battle
	
	# Scene_Battle—pƒ‚ƒWƒ…[ƒ‹‚ðƒCƒ“ƒNƒ‹[ƒh
	include Battle_End_Recovery::Scene_Battle_Module
	
	# Œ³‚̃tƒF[ƒY‚TŠJŽn‚ɕʖ¼‚ð‚‚¯‚é
	alias battle_end_recovery_original_start_phase5 start_phase5
	
	# ƒtƒF[ƒY‚TŠJŽn‚ðÄ’è‹`
	def start_phase5
		
		# 퓬Œã‚̉ñ•œˆ—‚ðŒÄ‚Ño‚·
		battle_end_recovery
		
		# Œ³‚̃tƒF[ƒY‚TŠJŽn‚ðŒÄ‚Ño‚·
		battle_end_recovery_original_start_phase5
		
	end
end

# Battle_End_Recovery
# ¥£¥ XRXS_BP10. LEVEL UP!ƒEƒBƒ“ƒhƒE ¥£¥
# by ÷‰ë Ý“y

$data_system_level_up_se = "" # ƒŒƒxƒ‹ƒAƒbƒvSEB""‚Å–³‚µB
$data_system_level_up_me = "Audio/ME/007-Fanfare01" # ƒŒƒxƒ‹ƒAƒbƒvME

#==============================================================================
# ¡ Window_LevelUpWindow
#------------------------------------------------------------------------------
# @ƒoƒgƒ‹I—¹ŽžAƒŒƒxƒ‹ƒAƒbƒv‚µ‚½ê‡‚ɃXƒe[ƒ^ƒX‚ð•\ަ‚·‚éƒEƒBƒ“ƒhƒE‚Å‚·B
#==============================================================================
class Window_LevelUpWindow < Window_Base
	#--------------------------------------------------------------------------
	# œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
	#--------------------------------------------------------------------------
	def initialize(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
		super(0, 128, 160, 192)
		self.contents = Bitmap.new(width - 32, height - 32)
		self.visible = false
		refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
	end
	#--------------------------------------------------------------------------
	# œ ƒŠƒtƒŒƒbƒVƒ…
	#--------------------------------------------------------------------------
	def refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
		self.contents.clear
		self.contents.font.color = system_color
		self.contents.font.name = "Arial"
		self.contents.font.size = 14
		self.contents.draw_text( 0, 0, 160, 24, "LEVEL UP!!")
		self.contents.font.size = 18
		self.contents.draw_text( 0, 28, 160, 24, $data_system.words.hp)
		self.contents.draw_text( 0, 50, 160, 24, $data_system.words.sp)
		self.contents.font.size = 14
		self.contents.draw_text( 0, 72, 80, 24, $data_system.words.str)
		self.contents.draw_text( 0, 94, 80, 24, $data_system.words.dex)
		self.contents.draw_text( 0, 116, 80, 24, $data_system.words.agi)
		self.contents.draw_text( 0, 138, 80, 24, $data_system.words.int)
		self.contents.draw_text(92, 0, 128, 24, "¨")
		self.contents.draw_text(76, 28, 128, 24, "=")
		self.contents.draw_text(76, 50, 128, 24, "=")
		self.contents.draw_text(76, 72, 128, 24, "=")
		self.contents.draw_text(76, 94, 128, 24, "=")
		self.contents.draw_text(76, 116, 128, 24, "=")
		self.contents.draw_text(76, 138, 128, 24, "=")
		self.contents.font.color = normal_color
		self.contents.draw_text( 0, 0, 88, 24, last_lv.to_s, 2)
		self.contents.draw_text( 0, 28, 72, 24, "+" + up_hp.to_s, 2)
		self.contents.draw_text( 0, 50, 72, 24, "+" + up_sp.to_s, 2)
		self.contents.draw_text( 0, 72, 72, 24, "+" + up_str.to_s, 2)
		self.contents.draw_text( 0, 94, 72, 24, "+" + up_dex.to_s, 2)
		self.contents.draw_text( 0, 116, 72, 24, "+" + up_agi.to_s, 2)
		self.contents.draw_text( 0, 138, 72, 24, "+" + up_int.to_s, 2)
		self.contents.font.size = 20
		self.contents.draw_text( 0, 0, 128, 24, actor.level.to_s, 2)
		self.contents.draw_text( 0, 26, 128, 24, actor.maxhp.to_s, 2)
		self.contents.draw_text( 0, 48, 128, 24, actor.maxsp.to_s, 2)
		self.contents.draw_text( 0, 70, 128, 24, actor.str.to_s, 2)
		self.contents.draw_text( 0, 92, 128, 24, actor.dex.to_s, 2)
		self.contents.draw_text( 0, 114, 128, 24, actor.agi.to_s, 2)
		self.contents.draw_text( 0, 136, 128, 24, actor.int.to_s, 2)
	end
end
#==============================================================================
# ¡ Window_BattleStatus
#==============================================================================
class Window_BattleStatus < Window_Base
	#--------------------------------------------------------------------------
	# œ ’ljÁEŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï”
	#--------------------------------------------------------------------------
	attr_accessor :level_up_flags # LEVEL UP!•\ަ
end
#==============================================================================
# ¡ Game_Battler
#==============================================================================
class Game_Battler
	#--------------------------------------------------------------------------
	# œ ’ljÁEŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï”
	#--------------------------------------------------------------------------
	attr_accessor :exp_gain_ban # EXPŽæ“¾ˆêŽž‹ÖŽ~
	#--------------------------------------------------------------------------
	# œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
	#--------------------------------------------------------------------------
	alias xrxs_bp10_initialize initialize
	def initialize
		@exp_gain_ban = false
		xrxs_bp10_initialize
	end
	#--------------------------------------------------------------------------
	# œ ƒXƒe[ƒg [EXP ‚ðŠl“¾‚Å‚«‚È‚¢] ”»’è
	#--------------------------------------------------------------------------
	alias xrxs_bp10_cant_get_exp? cant_get_exp?
	def cant_get_exp?
		if @exp_gain_ban == true
			return true
		else
			return xrxs_bp10_cant_get_exp?
		end
	end
end
#==============================================================================
# ¡ Scene_Battle
#==============================================================================
class Scene_Battle
	#--------------------------------------------------------------------------
	# œ ƒAƒtƒ^[ƒoƒgƒ‹ƒtƒF[ƒYŠJŽn
	#--------------------------------------------------------------------------
	alias xrxs_bp10_start_phase5 start_phase5
	def start_phase5
		# EXP Šl“¾‹ÖŽ~
		for i in 0...$game_party.actors.size
			$game_party.actors[i].exp_gain_ban = true
		end
		xrxs_bp10_start_phase5
		# EXP Šl“¾‹ÖŽ~‚̉ðœ
		for i in 0...$game_party.actors.size
			$game_party.actors[i].exp_gain_ban = false
		end
		# EXP‚ð‰Šú‰»
		@exp_gained = 0
		for enemy in $game_troop.enemies
			# Šl“¾ EXP‚ð’ljÁ # ƒGƒlƒ~[‚ª‰B‚êó‘ԂłȂ¢ê‡
			@exp_gained += enemy.exp if not enemy.hidden
		end
		# Ý’è
		@phase5_step = 0
		@exp_gain_actor = -1
		# ƒŠƒUƒ‹ƒgƒEƒBƒ“ƒhƒE‚ð•\ަ
		@result_window.y -= 64
		@result_window.visible = true
		# ƒŒƒxƒ‹ƒAƒbƒv”»’è‚Ö
		phase5_next_levelup
	end
	#--------------------------------------------------------------------------
	# œ ƒtƒŒ[ƒ€XV (ƒAƒtƒ^[ƒoƒgƒ‹ƒtƒF[ƒY)
	#--------------------------------------------------------------------------
	alias xrxs_bp10_update_phase5 update_phase5
	def update_phase5
		case @phase5_step
		when 1
			update_phase5_step1
		else
			xrxs_bp10_update_phase5
			# ƒŒƒxƒ‹ƒAƒbƒv‚µ‚Ä‚¢‚éꇂ͋§ƒoƒgƒ‹I—¹
			battle_end(0) if @levelup_window != nil and @phase5_wait_count <= 0
		end
	end
	#--------------------------------------------------------------------------
	# œ ƒtƒŒ[ƒ€XV (ƒAƒtƒ^[ƒoƒgƒ‹ƒtƒF[ƒY 1 : ƒŒƒxƒ‹ƒAƒbƒv)
	#--------------------------------------------------------------------------
	def update_phase5_step1
		# C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
		if Input.trigger?(Input::C)
			# ƒEƒBƒ“ƒhƒE‚ð•‚¶‚ÄŽŸ‚̃AƒNƒ^[‚Ö
			@levelup_window.visible = false if @levelup_window != nil
			@status_window.level_up_flags[@exp_gain_actor] = false
			phase5_next_levelup
		end
	end
	#--------------------------------------------------------------------------
	# œ ŽŸ‚̃AƒNƒ^[‚̃Œƒxƒ‹ƒAƒbƒv•\ަ‚Ö
	#--------------------------------------------------------------------------
	def phase5_next_levelup
		begin
		# ŽŸ‚̃AƒNƒ^[‚Ö
		@exp_gain_actor += 1
		# ÅŒã‚̃AƒNƒ^[‚Ìê‡
			if @exp_gain_actor >= $game_party.actors.size
				# ƒAƒtƒ^[ƒoƒgƒ‹ƒtƒF[ƒYŠJŽn
				@phase5_step = 0
				return
			end
			actor = $game_party.actors[@exp_gain_actor]
			if actor.cant_get_exp? == false
				# Œ»Ý‚Ì”\—Í’l‚ð•ÛŽ
				last_level = actor.level
				last_maxhp = actor.maxhp
				last_maxsp = actor.maxsp
				last_str = actor.str
				last_dex = actor.dex
				last_agi = actor.agi
				last_int = actor.int
				# ŒoŒ±’lŽæ“¾‚ÌŒˆ’è“IuŠÔ(“ä
				actor.exp += @exp_gained
				# ”»’è
				if actor.level > last_level
					# ƒŒƒxƒ‹ƒAƒbƒv‚µ‚½ê‡
					@status_window.level_up(@exp_gain_actor)
					if $data_system_level_up_se != ""
						Audio.se_stop
						Audio.se_play($data_system_level_up_se)
					end
					if $data_system_level_up_me != ""
						Audio.me_stop
						Audio.me_play($data_system_level_up_me)
					end
					@levelup_window = Window_LevelUpWindow.new(actor, last_level,
					actor.maxhp - last_maxhp, actor.maxsp - last_maxsp, actor.str - last_str,
					actor.dex - last_dex, actor.agi - last_agi, actor.int - last_int)
					@levelup_window.x = 160 * @exp_gain_actor
					@levelup_window.visible = true
					@phase5_wait_count = 40
					@phase5_step = 1
					# ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒŠƒtƒŒƒbƒVƒ…
					@status_window.refresh
					return
				end
			end
		end until false
	end
end
# ¥£¥ XRXS_17. ƒXƒŠƒbƒvƒ_ƒ[ƒW–hŒä^Œø‰Ê—ÊÚ׉» ver.1.51 ¥£¥
# by ÷‰ë Ý“y, fukuyama

#==============================================================================
# ¡ Game_Battler
#==============================================================================
class Game_Battler
#--------------------------------------------------------------------------
# œ ƒXƒŠƒbƒvƒ_ƒ[ƒW‚ÌŒø‰Ê“K—p
#--------------------------------------------------------------------------
alias xrxs_bp7_slip_damage_effect slip_damage_effect
	def slip_damage_effect
		# ”’l‚̉Šú‰»
		slip_damage_percent = 0
		slip_damage_plus = 0
		# Œ»Ý•t‰Á‚³‚ê‚Ä‚¢‚éƒXƒe[ƒg‚Ì’†‚©‚çƒXƒŠƒbƒvƒ_ƒ[ƒW—L‚è‚̃‚ƒm‚ð’T‚·
		for i in @states
			if $data_states[i].slip_damage
				# ‚»‚̃Xƒe[ƒg‚ªŽ‚Á‚Ä‚¢‚éƒXƒŠƒbƒvƒ_ƒ[ƒW‚Ì
				# Lvƒvƒ‰ƒXƒXƒe[ƒg‚Ü‚½‚ÍLvƒ}ƒCƒiƒXƒXƒe[ƒg‚ð”»’èB
				for j in $data_states[i].plus_state_set
					if $data_states[j] != nil
						if $data_states[j].name =~ /^ƒXƒŠƒbƒv([0-9]+)(%|“)/
							slip_damage_percent += $1.to_i
						elsif $data_states[j].name =~ /^ƒXƒŠƒbƒv([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 =~ /^ƒXƒŠƒbƒv([0-9]+)(%|“)/
							slip_damage_percent -= $1.to_i
						elsif $data_states[j].name =~ /^ƒXƒŠƒbƒv([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
			# –h‹ï‚ªƒXƒŠƒbƒv–hŒä‚ª‚ ‚éꇂ𔻒è
			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 =~ /^ƒXƒŠƒbƒv([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 =~ /^ƒXƒŠƒbƒv([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 ‚©‚çƒ_ƒ[ƒW‚ðŒ¸ŽZ
			self.hp -= self.damage
			# ƒƒ\ƒbƒhI—¹
			return true
		end
	end
end
# ¥£¥ XRXS_BP 1. CP§“±“ü ver.15 ¥£¥
# by ÷‰ë Ý“y, ˜aŠó, Jack-R

#==============================================================================
# ¡ Scene_Battle_CP
#==============================================================================
class Scene_Battle_CP
#--------------------------------------------------------------------------
# œ ŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï”
#--------------------------------------------------------------------------
attr_accessor :stop # CP‰ÁŽZƒXƒgƒbƒv
#----------------------------------------------------------------------------
# œ ƒIƒuƒWƒFƒNƒg‚̉Šú‰»
#----------------------------------------------------------------------------
	def initialize
		@battlers = []
		@cancel = false
		@agi_total = 0
		# ”z—ñ @count_battlers ‚ð‰Šú‰»
		@count_battlers = []
		# ƒGƒlƒ~[‚ð”z—ñ @count_battlers ‚ɒljÁ
		for enemy in $game_troop.enemies
			@count_battlers.push(enemy)
		end
		# ƒAƒNƒ^[‚ð”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
	#----------------------------------------------------------------------------
	# œ CPƒJƒEƒ“ƒg‚ÌŠJŽn
	#----------------------------------------------------------------------------
	def start
		if @cp_thread != nil then
			return
		end
		@cancel = false
		@stop = false
		# ‚±‚±‚©‚çƒXƒŒƒbƒh
		@cp_thread = Thread.new do
			while @cancel != true
			if @stop != true
				self.update # XV
				sleep(0.05)
			end
		end
	end
	# ‚±‚±‚܂ŃXƒŒƒbƒh
	end
	#----------------------------------------------------------------------------
	# œ CPƒJƒEƒ“ƒgƒAƒbƒv
	#----------------------------------------------------------------------------
	def update
		if @count_battlers != nil then
			for battler in @count_battlers
				# s“®o—ˆ‚È‚¯‚ê‚Ζ³Ž‹
				if battler.dead? == true #or battler.movable? == false then
					battler.cp = 0
					next
				end
				# ‚±‚±‚Ì 1.3‚ð•Ï‚¦‚邱‚ƂūƒXƒs[ƒh‚ð•ÏX‰Â”\B‚½‚¾‚µ¬”“_‚ÍŽg—p‚·‚邱‚ÆB
				battler.cp = [[battler.cp + 1.3 * 4096 * battler.agi / @agi_total, 0].max, 65535].min
			end
		end
	end
	#----------------------------------------------------------------------------
	# œ CPƒJƒEƒ“ƒg‚ÌŠJŽn
	#----------------------------------------------------------------------------
	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Œä’†ƒtƒ‰ƒO
attr_accessor :cp # Œ»ÝCP
attr_accessor :slip_state_update_ban # ƒXƒŠƒbƒvEƒXƒe[ƒgŽ©“®ˆ—‚̋֎~
#--------------------------------------------------------------------------
# œ ƒRƒ}ƒ“ƒh“ü—͉”\”»’è
#--------------------------------------------------------------------------
	def inputable?
		return (not @hidden and restriction <= 1 and @cp >=65535)
	end
#--------------------------------------------------------------------------
# œ ƒXƒe[ƒg [ƒXƒŠƒbƒvƒ_ƒ[ƒW] ”»’è
#--------------------------------------------------------------------------
alias xrxs_bp1_slip_damage? slip_damage?
	def slip_damage?
		return false if @slip_state_update_ban
		return xrxs_bp1_slip_damage?
	end
#--------------------------------------------------------------------------
# œ ƒXƒe[ƒgŽ©‘R‰ðœ (ƒ^[ƒ“‚²‚ƂɌĂÑ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
#==============================================================================
# ¡ Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# œ ƒZƒbƒgƒAƒbƒv
#--------------------------------------------------------------------------
alias xrxs_bp1_setup setup
	def setup(actor_id)
		xrxs_bp1_setup(actor_id)
		@hate = 100 # init-value is 100
		@cp = 0
		@now_guarding = false
		@slip_state_update_ban = false
	end
end
#==============================================================================
# ¡ Game_Enemy
#==============================================================================
class Game_Enemy < Game_Battler
#--------------------------------------------------------------------------
# œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
#--------------------------------------------------------------------------
alias xrxs_bp1_initialize initialize
	def initialize(troop_id, member_index)
		xrxs_bp1_initialize(troop_id, member_index)
		@hate = 100 # init-value is 100
		@cp = 0
		@now_guarding = false
		@slip_state_update_ban = false
	end
end
#==============================================================================
# ¡ Window_BattleStatus
#==============================================================================
class Window_BattleStatus < Window_Base
#--------------------------------------------------------------------------
# œ ŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï”
#--------------------------------------------------------------------------
attr_accessor :update_cp_only # CPƒ[ƒ^[‚݂̂ÌXV
#--------------------------------------------------------------------------
# œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
#--------------------------------------------------------------------------
alias xrxs_bp1_initialize initialize
	def initialize
		@update_cp_only = false
		xrxs_bp1_initialize
	end
#--------------------------------------------------------------------------
# œ ƒŠƒtƒŒƒbƒVƒ…
#--------------------------------------------------------------------------
alias xrxs_bp1_refresh refresh
	def refresh
		if @update_cp_only == false
			xrxs_bp1_refresh
		end
		for i in 0...$game_party.actors.size
			actor = $game_party.actors[i]
			actor_x = i * 160 + 4
			draw_actor_cp_meter(actor, actor_x, 96, 120, 0)
		end
	end
	#--------------------------------------------------------------------------
	# œ CPƒ[ƒ^[ ‚Ì•`‰æ
	#--------------------------------------------------------------------------
	def draw_actor_cp_meter(actor, x, y, width = 156, type = 0)
		self.contents.font.color = system_color
		self.contents.fill_rect(x-1, y+27, width+2,6, Color.new(0, 0, 0, 255))
			if actor.cp == nil
				actor.cp = 0
			end
		w = width * [actor.cp,65535].min / 65535
		self.contents.fill_rect(x, y+28, w,1, Color.new(255, 255, 128, 255))
		self.contents.fill_rect(x, y+29, w,1, Color.new(255, 255, 0, 255))
		self.contents.fill_rect(x, y+30, w,1, Color.new(192, 192, 0, 255))
		self.contents.fill_rect(x, y+31, w,1, Color.new(128, 128, 0, 255))
	end
end
#==============================================================================
# ¡ Scene_Battle
#==============================================================================
class Scene_Battle
# ‚±‚±‚ÉŒø‰Ê‰¹‚ðÝ’è‚·‚邯AƒAƒNƒ^[ƒRƒ}ƒ“ƒh‚ªƒ|ƒbƒv‚µ‚½‚Æ‚«‚ÉŒø‰Ê‰¹‚ðĶ
$data_system_command_up_se = ""
#--------------------------------------------------------------------------
# œ ƒoƒgƒ‹I—¹
# result : Œ‹‰Ê (0:Ÿ—˜ 1:”s–k 2:“¦‘–)
#--------------------------------------------------------------------------
alias xrxs_bp1_battle_end battle_end
	def battle_end(result)
	# CPƒJƒEƒ“ƒg’âŽ~
	@cp_thread.stop
	xrxs_bp1_battle_end(result)
	end
#--------------------------------------------------------------------------
# œ ƒvƒŒƒoƒgƒ‹ƒtƒF[ƒYŠJŽn
#--------------------------------------------------------------------------
alias xrxs_bp1_start_phase1 start_phase1
	def start_phase1
	@agi_total = 0
	@cp_thread = Scene_Battle_CP.new
	# ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ðÄì¬
	s1 = $data_system.words.attack
	s2 = $data_system.words.skill
	s3 = $data_system.words.guard
	s4 = $data_system.words.item
	@actor_command_window = Window_Command.new(160, [s1, s2, s3, s4, "Gambe!"])
	@actor_command_window.y = 128
	@actor_command_window.back_opacity = 160
	@actor_command_window.active = false
	@actor_command_window.visible = false
	@actor_command_window.draw_item(4, $game_temp.battle_can_escape ? @actor_command_window.normal_color : @actor_command_window.disabled_color)
	xrxs_bp1_start_phase1
	end
#--------------------------------------------------------------------------
# œ ƒp[ƒeƒBƒRƒ}ƒ“ƒhƒtƒF[ƒYŠJŽn
#--------------------------------------------------------------------------
alias xrxs_bp1_start_phase2 start_phase2
	def start_phase2
	xrxs_bp1_start_phase2
	@party_command_window.active = false
	@party_command_window.visible = false
	# ŽŸ‚Ö
	start_phase3
	end
#--------------------------------------------------------------------------
# œ ƒtƒŒ[ƒ€XV (ƒp[ƒeƒBƒRƒ}ƒ“ƒhƒtƒF[ƒY)
#--------------------------------------------------------------------------
alias xrxs_bp1_update_phase2 update_phase2
	def update_phase2
	# C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
	if Input.trigger?(Input::C)
		# ƒp[ƒeƒBƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃J[ƒ\ƒ‹ˆÊ’u‚Å•ªŠò
		case @party_command_window.index
		when 0 # 키
			# Œˆ’è SE ‚ð‰‰‘t
			$game_system.se_play($data_system.decision_se)
			@cp_thread.start
			# ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒtƒF[ƒYŠJŽn
			start_phase3
		end
		return
	end
	xrxs_bp1_update_phase2
	end
	#--------------------------------------------------------------------------
	# œ ŽŸ‚̃AƒNƒ^[‚̃Rƒ}ƒ“ƒh“ü—Í‚Ö
	#--------------------------------------------------------------------------
	def phase3_next_actor
	# ƒ‹[ƒv
	begin
	# ƒAƒNƒ^[‚Ì–¾–ŃGƒtƒFƒNƒg OFF
		if @active_battler != nil
			@active_battler.blink = false
		end
	# ÅŒã‚̃AƒNƒ^[‚Ìê‡
		if @actor_index == $game_party.actors.size-1
			# ƒƒCƒ“ƒtƒF[ƒYŠJŽn
			@cp_thread.start
			start_phase4
		return
		end
	# ƒAƒNƒ^[‚̃Cƒ“ƒfƒbƒNƒX‚ði‚ß‚é
	@actor_index += 1
	@active_battler = $game_party.actors[@actor_index]
	@active_battler.blink = true
		if @active_battler.inputable? == false
			@active_battler.current_action.kind = -1
		end
	# ƒAƒNƒ^[‚ªƒRƒ}ƒ“ƒh“ü—Í‚ðŽó‚¯•t‚¯‚È‚¢ó‘Ô‚È‚ç‚à‚¤ˆê“x
	end until @active_battler.inputable?
	@cp_thread.stop
	# ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ðƒZƒbƒgƒAƒbƒv
	@active_battler.now_guarding = false
	phase3_setup_command_window
	end
	#--------------------------------------------------------------------------
	# œ ‘O‚̃AƒNƒ^[‚̃Rƒ}ƒ“ƒh“ü—Í‚Ö
	#--------------------------------------------------------------------------
	def phase3_prior_actor
	# ƒ‹[ƒv
	begin
		# ƒAƒNƒ^[‚Ì–¾–ŃGƒtƒFƒNƒg OFF
		if @active_battler != nil
			@active_battler.blink = false
		end
		# ʼn‚̃AƒNƒ^[‚Ìê‡
		if @actor_index == 0
			# ʼn‚Ö–ß‚é
			start_phase3
		return
		end
		# ƒAƒNƒ^[‚̃Cƒ“ƒfƒbƒNƒX‚ð–ß‚·
		@actor_index -= 1
		@active_battler = $game_party.actors[@actor_index]
		@active_battler.blink = true
		# ƒAƒNƒ^[‚ªƒRƒ}ƒ“ƒh“ü—Í‚ðŽó‚¯•t‚¯‚È‚¢ó‘Ô‚È‚ç‚à‚¤ˆê“x
	end until @active_battler.inputable?
	@cp_thread.stop
	# ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ðƒZƒbƒgƒAƒbƒv
	@active_battler.now_guarding = false
	phase3_setup_command_window
	end
	#--------------------------------------------------------------------------
	# œ ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃ZƒbƒgƒAƒbƒv
	#--------------------------------------------------------------------------
alias xrxs_bp1_phase3_setup_command_window phase3_setup_command_window
	def phase3_setup_command_window
		# Œø‰Ê‰¹‚ÌĶ
		Audio.se_play($data_system_command_up_se) if $data_system_command_up_se != ""
		# –ß‚·
		xrxs_bp1_phase3_setup_command_window
	end
	#--------------------------------------------------------------------------
	# œ ƒtƒŒ[ƒ€XV (ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒtƒF[ƒY : Šî–{ƒRƒ}ƒ“ƒh)
	#--------------------------------------------------------------------------
alias xrxs_bsp1_update_phase3_basic_command update_phase3_basic_command
	def update_phase3_basic_command
	# C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
		if Input.trigger?(Input::C)
			# ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃J[ƒ\ƒ‹ˆÊ’u‚Å•ªŠò
			case @actor_command_window.index
			when 4 # “¦‚°‚é
				if $game_temp.battle_can_escape
					# Œˆ’è SE ‚ð‰‰‘t
				$game_system.se_play($data_system.decision_se)
				# ƒAƒNƒVƒ‡ƒ“‚ðÝ’è
				@active_battler.current_action.kind = 0
				@active_battler.current_action.basic = 4
				# ŽŸ‚̃AƒNƒ^[‚̃Rƒ}ƒ“ƒh“ü—Í‚Ö
				phase3_next_actor
			else
				# ƒuƒU[ SE ‚ð‰‰‘t
				$game_system.se_play($data_system.buzzer_se)
				end
			return
			end
		end
	xrxs_bsp1_update_phase3_basic_command
	end
	#--------------------------------------------------------------------------
	# œ ƒƒCƒ“ƒtƒF[ƒYŠJŽn
	#--------------------------------------------------------------------------
alias xrxs_bp1_start_phase4 start_phase4
	def start_phase4
	xrxs_bp1_start_phase4
	# ƒGƒlƒ~[ƒAƒNƒVƒ‡ƒ“ì¬
		for enemy in $game_troop.enemies
			if enemy.cp < 65535
				enemy.current_action.clear
				enemy.current_action.kind = -1 # ƒ^[ƒ“”ò‚΂µB
			next
			end
		enemy.make_action
		end
	# s“®‡˜ì¬
	make_action_orders
	end
	#--------------------------------------------------------------------------
	# œ ƒtƒŒ[ƒ€XV (ƒƒCƒ“ƒtƒF[ƒY ƒXƒeƒbƒv 1 : ƒAƒNƒVƒ‡ƒ“€”õ)
	#--------------------------------------------------------------------------
alias xrxs_bp1_update_phase4_step1 update_phase4_step1
	def update_phase4_step1
	# ‰Šú‰»
	@phase4_act_continuation = 0
	# Ÿ”s”»’è
		if judge
			@cp_thread.stop
			# Ÿ—˜‚Ü‚½‚Í”s–k‚Ìê‡ : ƒƒ\ƒbƒhI—¹
		return
		end
	# –¢s“®ƒoƒgƒ‰[”z—ñ‚Ìæ“ª‚©‚çŽæ“¾
	@active_battler = @action_battlers[0]
	# ƒXƒe[ƒ^ƒXXV‚ðCP‚¾‚¯‚ÉŒÀ’èB
	@status_window.update_cp_only = true
	# ƒXƒe[ƒgXV‚ð‹ÖŽ~B
	@active_battler.slip_state_update_ban = true if @active_battler != nil
	# –ß‚·
	xrxs_bp1_update_phase4_step1
	# ‹ÖŽ~‚ð‰ðœ
	@status_window.update_cp_only = false
	@active_battler.slip_state_update_ban = false if @active_battler != nil
	end
	#--------------------------------------------------------------------------
	# œ ƒtƒŒ[ƒ€XV (ƒƒCƒ“ƒtƒF[ƒY ƒXƒeƒbƒv 2 : ƒAƒNƒVƒ‡ƒ“ŠJŽn)
	#--------------------------------------------------------------------------
alias xrxs_bp1_update_phase4_step2 update_phase4_step2
	def update_phase4_step2
	# ‹§ƒAƒNƒVƒ‡ƒ“‚łȂ¯‚ê‚Î
	unless @active_battler.current_action.forcing
	# CP‚ª‘«‚è‚Ä‚¢‚È‚¢ê‡
		if @phase4_act_continuation == 0 and @active_battler.cp < 65535
			@phase4_step = 6
		return
		end
	# §–ñ‚ª [“G‚ð’ÊíUŒ‚‚·‚é] ‚© [–¡•û‚ð’ÊíUŒ‚‚·‚é] ‚Ìê‡
		if @active_battler.restriction == 2 or @active_battler.restriction == 3
			# ƒAƒNƒVƒ‡ƒ“‚ÉUŒ‚‚ðÝ’è
			@active_battler.current_action.kind = 0
			@active_battler.current_action.basic = 0
		end
	# §–ñ‚ª [s“®‚Å‚«‚È‚¢] ‚Ìê‡
		if @active_battler.restriction == 4
			# ƒAƒNƒVƒ‡ƒ“‹§‘Îۂ̃oƒgƒ‰[‚ðƒNƒŠƒA
			$game_temp.forcing_battler = nil
				if @phase4_act_continuation == 0 and @active_battler.cp >= 65535
					# ƒXƒe[ƒgŽ©‘R‰ðœ
					@active_battler.remove_states_auto
					# CPÁ”ï
					@active_battler.cp = [(@active_battler.cp - 65535),0].max
					# ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒŠƒtƒŒƒbƒVƒ…
					@status_window.refresh
				end
			# ƒXƒeƒbƒv 1 ‚ɈÚs
			@phase4_step = 1
		return
		end
	end
	# ƒAƒNƒVƒ‡ƒ“‚ÌŽí•ʂŕªŠò
		case @active_battler.current_action.kind
		when 0
			# UŒ‚¥–hŒäE“¦‚°‚éE‰½‚à‚µ‚È‚¢Žž‚Ì‹¤’ÊÁ”ïCP
			@active_battler.cp -= 0 if @phase4_act_continuation == 0
		when 1
			# ƒXƒLƒ‹Žg—pŽž‚ÌÁ”ïCP
			@active_battler.cp -= 65535 if @phase4_act_continuation == 0
		when 2
			# ƒAƒCƒeƒ€Žg—pŽž‚ÌÁ”ïCP
			@active_battler.cp -= 65535 if @phase4_act_continuation == 0
		when -1
			# CP‚ª—‚Ü‚Á‚Ä‚¢‚È‚¢
			@phase4_step = 6
		return
		end
	# CP‰ÁŽZ‚ðˆêŽž’âŽ~‚·‚é
	@cp_thread.stop = true
	# ƒXƒe[ƒgŽ©‘R‰ðœ
	@active_battler.remove_states_auto
	xrxs_bp1_update_phase4_step2
	end
	#--------------------------------------------------------------------------
	# œ Šî–{ƒAƒNƒVƒ‡ƒ“ Œ‹‰Êì¬
	#--------------------------------------------------------------------------
alias xrxs_bp1_make_basic_action_result make_basic_action_result
	def make_basic_action_result
	# UŒ‚‚Ìê‡
	if @active_battler.current_action.basic == 0 and @phase4_act_continuation == 0
	@active_battler.cp -= 65535 # UŒ‚Žž‚ÌCPÁ”ï
	end
	# –hŒä‚Ìê‡
	if @active_battler.current_action.basic == 1 and @phase4_act_continuation == 0
	@active_battler.cp -= 32767 # –hŒäŽž‚ÌCPÁ”ï
	end
	# “G‚Ì“¦‚°‚é‚Ìê‡
	if @active_battler.is_a?(Game_Enemy) and
	@active_battler.current_action.basic == 2 and @phase4_act_continuation == 0
	@active_battler.cp -= 65535 # “¦‘–Žž‚ÌCPÁ”ï
	end
	# ‰½‚à‚µ‚È‚¢‚Ìê‡
	if @active_battler.current_action.basic == 3 and @phase4_act_continuation == 0
	@active_battler.cp -= 32767 # ‰½‚à‚µ‚È‚¢Žž‚ÌCPÁ”ï
	end
	# “¦‚°‚é‚Ìê‡
	if @active_battler.current_action.basic == 4 and @phase4_act_continuation == 0
	@active_battler.cp -= 65535 # “¦‘–Žž‚ÌCPÁ”ï
	# “¦‘–‰Â”\‚ł͂Ȃ¢ê‡
	if $game_temp.battle_can_escape == false
	# ƒuƒU[ SE ‚ð‰‰‘t
	$game_system.se_play($data_system.buzzer_se)
	return
	end
	# Œˆ’è SE ‚ð‰‰‘t
	$game_system.se_play($data_system.decision_se)
	# “¦‘–ˆ—
	update_phase2_escape
	return
	end
	xrxs_bp1_make_basic_action_result
	end
	#--------------------------------------------------------------------------
	# œ ƒtƒŒ[ƒ€XV (ƒƒCƒ“ƒtƒF[ƒY ƒXƒeƒbƒv 5 : ƒ_ƒ[ƒW•\ަ)
	#--------------------------------------------------------------------------
alias xrxs_bp1_update_phase4_step5 update_phase4_step5
	def update_phase4_step5
	# ƒXƒŠƒbƒvƒ_ƒ[ƒW
	if @active_battler.hp > 0 and @active_battler.slip_damage?
	@active_battler.slip_damage_effect
	@active_battler.damage_pop = true
	end
	xrxs_bp1_update_phase4_step5
	end
	#--------------------------------------------------------------------------
	# œ ƒtƒŒ[ƒ€XV (ƒƒCƒ“ƒtƒF[ƒY ƒXƒeƒbƒv 6 : ƒŠƒtƒŒƒbƒVƒ…)
	#--------------------------------------------------------------------------
alias xrxs_bp1_update_phase4_step6 update_phase4_step6
	def update_phase4_step6
		# CP‰ÁŽZ‚ðÄŠJ‚·‚é
		@cp_thread.stop = false
		# ƒwƒ‹ƒvƒEƒBƒ“ƒhƒE‚ð‰B‚·
		@help_window.visible = false
		xrxs_bp1_update_phase4_step6
	end
end
# ¥£¥ XRXS_BP 7. ƒoƒgƒ‹ƒXƒe[ƒ^ƒXEƒNƒŠƒAƒfƒUƒCƒ“ ver.1.02 ¥£¥
# by ÷‰ë Ý“y, TOMY

#==============================================================================
# ¡ Window_BattleStatus
#==============================================================================
class Window_BattleStatus < Window_Base
#--------------------------------------------------------------------------
# œ ŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï”
#--------------------------------------------------------------------------
attr_accessor :update_cp_only # CPƒ[ƒ^[‚݂̂ÌXV
#--------------------------------------------------------------------------
# œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
#--------------------------------------------------------------------------
alias xrxs_bp7_initialize initialize
def initialize
xrxs_bp7_initialize
# «Full-View‚Ìꇂ͉º“ñs‚Ì # ‚ðÁ‚µ‚Ä‚‚¾‚³‚¢B
#self.opacity = 0
#self.back_opacity = 0
end
#--------------------------------------------------------------------------
# œ ƒŠƒtƒŒƒbƒVƒ…
#--------------------------------------------------------------------------
alias xrxs_bp7_refresh refresh
def refresh
if @update_cp_only
xrxs_bp7_refresh
return
end
# •`ŽÊ‚ð‹ÖŽ~‚µ‚È‚ª‚ç–ß‚·
@draw_ban = true
xrxs_bp7_refresh
# •`ŽÊ‚̋֎~‚ð‰ðœ
@draw_ban = false
# •`ŽÊ‚ðŠJŽn
@item_max = $game_party.actors.size
for i in 0...$game_party.actors.size
actor = $game_party.actors[i]
actor_x = i * 160 + 21
# •àsƒLƒƒƒ‰ƒOƒ‰ƒtƒBƒbƒN‚Ì•`ŽÊ
draw_actor_graphic(actor, actor_x - 9, 116)
# HP/SPƒ[ƒ^[‚Ì•`ŽÊ
draw_actor_hp_meter_line(actor, actor_x, 72, 96, 12)
draw_actor_sp_meter_line(actor, actor_x, 104, 96, 12)
# HP”’l‚Ì•`ŽÊ
self.contents.font.size = 24 # HP/SP”’l‚Ì•¶Žš‚̑傫‚³
self.contents.font.color = actor.hp == 0 ? knockout_color :
actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color
draw_shadow_text(actor_x-2, 58, 96, 24, actor.hp.to_s, 2)
# SP”’l‚Ì•`ŽÊ
self.contents.font.color = actor.sp == 0 ? knockout_color :
actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color
draw_shadow_text(actor_x-2, 90, 96, 24, actor.sp.to_s, 2)
# —pŒêuHPv‚Æ—pŒêuSPv‚Ì•`ŽÊ
self.contents.font.size = 12 # —pŒêuHP/SPv‚Ì•¶Žš‚̑傫‚³
self.contents.font.color = system_color # —pŒêuHP/SPv‚Ì•¶Žš‚ÌF
draw_shadow_text(actor_x, 60, 96, 12, $data_system.words.hp)
draw_shadow_text(actor_x, 92, 96, 12, $data_system.words.sp)

draw_actor_state(actor, actor_x, 100)
end
end
end
#==============================================================================
# ¡ Window_Base
#==============================================================================
class Window_Base < Window
#--------------------------------------------------------------------------
# œ HPƒ[ƒ^[ ‚Ì•`‰æ
#--------------------------------------------------------------------------
def draw_actor_hp_meter_line(actor, x, y, width = 156, height = 4)
w = width * actor.hp / actor.maxhp
hp_color_1 = Color.new(255, 0, 0, 192)
hp_color_2 = Color.new(255, 255, 0, 192)
self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))
draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)
x -= 1
y += (height/4).floor
self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))
draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)
x -= 1
y += (height/4).ceil
self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))
draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)
x -= 1
y += (height/4).ceil
self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))
draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)
end
#--------------------------------------------------------------------------
# œ SPƒ[ƒ^[ ‚Ì•`‰æ
#--------------------------------------------------------------------------
def draw_actor_sp_meter_line(actor, x, y, width = 156, height = 4)
w = width * actor.sp / actor.maxsp
hp_color_1 = Color.new( 0, 0, 255, 192)
hp_color_2 = Color.new( 0, 255, 255, 192)
self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))
draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)
x -= 1
y += (height/4).floor
self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))
draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)
x -= 1
y += (height/4).ceil
self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))
draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)
x -= 1
y += (height/4).ceil
self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))
draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)
end
#--------------------------------------------------------------------------
# œ –¼‘O‚Ì•`‰æ
#--------------------------------------------------------------------------
alias xrxs_bp7_draw_actor_name draw_actor_name
def draw_actor_name(actor, x, y)
xrxs_bp7_draw_actor_name(actor, x, y) if @draw_ban != true
end
#--------------------------------------------------------------------------
# œ ƒXƒe[ƒg‚Ì•`‰æ
#--------------------------------------------------------------------------
alias xrxs_bp7_draw_actor_state draw_actor_state
def draw_actor_state(actor, x, y, width = 120)
xrxs_bp7_draw_actor_state(actor, x, y, width) if @draw_ban != true
end
#--------------------------------------------------------------------------
# œ HP ‚Ì•`‰æ
#--------------------------------------------------------------------------
alias xrxs_bp7_draw_actor_hp draw_actor_hp
def draw_actor_hp(actor, x, y, width = 144)
xrxs_bp7_draw_actor_hp(actor, x, y, width) if @draw_ban != true
end
#--------------------------------------------------------------------------
# œ SP ‚Ì•`‰æ
#--------------------------------------------------------------------------
alias xrxs_bp7_draw_actor_sp draw_actor_sp
def draw_actor_sp(actor, x, y, width = 144)
xrxs_bp7_draw_actor_sp(actor, x, y, width) if @draw_ban != true
end
end
#==============================================================================
# ž ŠO•”ƒ‰ƒCƒuƒ‰ƒŠ
#==============================================================================
class Window_Base
#--------------------------------------------------------------------------
# œ ƒ‰ƒCƒ“•`‰æ by ÷‰ë Ý“y
#--------------------------------------------------------------------------
def draw_line(start_x, start_y, end_x, end_y, start_color, width = 1, end_color = start_color)
# •`ŽÊ‹——£‚ÌŒvŽZB‘å‚«‚߂ɒ¼ŠpŽž‚Ì’·‚³B
distance = (start_x - end_x).abs + (start_y - end_y).abs
# •`ŽÊŠJŽn
if end_color == start_color
for i in 1..distance
x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i
y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i
self.contents.fill_rect(x, y, width, width, start_color)
end
else
for i in 1..distance
x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i
y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i
r = start_color.red * (distance-i)/distance + end_color.red * i/distance
g = start_color.green * (distance-i)/distance + end_color.green * i/distance
b = start_color.blue * (distance-i)/distance + end_color.blue * i/distance
a = start_color.alpha * (distance-i)/distance + end_color.alpha * i/distance
self.contents.fill_rect(x, y, width, width, Color.new(r, g, b, a))
end
end
end

#--------------------------------------------------------------------------
# œ ‰e•¶Žš•`‰æ by TOMY
#--------------------------------------------------------------------------
def draw_shadow_text(x, y, width, height, string, align = 0)
# Œ³‚ÌF‚ð•Û‘¶‚µ‚Ä‚¨‚
color = self.contents.font.color.dup
# •Žš‚ʼne•`‰æ
self.contents.font.color = Color.new(0, 0, 0)
self.contents.draw_text(x + 2, y + 2, width, height, string, align)
# Œ³‚ÌF‚É–ß‚µ‚Ä•`‰æ
self.contents.font.color = color
self.contents.draw_text(x, y, width, height, string, align)
end
end

 

 

 

 

 

 

Bugs e Conflitti Noti

Come da titolo. Campo obbligatorio. (Se non si conoscono bug o conflitti, scrivere N/A)

 

Altri dettagli

Non l'ho creato io xò l'ho trovato XD (spero di guadagnare almeno 1 rens )

EDIT: Ho cambiato titolo. Il precedente era "script battaglia fikosa". ._.

Edited by Flame

http://dragcave.net/image/VqHI.gifhttp://dragcave.net/image/5thF.gif

http://dragcave.net/image/7cb8.gifhttp://dragcave.net/image/WPrD.gif

http://dragcave.net/image/DxRI.gif

http://dragcave.net/image/JAV2.gifhttp://dragcave.net/image/aiDE.gif

clicca sull'uovo

From Wikipidia:

Makeritus vulgaris(Makeritus Enpatologium Catostum) Malattia che si sviluppa nel mekeratore.si manifesta con status alterati di noia e svogliatezza.Malattia grave poiche puo guarire solo con il tempo e impedisce il Maker al soggetto che ne è infetto.Attualmente gli scenziati della Ryu-soft stanno cercando rimedio a questa malattia

 

Ryu-Soft

 

 

 

http://r5.fodey.com/19cf30d77a0fd435cb06407ab7023508e.1.gif

 

 

 

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.24:

ya

Diosba    S.O.J. 4ever!!!!!      scrive:

who's fat??

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.25:

eccomi mi sono appena connesso

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.26:

wath?

Diosba    S.O.J. 4ever!!!!!      scrive:

O.O

Diosba    S.O.J. 4ever!!!!!      scrive:

si scrive what

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.26:

mi sono connesso clandestinamente xD me manca un es di italiano e poi ho finito i compiti

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.27:

se

Diosba    S.O.J. 4ever!!!!!      scrive:

O.O

Diosba    S.O.J. 4ever!!!!!      scrive:

addiritturing

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.28:

e gia

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.28:

che me racconti

Diosba    S.O.J. 4ever!!!!!      scrive:

mmmmh

Diosba    S.O.J. 4ever!!!!!      scrive:

qlcsa che ti farà felice

Diosba    S.O.J. 4ever!!!!!      scrive:

indovining...

Diosba    S.O.J. 4ever!!!!!      scrive:

http://www.youtube.com/watch?v=p9Zt8mn14hY...feature=related

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.28:

mmmmmmmmmmmmmmm

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.29:

caghi a spruzzo xE

Diosba    S.O.J. 4ever!!!!!      scrive:

O.O ri iniziamo a giocare a D&D

Diosba    S.O.J. 4ever!!!!!      scrive:

:x

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.30:

yeees!!

Diosba    S.O.J. 4ever!!!!!      scrive:

 

 

 

Link to comment
Share on other sites

Puoi postare anke una piccola demo? A lavoro non ho rpgmakerxp non lo posso vedere!

Progetti:

Cronache del Mondo Emerso RPGVX -in progettazione-

Captain Tsubasa RPG 1 (Holly e Benji) RPG2k -ultimato-

Captain Tsubasa RPG 2 (Holly e Benji) RPGXP -in lavorazione 10%-

One Piece (All'arrembaggio) RPG2k -interrotto-

The Leggend Of Dragons RPG2k -demo rilasciata-

Arcadia Tactics RPGXP -demo rilasciata-

 

---> Visita il Mio Sito <---

 

Contest: http://rpg2s.net/gif/SCContest3Oct.gif - http://www.rpg2s.net/gif/GC_programmazione3.gif - http://www.rpg2s.net/gif/GC_premio2.gif - http://www.rpg2s.net/awards/bestpixel2.jpg

Link to comment
Share on other sites

DeMO.zipadesso lo faccio, cmq dove il grande draghetto dona rens??????skerzo vabbè

 

eccoooooooola

Edited by Sora-Master

http://dragcave.net/image/VqHI.gifhttp://dragcave.net/image/5thF.gif

http://dragcave.net/image/7cb8.gifhttp://dragcave.net/image/WPrD.gif

http://dragcave.net/image/DxRI.gif

http://dragcave.net/image/JAV2.gifhttp://dragcave.net/image/aiDE.gif

clicca sull'uovo

From Wikipidia:

Makeritus vulgaris(Makeritus Enpatologium Catostum) Malattia che si sviluppa nel mekeratore.si manifesta con status alterati di noia e svogliatezza.Malattia grave poiche puo guarire solo con il tempo e impedisce il Maker al soggetto che ne è infetto.Attualmente gli scenziati della Ryu-soft stanno cercando rimedio a questa malattia

 

Ryu-Soft

 

 

 

http://r5.fodey.com/19cf30d77a0fd435cb06407ab7023508e.1.gif

 

 

 

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.24:

ya

Diosba    S.O.J. 4ever!!!!!      scrive:

who's fat??

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.25:

eccomi mi sono appena connesso

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.26:

wath?

Diosba    S.O.J. 4ever!!!!!      scrive:

O.O

Diosba    S.O.J. 4ever!!!!!      scrive:

si scrive what

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.26:

mi sono connesso clandestinamente xD me manca un es di italiano e poi ho finito i compiti

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.27:

se

Diosba    S.O.J. 4ever!!!!!      scrive:

O.O

Diosba    S.O.J. 4ever!!!!!      scrive:

addiritturing

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.28:

e gia

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.28:

che me racconti

Diosba    S.O.J. 4ever!!!!!      scrive:

mmmmh

Diosba    S.O.J. 4ever!!!!!      scrive:

qlcsa che ti farà felice

Diosba    S.O.J. 4ever!!!!!      scrive:

indovining...

Diosba    S.O.J. 4ever!!!!!      scrive:

http://www.youtube.com/watch?v=p9Zt8mn14hY...feature=related

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.28:

mmmmmmmmmmmmmmm

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.29:

caghi a spruzzo xE

Diosba    S.O.J. 4ever!!!!!      scrive:

O.O ri iniziamo a giocare a D&D

Diosba    S.O.J. 4ever!!!!!      scrive:

:x

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.30:

yeees!!

Diosba    S.O.J. 4ever!!!!!      scrive:

 

 

 

Link to comment
Share on other sites

nn riesco a postare la demoooooooooooooooooooooooooooooooo

http://dragcave.net/image/VqHI.gifhttp://dragcave.net/image/5thF.gif

http://dragcave.net/image/7cb8.gifhttp://dragcave.net/image/WPrD.gif

http://dragcave.net/image/DxRI.gif

http://dragcave.net/image/JAV2.gifhttp://dragcave.net/image/aiDE.gif

clicca sull'uovo

From Wikipidia:

Makeritus vulgaris(Makeritus Enpatologium Catostum) Malattia che si sviluppa nel mekeratore.si manifesta con status alterati di noia e svogliatezza.Malattia grave poiche puo guarire solo con il tempo e impedisce il Maker al soggetto che ne è infetto.Attualmente gli scenziati della Ryu-soft stanno cercando rimedio a questa malattia

 

Ryu-Soft

 

 

 

http://r5.fodey.com/19cf30d77a0fd435cb06407ab7023508e.1.gif

 

 

 

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.24:

ya

Diosba    S.O.J. 4ever!!!!!      scrive:

who's fat??

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.25:

eccomi mi sono appena connesso

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.26:

wath?

Diosba    S.O.J. 4ever!!!!!      scrive:

O.O

Diosba    S.O.J. 4ever!!!!!      scrive:

si scrive what

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.26:

mi sono connesso clandestinamente xD me manca un es di italiano e poi ho finito i compiti

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.27:

se

Diosba    S.O.J. 4ever!!!!!      scrive:

O.O

Diosba    S.O.J. 4ever!!!!!      scrive:

addiritturing

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.28:

e gia

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.28:

che me racconti

Diosba    S.O.J. 4ever!!!!!      scrive:

mmmmh

Diosba    S.O.J. 4ever!!!!!      scrive:

qlcsa che ti farà felice

Diosba    S.O.J. 4ever!!!!!      scrive:

indovining...

Diosba    S.O.J. 4ever!!!!!      scrive:

http://www.youtube.com/watch?v=p9Zt8mn14hY...feature=related

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.28:

mmmmmmmmmmmmmmm

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.29:

caghi a spruzzo xE

Diosba    S.O.J. 4ever!!!!!      scrive:

O.O ri iniziamo a giocare a D&D

Diosba    S.O.J. 4ever!!!!!      scrive:

:x

ouyang_keba@hotmail.it ha inviato 15/03/2009 15.30:

yeees!!

Diosba    S.O.J. 4ever!!!!!      scrive:

 

 

 

Link to comment
Share on other sites

1) usa il tasto "allega", oppure vai qui www.mediafire.com , uppi il progetto e incolli qui il collegamento che ti dà :tongue:

2) evita i doppi post ^^ esiste il tasto edit

Progetti:

 http://i.imgur.com/jmLkIqi.png

http://i54.tinypic.com/2rh4ojq.png

https://github.com/ProGM

 

Crea anche tu il tuo gioco per Game Boy!
http://rpg2s.net/gif/SCContest3Oct.gifhttp://www.rpg2s.net/img/fablecontest1st.pnghttp://i43.tinypic.com/1zokd2s.png


http://i.imgur.com/BEu6G.gif

http://i.imgur.com/H1ARhq7.gif

http://i.imgur.com/Af6ijZN.gif

AOT: Associazione Odiamo la Telecom:

http://i.imgur.com/aYJs89E.png

"4 gattini... 4 stelline... E le 4 paperelle non ci stavano :3"

Flame


http://i30.tinypic.com/i27ypj.png

Link to comment
Share on other sites

Si perfetto a me funziona, lo conoscevo già e quello ke devo usare nel gioco di Holly e Benji, anke se devo apportarci delle modifiche.

Progetti:

Cronache del Mondo Emerso RPGVX -in progettazione-

Captain Tsubasa RPG 1 (Holly e Benji) RPG2k -ultimato-

Captain Tsubasa RPG 2 (Holly e Benji) RPGXP -in lavorazione 10%-

One Piece (All'arrembaggio) RPG2k -interrotto-

The Leggend Of Dragons RPG2k -demo rilasciata-

Arcadia Tactics RPGXP -demo rilasciata-

 

---> Visita il Mio Sito <---

 

Contest: http://rpg2s.net/gif/SCContest3Oct.gif - http://www.rpg2s.net/gif/GC_programmazione3.gif - http://www.rpg2s.net/gif/GC_premio2.gif - http://www.rpg2s.net/awards/bestpixel2.jpg

Link to comment
Share on other sites

  • 1 month later...
Guest wcamaldoli

il tuo script è fantastico

xò vorrei sapere come posso fare x levare la scritta "gambe!"quando voglio fuggire

xchè vorrei mettere una scritta un po + intelligente come fuga

Link to comment
Share on other sites

Guest wcamaldoli

ho trovato un grave problema(almeno x me)

quando faccio un'invocazione oppure entra un altro membro nella squadra

la sua barra gialla nn funziona e non può attaccare mai

Link to comment
Share on other sites

Guest wcamaldoli

no

volevo dire quando nel bel mezzo della battaglia entra un altro componente la sua barra gialla non si carica

 

adesso mi spiego:quando faccio la skill invoca

mi aggiunge al gruppo un altro componente

xò la barra di questo componente non si carica

Edited by wcamaldoli
Link to comment
Share on other sites

Guest wcamaldoli

no nn c'è nessun altro script

è sl che quando un membro entra nel bel mezzo della battaglia la sua barra nn parte

Edited by wcamaldoli
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...