Probleme script: nom afficher sur la map

Vous avez besoin d'aide sur RPG Maker XP ?

Probleme script: nom afficher sur la map

Message par fereval » 05 Jan 2008, 13:02

Voila depuis peu j'ai importé ce script : (il permet d'afficher les nom des map a l'ecran)

Code : Tout sélectionner
#==============================================================================
# ?¡ Window_Map_Name
#------------------------------------------------------------------------------
class Window_Map_Name < Window_Base
  attr_accessor :text

  #--------------------------------------------------------------------------
  # ?Å“ Æ’IÆ’uÆ’WÆ’FÆ’NÆ’g?‰Šú
  #--------------------------------------------------------------------------
  def initialize
     super(8, -8, 640, 64)
    self.contents = Bitmap.new(self.width - 32, self.height - 32)
    self.contents.font.name = "Arial"
    @align = 1
    @showing_time = -1
    @text_color   = Color.new(255, 255, 0, 255)
  end
  #--------------------------------------------------------------------------
  #
  #--------------------------------------------------------------------------
  def set_text(text, align = 2)
    if text != @text or align != @align
      @text = text
      @align = align
      if text.empty? or text =~ /^\./
        @showing_time = -1
        self.contents_opacity = 0
        self.visible = false
      else
        @showing_time = 100
        self.contents_opacity = 255
        self.visible = true
        self.contents.clear
        x = 4
        y = 0
        width = self.contents.width - 8
        str = "- "+@text+" -"
        self.contents.font.color = Color.new(  0,  0,  0, 192)
        self.contents.draw_text(x+2, y+2, width, 32, str, @align)
        self.contents.font.color = Color.new( 64, 64, 64, 192)
        self.contents.draw_text(x-1, y-1, width, 32, str, @align)
        self.contents.draw_text(x+1, y-1, width, 32, str, @align)
        self.contents.draw_text(x-1, y+1, width, 32, str, @align)
        self.contents.draw_text(x+1, y+1, width, 32, str, @align)
        self.contents.font.color = @text_color
        self.contents.draw_text(x,   y,   width, 32, str, @align)
      end
    end
  end
  #--------------------------------------------------------------------------
  # ?Å“ ?Ä•`‰æ
  #--------------------------------------------------------------------------
  def update
    return if @showing_time < 0
    @showing_time -= 1
    if @showing_time < 16
      self.contents_opacity = @showing_time * 16
      if @showing_time == 0
        self.visible = false
        self.contents.clear
        return
      end
    end
  end
end
#==============================================================================
# ?¡ Scene_Map
#==============================================================================
class Scene_Map
  def initialize_map_name_window(text = nil)
    if @map_name_window.nil?
      @map_name_window = Window_Map_Name.new
      @map_name_window.opacity = 0
      @map_name_window.text = text if not text.nil?
    end
  end
  #--------------------------------------------------------------------------
  # ?Å“ Æ’?Æ’Cƒ“?ˆ—?
  #--------------------------------------------------------------------------
  alias xrxs20_main main
  def main
    initialize_map_name_window
    xrxs20_main
    @map_name_window.dispose
  end
  #--------------------------------------------------------------------------
  # ?Å“ Æ’tÆ’Å’?[ƒ€?X?V
  #--------------------------------------------------------------------------
  alias xrxs20_update update
  def update
    @map_name_window.set_text($game_map.name)
    @map_name_window.update
    xrxs20_update
  end
end
#==============================================================================
# ?¡ Scene_Title
#==============================================================================
class Scene_Title
  alias xrxs20_main main
  def main
    $map_infos = load_data("Data/MapInfos.rxdata")
    for key in $map_infos.keys
      $map_infos[key] = $map_infos[key].name
    end
    xrxs20_main
  end
end
#==============================================================================
# ?¡ Game_Map
#==============================================================================
class Game_Map
  def name
    $map_infos[@map_id]
  end
end
#==============================================================================
# ?¡ Scene_Battle
#==============================================================================
class Scene_Battle
  #--------------------------------------------------------------------------
  # ?Å“ Æ’?Æ’Cƒ“?ˆ—?
  #--------------------------------------------------------------------------
  alias xrxs20_main main
  def main
    xrxs20_main
    if $scene.is_a?(Scene_Map) and (not XRXS20_Config::SCENE_BATTLE_TO_SCENE_MAP)
      $scene.initialize_map_name_window($game_map.name)
    end
  end
end




et il marche trres bien dans tout les cas sauf dans le cas d'une defaite ou d'une victoire dans un combat crer avec un evenement :?: :
Si je perd ou gagne dans ce style de combat il m'affiche:
Code : Tout sélectionner
Scrip Window_map_name nr fonctionne pas en 127 a la ligne "name error"
uninitialized constant scene_Battle::XRXS20_config
:?!

Esque quelqun pourai resoudre ce problème ?
:?
Merci d'avance :))
Dernière édition par Martial le 05 Jan 2008, 13:55, édité 1 fois.
Raison : Utilise les balises "code", c'est tout de même plus joli ! ;-)
Fervant Partisant de l'Immuabilité Avatarienne !!
Avatar de l’utilisateur
fereval
Habitué
Habitué
 
Message(s) : 23
Inscription : 01 Jan 2008, 22:17

Re: Probleme script: nom afficher sur la map

Message par Martial » 05 Jan 2008, 14:12

Ce que tu peux faire, c'est remplacer cette ligne:

Code : Tout sélectionner
if $scene.is_a?(Scene_Map) and (not XRXS20_Config::SCENE_BATTLE_TO_SCENE_MAP)


Par celle-ci:

Code : Tout sélectionner
if $scene.is_a?(Scene_Map)


Pourquoi ne pas enlever la partie qui nous gêne ?

Par contre, je ne sais pas vraiment à quoi correspond le XRXS20... Si quelqu'un le sait, je suis preneur ! :lol2:
L'important n'est pas de connaître mais de savoir trouver !
La gentillesse ou la franchise ? Que choisir ?
Vive les otakus !!
Retourner sur le site
Avatar de l’utilisateur
Martial
Administrateur
Administrateur
 
Message(s) : 2520
Inscription : 10 Nov 2006, 23:41
Localisation : Rambouillet
Meilleurs scores: 12

Re: Probleme script: nom afficher sur la map

Message par fereval » 05 Jan 2008, 14:31

Super ça marche !! lol

tu es vraiment genial :+2:


encore merci !!
Fervant Partisant de l'Immuabilité Avatarienne !!
Avatar de l’utilisateur
fereval
Habitué
Habitué
 
Message(s) : 23
Inscription : 01 Jan 2008, 22:17


Retour vers Aide

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 1 invité

cron