Code: |
@credits = Window_Base.new(30, 113 + 83*@number, 580, 80) @credits.contents = Bitmap.new(548, 48) set_window(@credits) @credits.contents.draw_text(9,3,548,48,"CREDITS") |
Code: |
def credit_scene $Scene=Scene_Credits.new end |
Code: |
if @index == @number @new_game_window.opacity = 255 @new_game_window.y = 30 + 83*@number @credits.opacity = 255 @credits.y = 30 + 83 + 83*@number#166*@number else @new_game_window.opacity = 128 @new_game_window.y = 30 + 83*(@number+1) @credits.opacity = 128 @credits.y = 30 + 83 + 83*(@number+1) |
Code: |
# ----------------------------------------------------------------- # Fin de la scène d'intro # ----------------------------------------------------------------- elsif MAPINTRO.type == Array and $_temp_map_intro == nil $_temp_map_intro = true $map_link = {} Audio.bgm_stop Graphics.frame_count = 0 $game_temp = Game_Temp.new $game_system = Game_System.new $game_switches = Game_Switches.new $game_variables = Game_Variables.new $game_self_switches = Game_SelfSwitches.new $game_screen = Game_Screen.new $game_actors = Game_Actors.new $game_party = Game_Party.new $game_troop = Game_Troop.new $game_map = Game_Map.new $game_player = Game_Player.new # ---- Pas forcément nécessaire $pokemon_party = POKEMON_S::Pokemon_Party.new $data_storage = [[0]] $pokemon_party.create_box Player.set_trainer_code(rand(2**32)) $random_encounter = Array.new(7) $random_encounter[0] = 0 $battle_var = POKEMON_S::Pokemon_Battle_Variable.new $existing_pokemon = [] $string = [] POKEMON_S::set_SAVESLOT = @index Player.trainer_trade_code # ---- Pas forcément nécessaire $game_party.setup_starting_members $game_map.setup(MAPINTRO[0]) $game_player.moveto(MAPINTRO[1], MAPINTRO[2]) $game_player.refresh $game_map.autoplay $game_map.update $scene = Scene_Map.new return end Audio.bgm_stop $_temp_map_intro = nil @sprite = Sprite.new @sprite.bitmap = RPG::Cache.title($data_system.title_name) number = 0 # Nombre de cadres de sauvegarde à générer for i in 0..2 if FileTest.exist?("Save#{i+1}.rxdata") number += 1 end end @number = number @new_game_window = Window_Base.new(30, 30 + 83*@number, 580, 80) @new_game_window.contents = Bitmap.new(548, 48) set_window(@new_game_window) @new_game_window.contents.draw_text(9,3,548,48,"NOUVELLE PARTIE") @credits = Window_Base.new(30, 113 + 83*@number, 580, 80) @credits.contents = Bitmap.new(548, 48) set_window(@credits) @credits.contents.draw_text(9,3,548,48,"CREDITS") @save_game_window_list = [] for i in 1..@number window = Window_Base.new(30, 30 + 83*(i-1), 580, 80) window.contents = Bitmap.new(548, 48) @save_game_window_list.push(window) end @index = 0 @background = Plane.new(Viewport.new(0,0,640,480)) @background.bitmap = RPG::Cache.picture("fondsaved.png") @background.z -= 10 refresh_all Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end Graphics.freeze ####test @credits.dispose @new_game_window.dispose @background.dispose for window in @save_game_window_list window.dispose end end def update if Input.trigger?(Input::DOWN) @index += @index == @number ? 0 : 1 if @erase and @index > 2 @index = 2 end refresh_all end if Input.trigger?(Input::UP) @index -= @index == 0 ? 0 : 1 refresh_all end if Input.trigger?(Input::C) case @index when @number # Nouveau jeu if SAVEBOUNDSLOT and @number == 3 $game_system.se_play($data_system.decision_se) @erase = true @index = 0 ####test @credits.contents.clear @new_game_window.contents.clear @new_game_window.contents.draw_text(9,3,548,48,"RECOMMENCER QUELLE PARTIE?") refresh_all else command_new_game end else # Chargement if @erase command_new_game else $game_temp = Game_Temp.new on_decision("Save#{@index + 1}.rxdata") end end end if Input.trigger?(Input::B) and @erase $game_system.se_play($data_system.cancel_se) @erase = false @index = 3 ####test @credits.contents.clear @new_game_window.contents.clear @new_game_window.contents.draw_text(9,3,548,48,"NOUVELLE PARTIE") refresh_all end if @auto_load != nil $game_temp = Game_Temp.new on_decision("SaveAuto.rxdata") File.delete("SaveAuto.rxdata") end end def refresh_all for i in 0..@number-1 if i < @index @save_game_window_list[i].opacity = 128 @save_game_window_list[i].y = 30 + 83*i @save_game_window_list[i].height = 80 @save_game_window_list[i].contents = Bitmap.new(548, 48) set_window(@save_game_window_list[i]) @save_game_window_list[i].contents.draw_text(9, 3, 530, 48, "CONTINUER PARTIE "+(i+1).to_s) elsif i == @index @save_game_window_list[i].opacity = 255 @save_game_window_list[i].y = 30 + 83*i @save_game_window_list[i].height = 163 @save_game_window_list[i].contents = Bitmap.new(548, 131) set_window(@save_game_window_list[i]) @save_game_window_list[i].contents.draw_text(9, 3, 530, 48, "CONTINUER PARTIE "+(i+1).to_s) @filename = "Save#{i + 1}.rxdata" list = read_preview(@filename) data = list[0] time_sec = list[1] hour = (time_sec / 3600).to_s minute = "00" minute += ((time_sec%3600)/60).to_s minute = minute[minute.size-2, 2] time = hour + ":" + minute name = data[0].to_s id = data[1].to_i captured = data[2].to_s @save_game_window_list[i].contents.draw_text(9, 42, 252, 48, "NOM:") @save_game_window_list[i].contents.draw_text(9, 42, 252, 48, name, 2) @save_game_window_list[i].contents.draw_text(285, 42, 252, 48, "ID:") @save_game_window_list[i].contents.draw_text(285, 42, 252, 48, sprintf("%05d",id) , 2) @save_game_window_list[i].contents.draw_text(9, 81, 252, 48, "POKéDEX:") @save_game_window_list[i].contents.draw_text(9, 81, 252, 48, captured, 2) @save_game_window_list[i].contents.draw_text(285, 81, 252, 48, "DUREE:") @save_game_window_list[i].contents.draw_text(285, 81, 252, 48, time, 2) elsif i > @index @save_game_window_list[i].opacity = 128 @save_game_window_list[i].y = 30 + 83*i + 83 @save_game_window_list[i].height = 80 @save_game_window_list[i].contents = Bitmap.new(548, 48) set_window(@save_game_window_list[i]) @save_game_window_list[i].contents.draw_text(9, 3, 548, 48, "CONTINUER PARTIE "+(i+1).to_s) end end if @index == @number @new_game_window.opacity = 255 @new_game_window.y = 30 + 83*@number @credits.opacity = 255 @credits.y = 30 + 83 + 83*@number else @new_game_window.opacity = 128 @new_game_window.y = 30 + 83*(@number+1) @credits.opacity = 128 @credits.y = 30 + 83 + 83*(@number+1) end end def set_window(window) window.contents.font.name = $fontface window.contents.font.size = $fontsizebig window.contents.font.color = window.normal_color end # -------------------------------------------------------- # Credits # -------------------------------------------------------- def credit_scene $Scene=Scene_Credits.new end # -------------------------------------------------------- # Chargement # -------------------------------------------------------- def read_preview(filename) file = File.open(filename, "r") time_stamp = file.mtime characters = Marshal.load(file) frame_count = Marshal.load(file) game_system = Marshal.load(file) game_switches = Marshal.load(file) game_variables = Marshal.load(file) total_sec = frame_count / Graphics.frame_rate # Non utilisé game_self_switches = Marshal.load(file) game_screen = Marshal.load(file) game_actors = Marshal.load(file) game_party = Marshal.load(file) game_troop = Marshal.load(file) game_map = Marshal.load(file) game_player = Marshal.load(file) # ------------ read_data = Marshal.load(file) file.close return [read_data, total_sec] end def read_save_data(file) characters = Marshal.load(file) Graphics.frame_count = Marshal.load(file) $game_system = Marshal.load(file) $game_switches = Marshal.load(file) $game_variables = Marshal.load(file) $game_self_switches = Marshal.load(file) $game_screen = Marshal.load(file) $game_actors = Marshal.load(file) $game_party = Marshal.load(file) $game_troop = Marshal.load(file) $game_map = Marshal.load(file) $game_player = Marshal.load(file) $read_data = Marshal.load(file) if SAVE_CONVERT # Conversion des sauvegardes pre-v0.7 à v0.7+ Player.set_trainer_code(Marshal.load(file)) # Variable trainer_code trainer_id = Marshal.load(file) # Variable $game_party.actors[0].name = Marshal.load(file) # Game_Actor $game_party.actors[0].set_graphic($game_party.actors[0].character_name, $game_party.actors[0].character_hue, Marshal.load(file), $game_party.actors[0].battler_hue )# Game_Actor end $pokemon_party = Marshal.load(file) $random_encounter = Marshal.load(file) $data_pokedex = Marshal.load(file) $data_storage = Marshal.load(file) $battle_var = Marshal.load(file) $existing_pokemon = Marshal.load(file) $string = Marshal.load(file) $map_link = ($read_data != nil and $read_data[3] != nil) ? $read_data[3] : {} if $game_system.magic_number != $data_system.magic_number $game_map.setup($game_map.map_id) $game_player.center($game_player.x, $game_player.y) end $game_party.refresh POKEMON_S::set_SAVESLOT = @index Player.trainer_trade_code end def on_decision(filename) unless FileTest.exist?(filename) $game_system.se_play($data_system.buzzer_se) return end $game_system.se_play($data_system.load_se) file = File.open(filename, "rb") read_save_data(file) file.close $game_system.bgm_play($game_system.playing_bgm) $game_system.bgs_play($game_system.playing_bgs) $game_map.update $scene = Scene_Map.new $scene.update_encounter Player.pokedex_update end alias alias_command_new_game command_new_game def command_new_game $map_link = {} alias_command_new_game #----------------------------------------------------- # Variables créées automatiquement au début du jeu # Elles sont absolument nécessaires #----------------------------------------------------- $pokemon_party = POKEMON_S::Pokemon_Party.new $data_storage = [[0]] $pokemon_party.create_box Player.set_trainer_code(rand(2**32)) $random_encounter = Array.new(7) $random_encounter[0] = 0 $battle_var = POKEMON_S::Pokemon_Battle_Variable.new $existing_pokemon = [] $string = [] POKEMON_S::set_SAVESLOT = @index Player.trainer_trade_code $data_pokedex = Array.new($data_pokemon.length-1) $data_pokedex[0] = false # Possède ou non for i in 1..$data_pokemon.length-1 $data_pokedex[i] = [false, false] # Vu, Capturé end end end |