Sujet n°5597
Posté par LUGIA OBSCUR le 13 Déc - 16:19 (2009)
Titre : Bug scene title/ok
Voilà en testant mon jeu qui marcher très bien et en le retestant ensuite ça ma affiché sa.


Spoiler



Log
Spoiler
---------- Erreur de script : Scene_Title ----------
----- Type
NameError
----- Message
uninitialized constant Scene_Title::MAPINTRO
----- Position dans Scene_Title
Ligne 55
----- Backtrace
Script : Scene_Title | Ligne : 55 | Méthode : in `main'
Script : Main | Ligne : 53





Script
Spoiler
#==============================================================================
# ■ Scene_Title (Version Pokémon)
# Pokemon Script Project - Krosk
# 01/08/07
#------------------------------------------------------------------------------
# Scène modifiable
#------------------------------------------------------------------------------
# Intègre le menu de chargement
#------------------------------------------------------------------------------

class Scene_Title
  include POKEMON_S

  def main
    if $BTEST
      battle_test
      return
    end
   
    if FileTest.exist?("SaveAuto.rxdata")
      print("Sauvegarde de secours détectée.\n\nAppuyez sur Entrée, puis sur Echap pour charger, ou Entrée pour continuer.")
      loop do
        Input.update
        if Input.trigger?(Input::C)
          File.delete("SaveAuto.rxdata")
          break
        end
        if Input.trigger?(Input::B)
          @auto_load = true
          break
        end
      end
    end
   
    if $game_system == nil
      $data_actors        = load_data("Data/Actors.rxdata")
      $data_classes       = load_data("Data/Classes.rxdata")
      $data_skills        = load_data("Data/Skills.rxdata")
      $data_items         = load_data("Data/Items.rxdata")
      $data_weapons       = load_data("Data/Weapons.rxdata")
      $data_armors        = load_data("Data/Armors.rxdata")
      $data_enemies       = load_data("Data/Enemies.rxdata")
      $data_troops        = load_data("Data/Troops.rxdata")
      $data_states        = load_data("Data/States.rxdata")
      $data_animations    = load_data("Data/Animations.rxdata")
      $data_tilesets      = load_data("Data/Tilesets.rxdata")
      $data_common_events = load_data("Data/CommonEvents.rxdata")
      $data_system        = load_data("Data/System.rxdata")
      $picture_data       = load_data("Data/Library.rxdata")
     
      $game_system = Game_System.new
    end
   
    if not @auto_load and not MAPINTRO
   
      # -----------------------------------------------------------------
      #     La scène d'intro commence ici (non MAPINTRO)
      # -----------------------------------------------------------------
      # Elle est bien sûr modifiable à votre goût.
      # -----------------------------------------------------------------
      view = Viewport.new(0,0,640,480)
      view.z = -5
      #view = Viewport.new(0,25,640,430)
      #view.z = 0
      background = Plane.new(view)
      background.bitmap = RPG::Cache.title("Opening2.jpg")
      #background.oy += 25
      background.z = 0
      background.tone = Tone.new(0,0,0,255)
     
      #view = Viewport.new(0,0,640,480)
      #view.z = -5
      #background_bis = Plane.new(view)
      #background_bis.bitmap = RPG::Cache.title("Opening2.jpg")
      #background_bis.z = -5
     
      band_top = Sprite.new
      band_top.bitmap = RPG::Cache.title("Opening3.png")
      band_top.z = 5
      band_bottom = Sprite.new
      band_bottom.bitmap = RPG::Cache.title("Opening3.png")
      band_bottom.z = 5
      band_bottom.y = 450
     
      band_mid = Plane.new(Viewport.new(0,0,640,480))
      band_mid.bitmap = RPG::Cache.title("Opening4.png")
      band_mid.z = 5
     
      middle = Sprite.new
      middle.bitmap = RPG::Cache.title("Opening1.png")
      middle.z = 2
     
      title1 = Sprite.new
      title1.bitmap = RPG::Cache.title("Opening6.png")
      title1.z = 3
      title1.opacity = 0
      title1.color = Color.new(255,255,255,255)
     
      title2 = Sprite.new
      title2.bitmap = RPG::Cache.title("Opening7.png")
      title2.z = 4
      title2.opacity = 0
      title2.color = Color.new(255,255,255,255)
     
      flash = Sprite.new
      flash.bitmap = RPG::Cache.title("Opening8.png")
      flash.z = 10
      flash.opacity = 0
     
      mid = Sprite.new
      mid.bitmap = RPG::Cache.title("Opening5.png")
      mid.z = 5
      mid.visible = false
     
      screen = Sprite.new
      screen.bitmap = RPG::Cache.title("Opening10.png")
      screen.z = 2
      screen.visible = false
     
      start = Sprite.new
      start.bitmap = RPG::Cache.title("Opening11.png")
      start.z = 5
      start.visible = false
     
      Graphics.transition(5)
     
      $game_system.bgm_play($data_system.title_bgm)
      Audio.me_stop
      Audio.bgs_stop
     
      timer = 0
      loop do
        Graphics.update
        Input.update
       
        timer += 1
        background.ox -= 12
        #background_bis.ox += 6
       
        if timer == 210
          background.tone.gray = 0
        end
       
        if timer > 210 and background.tone.red > 0
          background.tone.red -= 25
          background.tone.green -= 25
        end
         
        if timer > 210 and timer % (150 + rand(50)) == 0
          background.tone.red = background.tone.green = 250
        end
       
        if flash.opacity > 0
          flash.opacity -= 15
        end
       
        if timer > 5 and not band_top.disposed?
          band_top.x += 13
          if band_top.x > 640
            band_top.dispose
          end
        end
       
        if timer > 73 and not band_bottom.disposed?
          band_bottom.x -= 13
          if band_bottom.x < -640
            band_bottom.dispose
          end
        end
       
        if timer > 150 and not band_mid.disposed?
          band_mid.ox -= 20
          if timer > 210
            band_mid.dispose
            mid.visible = true
          end
        end
       
        if timer > 210 and not title1.disposed? and title1.opacity < 255
          title1.opacity += 15
          title1.color.alpha -= 15
        end
       
        if timer > 240 and not title1.disposed? and title1.opacity == 255
          title1.color.alpha += 15
        end
       
        if timer == 270
          flash.opacity = 255
          title1.dispose
          mid.dispose
          middle.dispose
          screen.visible = true
        end
       
        if timer > 270 and not title2.disposed? and title2.opacity < 255
          title2.opacity += 15
          title2.color.alpha -= 15
          if title2.opacity >= 255
            title2.dispose
          end
        end
       
        if timer > 290 and timer%20 == 0
          start.visible = !start.visible
        end
       
        if Input.trigger?(Input::C)
          $game_system.se_play($data_system.decision_se)
          break
        end
       
        if timer > 3750
          Audio.bgm_fade(1000*5)
        end
       
      end
     
      Graphics.freeze
      background.dispose if not background.disposed?
      #background_bis.dispose if not background_bis.disposed?
      band_top.dispose if not band_top.disposed?
      band_bottom.dispose if not band_bottom.disposed?
      band_mid.dispose if not band_mid.disposed?
      mid.dispose if not mid.disposed?
      middle.dispose if not middle.disposed?
      title1.dispose if not title1.disposed?
      title2.dispose if not title2.disposed?
      flash.dispose if not flash.disposed?
      start.dispose if not start.disposed?
      screen.dispose if not screen.disposed?
      Graphics.transition
      Graphics.freeze
     
      Audio.bgm_stop
     
      # -----------------------------------------------------------------
      #     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")
   
    @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
   
    @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
          @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
      @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.opacity = 128
        @save_game_window_list.y = 30 + 83*i
        @save_game_window_list.height = 80
        @save_game_window_list.contents = Bitmap.new(548, 48)
        set_window(@save_game_window_list)
        @save_game_window_list.contents.draw_text(9, 3, 530, 48, "CONTINUER PARTIE "+(i+1).to_s)
      elsif i == @index
        @save_game_window_list.opacity = 255
        @save_game_window_list.y = 30 + 83*i
        @save_game_window_list.height = 163
        @save_game_window_list.contents = Bitmap.new(548, 131)
        set_window(@save_game_window_list)
        @save_game_window_list.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.contents.draw_text(9, 42, 252, 48, "NOM:")
        @save_game_window_list.contents.draw_text(9, 42, 252, 48, name, 2)
        @save_game_window_list.contents.draw_text(285, 42, 252, 48, "ID:")
        @save_game_window_list.contents.draw_text(285, 42, 252, 48, sprintf("%05d",id) , 2)
        @save_game_window_list.contents.draw_text(9, 81, 252, 48, "POKéDEX:")
        @save_game_window_list.contents.draw_text(9, 81, 252, 48, captured, 2)
        @save_game_window_list.contents.draw_text(285, 81, 252, 48, "DUREE:")
        @save_game_window_list.contents.draw_text(285, 81, 252, 48, time, 2)
      elsif i > @index
        @save_game_window_list.opacity = 128
        @save_game_window_list.y = 30 + 83*i + 83
        @save_game_window_list.height = 80
        @save_game_window_list.contents = Bitmap.new(548, 48)
        set_window(@save_game_window_list)
        @save_game_window_list.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
    else
      @new_game_window.opacity = 128
      @new_game_window.y = 30 + 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

  # --------------------------------------------------------
  # 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 = [false, false] # Vu, Capturé
    end
  end
end

Posté par Ace Attorney Man le 13 Déc - 16:24 (2009)
Balise code.
Sinon, tu as touché à quelque chose ?

Posté par LUGIA OBSCUR le 13 Déc - 16:32 (2009)
Euh non pas que je sache appart que je voulais mettre le script de slash comme pour dp le menu en bleu

Posté par Ace Attorney Man le 13 Déc - 16:40 (2009)
Hum, ça doit venir de là, mais là je peux pas t'aider ...

Posté par LUGIA OBSCUR le 13 Déc - 16:41 (2009)
peut-être que je dois remettre le script d'un projet psp simple tout neuf

Posté par Ace Attorney Man le 13 Déc - 16:43 (2009)
Nan, j'ai une idée !
Va dans config_panel et mets quelque part  
Code:

 Mapintro = false



Posté par LUGIA OBSCUR le 13 Déc - 16:45 (2009)
Nimporte tout

Posté par Ace Attorney Man le 13 Déc - 16:52 (2009)
N'importe tout ? En français ?

Posté par LUGIA OBSCUR le 13 Déc - 16:54 (2009)
n'importe ou

Posté par Ace Attorney Man le 13 Déc - 16:55 (2009)
C'est n'importe où, mais bon...
Oui, n'importe où
.

Posté par LUGIA OBSCUR le 13 Déc - 17:08 (2009)
c'est pareil

Posté par Sphinx le 13 Déc - 18:59 (2009)
>> cherche, dans ton Scene_Title, les lignes où tu as MAPINTRO et mets POKEMON_S:: devant si ca n'y est pas déjà.

Posté par LUGIA OBSCUR le 13 Déc - 19:11 (2009)
C'est biien à la ligne 55 parce que c'est pareil que tout à l'huere sauf qu'il y pokemon_s devant

Posté par ThunderZ le 14 Déc - 20:05 (2009)
On a essayer plein de truc à nous deux et riien à fonctionner toujours le même bug

Posté par Ace Attorney Man le 14 Déc - 21:21 (2009)
Etrange ...
Remets peut-être ton script Scene_Title d'origine.

Posté par LUGIA OBSCUR le 14 Déc - 21:35 (2009)
Essayons







EDIT:ça marque toujours la même chose :?

Posté par Ace Attorney Man le 14 Déc - 21:50 (2009)
Alors là ...  :shock:

Posté par LUGIA OBSCUR le 14 Déc - 21:51 (2009)
Peut-être que sphinx peut m'aider

Posté par Ace Attorney Man le 14 Déc - 22:02 (2009)
Bah, fais-lui confiance. :p

Posté par LUGIA OBSCUR le 15 Déc - 22:17 (2009)
Personne ne peut m'aider car j'ai pas envie de copier toute les map dans un projet vierge de psp

Posté par Ace Attorney Man le 16 Déc - 10:33 (2009)
Bah, tu as modifié récemment un script ?

Posté par LUGIA OBSCUR le 16 Déc - 13:57 (2009)
Non J'ai riien modifier


J'ai juste ajouter un script pour le menu en blue

Posté par Ace Attorney Man le 17 Déc - 16:56 (2009)
Quel script ?