Aller au contenu


Photo

Problème avec mon script


1 reply to this topic

#1 Edward Elrich

Edward Elrich

    Au bistrot du coin

  • Membres
  • Pip
  • 2 Messages :
  • Genre :Homme

Posté jeudi 29 décembre 2011 à 19:17

Bonjour.
je me présente je m'appelle Alexis.
J'ai un problème car je suis débutant avec le RGSS, je voudrais savoir comment rajouter un objet en façon script ex: je trouve une potion ouééé "potion += 1."
Mais là je sais pas c'est quelle code qui faut rajouté.
Voici mes Script

Window_Cure
#==============================================================================
# ■ Window_Cure
#==============================================================================
#xX--Script fait par : Alexis Ottina--Xx
#==============================================================================
class Window_Cure < Window_Selectable
  #----------------------------------------------------------------------------
  # ● initialisation
  #----------------------------------------------------------------------------
  # L'initialisation sère a dire ce qu'il y aura tout au début de la scène.
  #----------------------------------------------------------------------------
 def initialize
   # On décrit la position, et la longueur et la largeur( x, y, w, h)
    super(0, 0, 260, 140)
    # On crée la "Bitmap"
    self.contents = Bitmap.new(width - 32, height - 32)
    # On définit la police...
    self.contents.font.name = $fontface
    # ...et là, sa taille.
    self.contents.font.size = $fontsize
    # Nos commandes avec les images respectives
    @tab_icon = {"Une potion" => "021-potion01",
    "Une Super Potion" => "022-potion02",
    "Une Hyper Potion" => "023-potion03"}
    # On va à la méthode 'refresh'
    refresh
    # On a rendu active la fenêtre pour que le joueur puisse déplacer le curseur
    # et mis l'index sur 0.
    self.active = true
    # L'index à 0, c'est à dire qu'il commence à 'Une Super Potion'.
    self.index = 0
  end
  #----------------------------------------------------------------------------
  # ● Mise à jour
  #----------------------------------------------------------------------------
  # Quand on quitte la scène, on éfface tout pour qu'on puisse superposer
  # tout les 'object'.
  #---------------------------------------------------------------------------
  def refresh
    # On éfface tout le contenue
    self.contents.clear
    @item_max = @tab_icon.size
    i = 0
    # On parcours le Hash
    @tab_icon.each do |key, value|
      x = 64
      # Augmentation de la position Y selon la valeur de i
      y = i * 32
      # On prend l'image
      bitmap = RPG::Cache.icon(value)
      # on sélectionne la partie de l'image : ici, c'est toute l'image
      src_rect = Rect.new(0, 0, bitmap.width, bitmap.height)
      # On fait un transfert : couper-coller
      self.contents.blt(5, y, bitmap, src_rect)
      # Taille du texte
      text = contents.text_size(key).width
      # Affichage du texte
      self.contents.draw_text(bitmap.width + 5, y, text, 32, key)
      # Incrémentation de i
      i +=1
    end
  end
  #---------------------------------------------------------------------------
  # ● Mise à jour du curseur
  #---------------------------------------------------------------------------
  # C'est ici que nous allons définir la taille et la position du curseur.
  #---------------------------------------------------------------------------
  
  def update_cursor_rect
    # Si l'index est inf a 0...
    if @index < 0
      #...pas de curseur
      self.cursor_rect.empty
      # Sinon...
    else
      # On place le curseur par défaut.
      self.cursor_rect.set(0, @index * 32, self.width - 32, 32)
    end
  end
end

Ok pour la fenêtre, mais le probleme est dans la scène.

Scene_Cure
class Scene_Cure
  def main
    @cure_window = Window_Cure.new
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    Graphics.freeze
    @cure_window.dispose
  end
  def update
    @cure_window.update
    if @cure_window.active
      update_command
    end
  end
  def update_command
    if Input.trigger?(Input::<img src='http://www.rpg-legends.com/forum/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='B)' />
      $game_system.se_play($data_system.cancel_se)
      $scene = Scene_Map.new
      return
    end
    if Input.trigger?(Input::C)
      case @cure_window.index
      when 0
        $game_system.se_play($data_system.decision_se)
        # C'est ici mon problème !!!
      when 1
        $game_system.se_play($data_system.decision_se)
        # Ici aussi !!!
      when 2
        $game_system.se_play($data_system.decision_se)
        #Ici aussi !!!
      end
      return
    end
  end
end
Et voici la scène
Image IPB
Voilà, merci d'avance.

#2 Edward Elrich

Edward Elrich

    Au bistrot du coin

  • Membres
  • Pip
  • 2 Messages :
  • Genre :Homme

Posté vendredi 30 décembre 2011 à 13:11

Non c'est bon j'ai trouvé voici le bout de code :
$game.party.gain_item(ID,quantité)
Enfin un truc comme ça.




Ajouter une réponse



  


0 utilisateur(s) en train de lire ce sujet

0 members, 0 guests, 0 anonymous users