| Realisation volontaire de script !! | |
|
|
Auteur | Message |
---|
Revan Ancien staffeux
Messages postés : 578 Date d'inscription : 01/11/2013
| Sujet: Re: Realisation volontaire de script !! Dim 17 Nov 2013 - 15:12 | |
| Et le dernier - Batle result:
#============================================================================== # +++ MOG - Battle Result (1.4) +++ #============================================================================== # By Moghunter # http://www.atelier-rgss.com #============================================================================== # Apresentação animada do resultado da batalha. #============================================================================== # Arquivos necessários. (Graphics/System) # # Result.png # Result_Layout.png # Result_Levelup.png # Result_Levelword.png # Result_Number_1.png # Result_Number_2.png # #============================================================================== # Histórico (Version History) #============================================================================== # 1.4 - Compatibilidade com o script de pause. # 1.3 - Melhoria do código e compatibilidade. # 1.2 - Melhoria do código e compatibilidade. # - Adição de sons. # 1.1 - Corrigido o erro de apresentar o Resultado ao fugir ou perder a batalha. #============================================================================== module MOG_BATLE_RESULT #Posição do EXP. RESULT_EXP_POSITION = [440,80] #Posição do GOLD. RESULT_GOLD_POSITION = [476,125] #Posição da palavra LeveL UP. RESULT_LEVELWORD_POSITION = [0,0] #Posição do Level. RESULT_LEVEL_POSITION = [230,-7] #Posição dos parâmetros RESULT_PARAMETER_POSITION = [70,70] #Posição da janela de skill. RESULT_NEW_SKILL_POSITION = [240,230] #Definição da animação de Level UP. RESULT_LEVELUP_ANIMATION_ID = 37 end
#============================================================================== # ■ Game Temp #============================================================================== class Game_Temp attr_accessor :level_parameter attr_accessor :level_parameter_old attr_accessor :result attr_accessor :battle_end
#-------------------------------------------------------------------------- # ● Initialize #-------------------------------------------------------------------------- alias mog_result_initialize initialize def initialize @level_parameter = [] @level_parameter_old = [] @result = false @battle_end = false mog_result_initialize end
end
#============================================================================== # ■ Game Actor #============================================================================== class Game_Actor < Game_Battler
#-------------------------------------------------------------------------- # ● Display_level_up #-------------------------------------------------------------------------- alias mog_result_display_level_up display_level_up def display_level_up(new_skills) if $game_temp.result $game_temp.level_parameter = [@level,new_skills] return end mog_result_display_level_up(new_skills) end
end
#============================================================================== # ■ BattleManager #============================================================================== module BattleManager #-------------------------------------------------------------------------- # ● Process Victory #-------------------------------------------------------------------------- def self.process_victory play_battle_end_me replay_bgm_and_bgs if $mog_rgss3_battle_cry != nil execute_battle_cry(1, nil, nil) end battle_end(0) SceneManager.return return true end end
#============================================================================== # ■ Spriteset Battle #============================================================================== class Scene_Battle < Scene_Base #-------------------------------------------------------------------------- # ● Dispose #-------------------------------------------------------------------------- alias mog_battle_result_pre_terminate pre_terminate def pre_terminate execute_result if can_enable_battle_result? mog_battle_result_pre_terminate end #-------------------------------------------------------------------------- # ● Can Enable Battle Result? #-------------------------------------------------------------------------- def can_enable_battle_result? return false if !$game_troop.all_dead? return false if $game_party.members.empty? return false if $game_party.all_dead? return true end #-------------------------------------------------------------------------- # ● Execute Result #-------------------------------------------------------------------------- def execute_result @result = Battle_Result.new if $mog_rgss3_combo_count != nil $game_temp.combo_time = 0 rescue nil end loop do @result.update @spriteset.update Graphics.update Input.update break if @result.victory_phase == 10 end @result.dispose end end
#============================================================================== # ■ Battle Result #============================================================================== class Battle_Result include MOG_BATLE_RESULT attr_accessor :victory_phase #-------------------------------------------------------------------------- # ● Initialize #-------------------------------------------------------------------------- def initialize $game_temp.battle_end = true $game_temp.result = true @victory_phase = 0 @victory_wait_duration = 0 @fade_result_window = false create_victory_sprites end #-------------------------------------------------------------------------- # ● Create Victory Sprites #-------------------------------------------------------------------------- def create_victory_sprites @result_number = Cache.system("Result_Number_1") @result_number2 = Cache.system("Result_Number_2") @result_cw = @result_number.width / 10 @result_ch = @result_number.height / 2 @result2_cw = @result_number2.width / 10 @result2_ch = @result_number2.height / 2 create_victory_text create_victory_layout create_victory_exp create_victory_gold create_window_treasure end
#-------------------------------------------------------------------------- # ● Victory Wait ? #-------------------------------------------------------------------------- def victory_wait? return false if @victory_wait_duration <= 0 @victory_wait_duration -= 1 return true end #-------------------------------------------------------------------------- # ● End Victory #-------------------------------------------------------------------------- def end_victory @victory_wait_duration = 10 dispose end #-------------------------------------------------------------------------- # ● Create Victory Layout #-------------------------------------------------------------------------- def create_victory_layout return if @victory_layout_sprite != nil @victory_layout_sprite = Sprite.new @victory_layout_sprite.z = 1001 @victory_layout_sprite.bitmap = Cache.system("Result_Layout") @victory_layout_sprite.zoom_x = 2.0 @victory_layout_sprite.opacity = 0 end #-------------------------------------------------------------------------- # ● Create Victory Text #-------------------------------------------------------------------------- def create_victory_text return if @victory_sprite != nil @victory_sprite = Sprite.new @victory_sprite.z = 1000 @victory_sprite.bitmap = Cache.system("Result") @victory_sprite.ox = @victory_sprite.width / 2 @victory_sprite.oy = @victory_sprite.height / 2 @victory_sprite.x = @victory_sprite.ox @victory_sprite.y = @victory_sprite.oy @victory_sprite.zoom_x = 1.5 @victory_sprite.zoom_y = 1.5 @victory_sprite.opacity = 0 end end
#============================================================================== # ■ Battle Result #============================================================================== class Battle_Result #-------------------------------------------------------------------------- # ● Dispose #-------------------------------------------------------------------------- def dispose $game_temp.result = false $game_temp.battle_end = false @victory_sprite.bitmap.dispose @victory_sprite.dispose @victory_layout_sprite.bitmap.dispose @victory_layout_sprite.dispose @exp_number.bitmap.dispose @exp_number.dispose @gold_number.bitmap.dispose @gold_number.dispose @result_number.dispose @window_treasure.dispose dispose_level_up @result_number.dispose @result_number2.dispose @tr_viewport.dispose end #-------------------------------------------------------------------------- # ● Dispose Result Actor Bitmap #-------------------------------------------------------------------------- def dispose_result_actor_bitmap return if @result_actor_sprite == nil return if @result_actor_sprite.bitmap == nil @result_actor_sprite.bitmap.dispose end #-------------------------------------------------------------------------- # ● Dispose Level UP #-------------------------------------------------------------------------- def dispose_level_up return if @levelup_layout == nil @levelup_layout.bitmap.dispose @levelup_layout.dispose @levelup_word.bitmap.dispose @levelup_word.dispose @result_actor_sprite.bitmap.dispose @result_actor_sprite.dispose @parameter_sprite.bitmap.dispose @parameter_sprite.dispose @level_sprite.bitmap.dispose @level_sprite.dispose if @new_skill_window != nil @new_skill_window.dispose end end end
#============================================================================== # ■ Battle Result #============================================================================== class Battle_Result #-------------------------------------------------------------------------- # ● Update #-------------------------------------------------------------------------- def update if $mog_rgss3_pause != nil update_pause if MOG_PAUSE::PAUSE_SCENE_BATTLE end return if @victory_phase == nil update_victory_fade if @fade_result_window return if victory_wait? case @victory_phase when 0; update_victory_initial when 1; update_victory_initial2 when 2; update_victory_initial3 when 3; update_victory_exp when 4; update_victory_gold when 5; update_victory_item when 6; update_victory_levelup when 9; update_skip_result end if Input.trigger?(:C) if @victory_phase == 10 end_victory elsif @victory_phase.between?(1,5) Sound.play_cursor @victory_phase = 9 end end end #-------------------------------------------------------------------------- # ● Skip Result #-------------------------------------------------------------------------- def update_skip_result @victory_sprite.opacity -= 10 @victory_sprite.visible = false @victory_layout_sprite.opacity += 10 @victory_layout_sprite.zoom_x = 1.00 @gold_number.opacity += 10 @gold_number.zoom_x = 1.00 @gold_number.zoom_y = 1.00 @exp_number.opacity += 10 @exp_number.zoom_x = 1.00 @exp_number.zoom_y = 1.00 @window_treasure.contents_opacity += 10 if @exp_old != @exp_total @exp_old = @exp_total refresh_exp_number end if @gold_old = @gold_total @gold_old = @gold_total refresh_gold_number end @window_treasure.x = 0 update_victory_item if @window_treasure.contents_opacity == 255 end #-------------------------------------------------------------------------- # ● Update Victory Fade #-------------------------------------------------------------------------- def update_victory_fade fade_speed = 10 @victory_sprite.opacity -= fade_speed @victory_layout_sprite.opacity -= fade_speed @gold_number.opacity -= fade_speed @exp_number.opacity -= fade_speed @window_treasure.contents_opacity -= fade_speed end #-------------------------------------------------------------------------- # ● Update Victory Initial #-------------------------------------------------------------------------- def update_victory_initial @victory_sprite.zoom_x -= 0.01 @victory_sprite.zoom_y -= 0.01 @victory_sprite.opacity += 10 if @victory_sprite.zoom_x <= 1.00 @victory_sprite.zoom_x = 1 @victory_sprite.zoom_y = 1 @victory_sprite.opacity = 255 @victory_phase = 1 @victory_wait_duration = 20 end end
#-------------------------------------------------------------------------- # ● Update Victory Initial 2 #-------------------------------------------------------------------------- def update_victory_initial2 @victory_sprite.zoom_x += 0.01 @victory_sprite.zoom_y += 0.01 @victory_sprite.opacity -= 10 if @victory_sprite.opacity <= 0 @victory_sprite.zoom_x = 1 @victory_sprite.zoom_y = 1 @victory_sprite.opacity = 0 @victory_phase = 2 end end
#-------------------------------------------------------------------------- # ● Update Victory Initial 3 #-------------------------------------------------------------------------- def update_victory_initial3 @victory_layout_sprite.zoom_x -= 0.02 @victory_layout_sprite.opacity += 10 if @victory_layout_sprite.zoom_x <= 1.00 @victory_layout_sprite.zoom_x = 1 @victory_layout_sprite.opacity = 255 @victory_phase = 3 end end end
#============================================================================== # ■ Battle Result #============================================================================== class Battle_Result
#-------------------------------------------------------------------------- # ● Create Victory Exp #-------------------------------------------------------------------------- def create_victory_exp @exp_number = Sprite.new @exp_number.bitmap = Bitmap.new(@result_number.width,@result_ch) @exp_number.z = 1002 @exp_number.y = RESULT_EXP_POSITION[1] @exp_number.zoom_x = 2 @exp_number.zoom_y = 2 @exp_total = $game_troop.exp_total @exp_number.opacity = 0 @exp_old = 0 @exp_ref = ((1 * @exp_total) / 111).truncate rescue nil @exp_ref = 1 if @exp_ref < 1 or @exp_ref == nil @exp_ref = 0 if @exp_total == 0 refresh_exp_number end #-------------------------------------------------------------------------- # ● Update Victory Exp #-------------------------------------------------------------------------- def update_victory_exp update_exp_sprite update_exp_number end #-------------------------------------------------------------------------- # ● Update EXP Sprite #-------------------------------------------------------------------------- def update_exp_sprite @exp_number.opacity += 15 if @exp_number.zoom_x > 1.00 @exp_number.zoom_x -= 0.03 @exp_number.zoom_x = 1.00 if @exp_number.zoom_x <= 1.00 end @exp_number.zoom_y = @exp_number.zoom_x if (@exp_old >= @exp_total) and @exp_number.zoom_x == 1.00 @victory_phase = 4 Sound.play_cursor end end
#-------------------------------------------------------------------------- # ● Refresh Exp Number #-------------------------------------------------------------------------- def refresh_exp_number @exp_number.bitmap.clear draw_result_exp(@exp_old, 0,0) end
#-------------------------------------------------------------------------- # ● Update Exp_number #-------------------------------------------------------------------------- def update_exp_number return if @exp_old == @exp_total @exp_old += @exp_ref @exp_old = @exp_total if @exp_old > @exp_total refresh_exp_number end
#-------------------------------------------------------------------------- # ● Draw Result EXP #-------------------------------------------------------------------------- def draw_result_exp(value,x,y) ncw = @result_cw nch = @result_ch number = value.abs.to_s.split(//) x2 = x - (number.size * ncw) @exp_number.ox = (number.size * ncw) / 2 @exp_number.oy = @result_ch / 2 @exp_number.x = (RESULT_EXP_POSITION[0] + @result_cw + @exp_number.ox) - (number.size * ncw) for r in 0..number.size - 1 number_abs = number[r].to_i nsrc_rect = Rect.new(ncw * number_abs, 0, ncw, nch) @exp_number.bitmap.blt(x + (ncw * r), y, @result_number, nsrc_rect) end end
end
#============================================================================== # ■ Battle Result #============================================================================== class Battle_Result
#-------------------------------------------------------------------------- # ● Create Victory Gold #-------------------------------------------------------------------------- def create_victory_gold @gold_number = Sprite.new @gold_number.bitmap = Bitmap.new(@result_number.width,@result_ch) @gold_number.z = 1002 @gold_number.y = RESULT_GOLD_POSITION[1] @gold_number.opacity = 0 @gold_number.zoom_x = 2 @gold_number.zoom_y = 2 @gold_total = $game_troop.gold_total @gold_old = 0 @gold_ref = ((1 * @gold_total) / 111).truncate rescue nil @gold_ref = 1 if @gold_ref < 1 or @gold_ref == nil @gold_ref = 0 if @gold_total == 0 $game_party.gain_gold($game_troop.gold_total) refresh_gold_number end #-------------------------------------------------------------------------- # ● Update Victory Gold #-------------------------------------------------------------------------- def update_victory_gold update_gold_sprite update_gold_number end #-------------------------------------------------------------------------- # ● Update GOLD Sprite #-------------------------------------------------------------------------- def update_gold_sprite @gold_number.opacity += 15 if @gold_number.zoom_x > 1.00 @gold_number.zoom_x -= 0.03 @gold_number.zoom_x = 1.00 if @gold_number.zoom_x <= 1.00 end @gold_number.zoom_y = @gold_number.zoom_x if @gold_old >= @gold_total and @gold_number.zoom_x == 1.00 @victory_phase = 5 Sound.play_cursor end end #-------------------------------------------------------------------------- # ● Refresh gold Number #-------------------------------------------------------------------------- def refresh_gold_number @gold_number.bitmap.clear draw_result_gold(@gold_old, 0,0) end #-------------------------------------------------------------------------- # ● Update Gold Number #-------------------------------------------------------------------------- def update_gold_number return if @gold_old == @gold_total @gold_old += @gold_ref @gold_old = @gold_total if @gold_old > @gold_total refresh_gold_number end #-------------------------------------------------------------------------- # ● Draw Result Gold #-------------------------------------------------------------------------- def draw_result_gold(value,x,y) ncw = @result_cw nch = @result_ch number = value.abs.to_s.split(//) x2 = x - (number.size * ncw) @gold_number.ox = (number.size * ncw) / 2 @gold_number.oy = @result_ch / 2 @gold_number.x = (RESULT_GOLD_POSITION[0] + @result_cw + @gold_number.ox) - (number.size * ncw) for r in 0..number.size - 1 number_abs = number[r].to_i nsrc_rect = Rect.new(ncw * number_abs, @result_ch, ncw, nch) @gold_number.bitmap.blt(x + (ncw * r), y, @result_number, nsrc_rect) end end
end
#============================================================================== # ■ Battle Result #============================================================================== class Battle_Result #-------------------------------------------------------------------------- # ● Create Window Treasure #-------------------------------------------------------------------------- def create_window_treasure @tr_viewport = Viewport.new(-8, 164, 576, 118) @tr_viewport.z = 1003 @window_treasure = Window_Treasure.new @window_treasure.viewport = @tr_viewport end #-------------------------------------------------------------------------- # ● Update Victory Item #-------------------------------------------------------------------------- def update_victory_item @window_treasure.update @actor_level = [] return if @window_treasure.x != 0 and @victory_phase >= 6 @victory_phase = 6 @result_member_max = $game_party.battle_members.size @result_member_id = 0 end end
#============================================================================== # ■ Window Treasure #============================================================================== class Window_Treasure < Window_Base
#-------------------------------------------------------------------------- # ● Initialize #-------------------------------------------------------------------------- def initialize super(-544,-10, 576, 256) self.opacity = 0 self.contents_opacity = 0 self.contents.font.size = 24 self.contents.font.bold = true self.z = 1003 @range_max = 256 @wait_time = 30 @scroll = false draw_treasure end
#-------------------------------------------------------------------------- # ● Draw_Treasure #-------------------------------------------------------------------------- def draw_treasure contents.clear t_index = 0 space_x = 540 / 3 $game_troop.make_drop_items.each do |item| xi = (t_index * space_x) - ((t_index / 3) * (space_x * 3)) yi = (t_index / 3) * 32 $game_party.gain_item(item, 1) draw_item_name(item,xi, yi, true, 140) t_index += 1 end @range_max = (t_index / 3) * 32 @scroll = true if t_index > 12 end #-------------------------------------------------------------------------- # ● Update #-------------------------------------------------------------------------- def update super self.contents_opacity += 10 if self.x < 0 self.x += 15 if self.x >= 0 self.x = 0 Sound.play_cursor end end if @scroll and self.contents_opacity == 255 and self.x == 0 @wait_time -= 1 if @wait_time > 0 return if @wait_time > 0 self.y -= 1 self.y = 128 if self.y < -@range_max @wait_time = 30 if self.y == -10 end end
end
#============================================================================== # ■ Battle Result #============================================================================== class Battle_Result #-------------------------------------------------------------------------- # ● Create Levelup #-------------------------------------------------------------------------- def create_levelup if @levelup_layout == nil @levelup_layout = Sprite.new @levelup_layout.z = 1000 @levelup_layout.bitmap = Cache.system("Result_Levelup") end if @levelup_word == nil @levelup_word = Sprite.new @levelup_word.z = 1001 @levelup_word.bitmap = Cache.system("Result_Levelword") @levelup_word.ox = @levelup_word.bitmap.width / 2 @levelup_word.oy = @levelup_word.bitmap.height / 2 @levelup_word.x = @levelup_word.ox + RESULT_LEVELWORD_POSITION[0] @levelup_word.y = @levelup_word.oy + RESULT_LEVELWORD_POSITION[1] end @levelup_word.blend_type = 1 @levelup_word.zoom_x = 2 @levelup_word.zoom_y = 2 end #-------------------------------------------------------------------------- # ● Create Parameter Number #-------------------------------------------------------------------------- def create_parameter_number if @parameter_sprite == nil @parameter_sprite = Sprite.new @parameter_sprite.bitmap = Bitmap.new(250,220) @parameter_sprite.z = 1001 @parameter_sprite.x = RESULT_PARAMETER_POSITION[0] @parameter_sprite.y = RESULT_PARAMETER_POSITION[1] @parameter_sprite.bitmap.font.size = 16 @parameter_sprite.bitmap.font.bold = true end refresh_parameter end #-------------------------------------------------------------------------- # ● Refresh Parameter #-------------------------------------------------------------------------- def refresh_parameter @parameter_animation = 0 @parameter_sprite.bitmap.clear @parameter_sprite.opacity = 0 @parameter_sprite.x = RESULT_PARAMETER_POSITION[0] - 200 actor_old = $game_temp.level_parameter_old draw_result_parameter(@actor_result.mhp,actor_old[1],0,28 * 0) draw_result_parameter(@actor_result.mmp,actor_old[2],0,28 * 1) draw_result_parameter(@actor_result.atk,actor_old[3],0,28 * 2) draw_result_parameter(@actor_result.def,actor_old[4],0,28 * 3) draw_result_parameter(@actor_result.mat,actor_old[5],0,28 * 4) draw_result_parameter(@actor_result.mdf,actor_old[6],0,28 * 5) draw_result_parameter(@actor_result.agi,actor_old[7],0,28 * 6) draw_result_parameter(@actor_result.luk,actor_old[8],0,28 * 7) end #-------------------------------------------------------------------------- # ● Draw Result EXP #-------------------------------------------------------------------------- def draw_result_parameter(value,value2,x,y) ncw = @result2_cw nch = @result2_ch number = value.abs.to_s.split(//) x2 = x + (number.size * ncw) + 16 for r in 0..number.size - 1 number_abs = number[r].to_i nsrc_rect = Rect.new(ncw * number_abs, 0, ncw, nch) @parameter_sprite.bitmap.blt(x + (ncw * r), y, @result_number2, nsrc_rect) end value3 = value - value2 par = "" if value > value2 par = "+" @parameter_sprite.bitmap.font.color = Color.new(50,255,255) elsif value < value2 par = "" @parameter_sprite.bitmap.font.color = Color.new(255,155,100) end return if value == value2 @parameter_sprite.bitmap.draw_text(x2,y - 8,100,32,par.to_s + value3.to_s,0) end #-------------------------------------------------------------------------- # ● Create Result Actor #-------------------------------------------------------------------------- def create_result_actor if @result_actor_sprite == nil @result_actor_sprite = Sprite.new @result_actor_sprite.z = 999 end dispose_result_actor_bitmap @result_actor_sprite.bitmap = Cache.picture("Actor" + @actor_result.id.to_s) @result_actor_org = [380 - (@result_actor_sprite.bitmap.width / 2), Graphics.height - @result_actor_sprite.bitmap.height] @result_actor_sprite.x = @result_actor_org[0] + 200 @result_actor_sprite.y = @result_actor_org[1] @result_actor_sprite.opacity = 0 end
#-------------------------------------------------------------------------- # ● Check New Skill #-------------------------------------------------------------------------- def check_new_skill @new_skills = $game_temp.level_parameter[1] @new_skills_index = 0 end #-------------------------------------------------------------------------- # ● Show New Skill #-------------------------------------------------------------------------- def show_new_skill(start = false) Sound.play_recovery unless start @new_skill_window.draw_new_skill(@new_skills[@new_skills_index]) @new_skills_index += 1 if @new_skills_index == @new_skills.size or @new_skills[@new_skills_index] == nil @new_skills = nil end end #-------------------------------------------------------------------------- # ● Check Level UP #-------------------------------------------------------------------------- def check_level_up if @new_skills != nil and !@new_skills.empty? show_new_skill return end for battler_id in @result_member_id..@result_member_max actor_result = $game_party.members[@result_member_id] $game_temp.level_parameter = [] if $game_temp.level_parameter == nil $game_temp.level_parameter_old = [] if $game_temp.level_parameter_old == nil $game_temp.level_parameter.clear $game_temp.level_parameter_old.clear $game_temp.level_parameter_old = [actor_result.level,actor_result.mhp,actor_result.mmp, actor_result.atk, actor_result.def, actor_result.mat, actor_result.mdf, actor_result.agi, actor_result.luk] rescue nil actor_result.gain_exp($game_troop.exp_total) rescue nil @result_member_id += 1 @new_skills = nil @new_skills_index = 0 if $game_temp.level_parameter != nil and !$game_temp.level_parameter.empty? show_level_result break end end return if !$game_temp.level_parameter.empty? @victory_phase = 10 if @result_member_id >= @result_member_max end #-------------------------------------------------------------------------- # ● Create Level #-------------------------------------------------------------------------- def create_level if @level_sprite == nil @level_sprite = Sprite.new @level_sprite.bitmap = Bitmap.new(200,64) @level_sprite.z = 1002 end @level_sprite.bitmap.font.size = 48 @level_sprite.bitmap.font.bold = true @level_sprite.x = RESULT_LEVEL_POSITION[0] @level_sprite.y = RESULT_LEVEL_POSITION[1] @level_sprite.bitmap.clear @level_sprite.bitmap.font.color = Color.new(255,255,255) @level_sprite.bitmap.draw_text(0,0,100,64,@actor_result.level,1) levelup = @actor_result.level - $game_temp.level_parameter_old[0] @level_sprite.bitmap.font.color = Color.new(50,255,255) @level_sprite.bitmap.font.size = 18 @level_sprite.bitmap.draw_text(80,0,100,64,"+" + levelup.to_s ,0) end #-------------------------------------------------------------------------- # ● Create New Skill Windos #-------------------------------------------------------------------------- def create_new_skill_window if @new_skill_window == nil @new_skill_window = Window_Result_Skill.new end @new_skill_window.x = RESULT_NEW_SKILL_POSITION[0] @new_skill_window.y = RESULT_NEW_SKILL_POSITION[1] check_new_skill if @new_skills != nil and !@new_skills.empty? show_new_skill else @new_skill_window.x = -544 end end #-------------------------------------------------------------------------- # ● Show Level Result #-------------------------------------------------------------------------- def show_level_result Sound.play_cursor @actor_result = $game_party.members[@result_member_id - 1] rescue nil return if @actor_result == nil @actor_result.animation_id = RESULT_LEVELUP_ANIMATION_ID @fade_result_window = true create_levelup create_level create_parameter_number create_result_actor create_new_skill_window end end
#============================================================================== # ■ Battle Result #============================================================================== class Battle_Result #-------------------------------------------------------------------------- # ● Update Victory Item #-------------------------------------------------------------------------- def update_victory_levelup check_level_up if Input.trigger?(:C) update_show_levelup if @levelup_layout == nil @window_treasure.update else @window_treasure.contents_opacity -= 15 end end #-------------------------------------------------------------------------- # ● Update Show Level UP #-------------------------------------------------------------------------- def update_show_levelup return if @levelup_layout == nil return if @result_actor_sprite == nil @new_skill_window.update if @result_actor_sprite.x > @result_actor_org[0] @result_actor_sprite.x -= 5 @result_actor_sprite.opacity += 7 if @result_actor_sprite.x <= @result_actor_org[0] @result_actor_sprite.x = @result_actor_org[0] @result_actor_sprite.opacity = 255 end end if @levelup_word.zoom_x > 1.00 @levelup_word.zoom_x -= 0.03 if @levelup_word.zoom_x < 1.00 @levelup_word.zoom_x = 1.00 @levelup_word.blend_type = 0 end end @levelup_word.zoom_y = @levelup_word.zoom_x if @parameter_sprite.x < RESULT_PARAMETER_POSITION[0] @parameter_sprite.opacity += 13 @parameter_sprite.x += 5 if @parameter_sprite.x >= RESULT_PARAMETER_POSITION[0] @parameter_sprite.opacity = 255 @parameter_sprite.x = RESULT_PARAMETER_POSITION[0] end end end end
#============================================================================== # ■ Window Result Skill #============================================================================== class Window_Result_Skill < Window_Base
#-------------------------------------------------------------------------- # ● Initialize #-------------------------------------------------------------------------- def initialize super(0,0, 270, 58) self.opacity = 160 self.contents_opacity = 255 self.contents.font.name = "Arial" self.contents.font.bold = true self.z = 1003 @animation_time = 999 @org = [MOG_BATLE_RESULT::RESULT_NEW_SKILL_POSITION[0],MOG_BATLE_RESULT::RESULT_NEW_SKILL_POSITION[1]] end
#-------------------------------------------------------------------------- # ● DrawNew Skill #-------------------------------------------------------------------------- def draw_new_skill(skill) contents.clear self.contents.font.size = 16 self.contents.font.color = Color.new(100,200,100) contents.draw_text(0,0,100,32, "New Skill",0) self.contents.font.color = Color.new(255,255,255) draw_item_name_skill(skill,70,0, true, 170) self.x = @org[0] self.y = @org[1] @animation_time = 0 self.opacity = 0 self.contents_opacity = 0 end #-------------------------------------------------------------------------- # ● Draw Item Name #-------------------------------------------------------------------------- def draw_item_name_skill(item, x, y, enabled = true, width = 172) return unless item draw_icon(item.icon_index, x, y, enabled) change_color(normal_color, enabled) draw_text(x + 24, y + 4, width, line_height, item.name) end #-------------------------------------------------------------------------- # ● Update #-------------------------------------------------------------------------- def update super return if @animation_time == 999 @animation_time += 1 if @animation_time != 999 case @animation_time when 0..30 self.y -= 1 self.opacity += 5 self.contents_opacity += 5 when 31..60 self.y += 1 self.opacity += 5 self.contents_opacity += 5 else self.y = @org[1] self.opacity = 255 self.contents_opacity = 255 @animation_time = 999 end end end
$mog_battle_result = true
|
|
| |
shin Chevalier Dragon (niveau 1)
Messages postés : 726 Date d'inscription : 18/10/2011 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Dim 17 Nov 2013 - 15:43 | |
| Est ce que tu as le yanfly battle engine si tu ne l'a pas voici le liens:
http://yanflychannel.wordpress.com/rmvxa/battle-scripts/ace-battle-engine/
test le avec le yanfly core de base si ça marche pas essaye avec celui que j'ai modifier et dis moi le résultat. |
|
| |
Revan Ancien staffeux
Messages postés : 578 Date d'inscription : 01/11/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Dim 17 Nov 2013 - 15:56 | |
| Je crois que celui que tu as modifier contient le battle engine, mais avec ou sans celui que tu as modifier le battle engine du lien me donne cette erreur. |
|
| |
Revan Ancien staffeux
Messages postés : 578 Date d'inscription : 01/11/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Dim 17 Nov 2013 - 16:17 | |
| bon au pire je supprime les script de Claimh et je me bricole une interface dans le Yanfly core... |
|
| |
shin Chevalier Dragon (niveau 1)
Messages postés : 726 Date d'inscription : 18/10/2011 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Dim 17 Nov 2013 - 17:00 | |
| Ca serais le mieux parce que la je viens de regler une bonne 10ene de methode qui n'étais pas compatible et y'en a plein d'autre.
Si tu sais comment tu veux ton interface je peut te le faire.
ps: l'abus de script pour une même scène est dangereux pour la santé et peut provoquer bug et rage a outrance veuillez donc a modéré votre consommation. le service de la santé vidéo ludique vous remercie. |
|
| |
Revan Ancien staffeux
Messages postés : 578 Date d'inscription : 01/11/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Dim 17 Nov 2013 - 17:22 | |
| Voilà j'ai tout enlevé les script de Claimh. Et volontier pour l'interface Voici ce que j'aimerai si possible : EDIT les ressources : |
|
| |
shin Chevalier Dragon (niveau 1)
Messages postés : 726 Date d'inscription : 18/10/2011 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Dim 17 Nov 2013 - 18:06 | |
| |
|
| |
eddy_de_galdon Chevalier Dragon (niveau 2)
Messages postés : 807 Date d'inscription : 31/08/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Lun 18 Nov 2013 - 16:23 | |
| - shin a écrit:
- Il est possible que j'en fasse en RGSS (XP) un jour.
Je peux vous proposez de faire des Script sur XP (car shin ne n'en fait pas encore). je ne peux pas faire de choses hyper-complexe mais des truc simple (je suis un débutant.) Voici Mes deux première création : Scene_Title- [rajoute des options dans l'ecran titre] : https://forum-lpdm.forums-actifs.com/t3236-xpscene_titleScene_Aide ] permet de crér un fenêtre de commande pour avoir des aides] : https://forum-lpdm.forums-actifs.com/t3271-xp-scene_aiden' hésiter pas a me demander pour des script XP ! |
|
| |
Donchouwa Chevalier (niveau 2)
Messages postés : 88 Date d'inscription : 19/11/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Ven 22 Nov 2013 - 1:18 | |
| |
|
| |
eddy_de_galdon Chevalier Dragon (niveau 2)
Messages postés : 807 Date d'inscription : 31/08/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Ven 22 Nov 2013 - 22:20 | |
| Je vais voir (mais vue que je n'ais pas internet chez moi / la, je suis chez ma tante.) mais je pense que sa va être très compliqué pour moi ! |
|
| |
shin Chevalier Dragon (niveau 1)
Messages postés : 726 Date d'inscription : 18/10/2011 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Dim 24 Nov 2013 - 14:36 | |
| Je poste juste pour dire que j'ai fini la demande de Revan et donc je suis dispo pour tout autre demande.
@donchouwa : désolé de ne pas pouvoir t'aider.
j'en profite aussi pour dire que dans environ 2 semaine je posterais un script sur un système de rune (dons l'idée principal mes venu de MP) et dans 2 voir 3 mois (si je prend pas trop de retard ^^) je sortirais un sbs plus complet et moins compliqué que le tankentai. |
|
| |
Chaos17 Chevalier (niveau 2)
Messages postés : 90 Date d'inscription : 09/02/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Dim 24 Nov 2013 - 18:26 | |
| Shin, je crois qu'on c'est loupé ? XD |
|
| |
shin Chevalier Dragon (niveau 1)
Messages postés : 726 Date d'inscription : 18/10/2011 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Dim 24 Nov 2013 - 18:32 | |
| Si c'est pour le script que tu ma demandé j'ai annoncé a la première page qu'il étais fini et posté ^^
Dans la section script le nom du post est "Scene by key". |
|
| |
Chaos17 Chevalier (niveau 2)
Messages postés : 90 Date d'inscription : 09/02/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Dim 24 Nov 2013 - 18:35 | |
| - shin a écrit:
- Si c'est pour le script que tu ma demandé j'ai annoncé a la première page qu'il étais fini et posté ^^
Dans la section script le nom du post est "Scene by key". Je suis désolé, je n'avais pas vu que c'était dans la section script Je te remercie et je vais tester de ce pas. A bientôt. |
|
| |
eddy_de_galdon Chevalier Dragon (niveau 2)
Messages postés : 807 Date d'inscription : 31/08/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Lun 25 Nov 2013 - 16:55 | |
| Donchouwa : le script que tu veux, c'est pour XP ou vx ace ? |
|
| |
Donchouwa Chevalier (niveau 2)
Messages postés : 88 Date d'inscription : 19/11/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Lun 25 Nov 2013 - 18:03 | |
| C'est pour XP, je n'aime pas trop VX Ace ^^' |
|
| |
eddy_de_galdon Chevalier Dragon (niveau 2)
Messages postés : 807 Date d'inscription : 31/08/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Lun 25 Nov 2013 - 19:02 | |
| J'ai essayé de faire ce système en évents mais il y a eu des bugs. J'essaye encore pour le script tout de même (il faut juste que je trouve ces commandes et voilà !) |
|
| |
eddy_de_galdon Chevalier Dragon (niveau 2)
Messages postés : 807 Date d'inscription : 31/08/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Mar 26 Nov 2013 - 16:32 | |
| désolé donchouwa, je ne pourras pas t'aider pour les systèmes que tu demande (assez complexe). il faut voir quelqu'un de fort en script comme Zeus ou mat.
les systeme intégré a ton script marche avec les rajout d'autres script. je connais un autre systeme de combat qui peut aussi faire des invocation mais la aussi, sa ce passe coté script : http://forum.eclipso.fr/viewtopic.php?t=575 |
|
| |
Donchouwa Chevalier (niveau 2)
Messages postés : 88 Date d'inscription : 19/11/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Mar 26 Nov 2013 - 16:37 | |
| Ah mince, je suis donc obliger de passer à ce style de combat pour avoir ce système :'( Moi je voulais rester dans les combats de base, mais bon, quand y a plus le choix, on va pas se plaindre Merci d'avoir essayé |
|
| |
eddy_de_galdon Chevalier Dragon (niveau 2)
Messages postés : 807 Date d'inscription : 31/08/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Mar 26 Nov 2013 - 17:28 | |
| Je viens de trouver une explication pour un systeme d'invocation en event ici (mais en anglais.) http://www.gdunlimited.net/forums/topic/1012-xp-summoning-system/
en éspérant que ça marche pour que tu garde ton système de base ^^ |
|
| |
Donchouwa Chevalier (niveau 2)
Messages postés : 88 Date d'inscription : 19/11/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Mar 26 Nov 2013 - 20:00 | |
| Merci, ça à l'air intéressant de ce que j'ai pu comprendre, et on dirait le même fonctionnement que sur la démo que j'ai posté. Mais bon, je suis un peu perdu avec l'anglais, mais je capte un peu une grande partie.
EDIT : Ce système fonctionne très bien, je peux m'en servir pour faire des transformations, des invocations, et les enlever à ma guise ^^ Merci beaucoup pour cette trouvaille, je te donnerai bien des points, mais je sais pas comment on fait :/ |
|
| |
eddy_de_galdon Chevalier Dragon (niveau 2)
Messages postés : 807 Date d'inscription : 31/08/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Mar 26 Nov 2013 - 20:38 | |
| |
|
| |
Zexion Administrateur
Messages postés : 6228 Date d'inscription : 04/01/2012 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Mar 26 Nov 2013 - 20:42 | |
| Tu ne peux pas puisque tu n'en as point. Mais pas d'inquiétude, je me charge de récompenser Eddy. |
|
| |
Donchouwa Chevalier (niveau 2)
Messages postés : 88 Date d'inscription : 19/11/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Mar 26 Nov 2013 - 20:43 | |
| Ok ^^
C'est juste dommage que les battler ne s'affichent pas au retour des personnages. Il y a juste le Héros. Mais c'est pas un problème important. |
|
| |
Chaos17 Chevalier (niveau 2)
Messages postés : 90 Date d'inscription : 09/02/2013 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Jeu 28 Nov 2013 - 13:57 | |
| Salut,
J'aimerai savoir si c'est possible d'ajouter une option dans le script de Yanfly pour y ajouter le mode plein écran du script de Zeus ? J'aimerai que le joueur puisse choisir le mode plein écran ou non via le menu d'option de Yanfly.
Yanfly script : http://pastebin.com/zDMjNrES Fullscreen script : http://pastebin.com/dvtGJ4aF |
|
| |
shin Chevalier Dragon (niveau 1)
Messages postés : 726 Date d'inscription : 18/10/2011 Jauge LPC :
| Sujet: Re: Realisation volontaire de script !! Jeu 28 Nov 2013 - 20:41 | |
| Je le ferais demain j'ai pas le temps se soir. |
|
| |
Contenu sponsorisé
| Sujet: Re: Realisation volontaire de script !! | |
| |
|
| |
|