Partagez
Aller en bas
Skillo
Skillo
Staffeux retraité

Nombre de messages : 526
Age : 30
Localisation : Rennes
Distinction : J'aime ce gars :P
(by Coco')
Scripteur apprenti, futur Berka !
(par Tretian)
Membre anonyme de la communauté, caché derrière son PC
(???)
super prof de script
[Dudu']
Résident permanent de la Chat Box
[Autoproclamé]
Adepte du XDDD [Yak' Very Happy]
Fanatique hystérique de Raymond le français [Un connu]
Date d'inscription : 19/01/2008

Magasin où l'on utiliser un objet comme monnaie alternative Empty Magasin où l'on utiliser un objet comme monnaie alternative

le Jeu 28 Mai 2009 - 0:27
Salut je poste ici un script à moi (ou plutot une démo le script est trop long Very Happy ),
ce script permet de créer un magasin où la monnaie est remplacé par un objet de l'inventaire

Tout est expliqué dans le script.

Exemple: Dans le screen les pieces de monstres ne sont pas la monnaie défini dans l'éditeur, c'est un objet de l'inventaire.

Démo:
http://www.mediafire.com/download.php?zqa30zm5zny

Un petit screen:
Magasin où l'on utiliser un objet comme monnaie alternative Magux8

Attention dans ce magasin la vente n'est pas autorisé.

Voilà, laisser vos commentaires.
Calion
Calion
Membre

Nombre de messages : 235
Distinction : aucune
Date d'inscription : 07/12/2008

Magasin où l'on utiliser un objet comme monnaie alternative Empty Re: Magasin où l'on utiliser un objet comme monnaie alternative

le Sam 11 Juil 2009 - 20:26
Salut Skillo.

Ce script m'intéresse, mais on ne peut pas accéder au lien. :/ Pourrais-tu renouveler le dit lien s'il te plait ?
Muteo
Muteo
Membre

Nombre de messages : 89
Distinction : aucune
Date d'inscription : 18/11/2008

Magasin où l'on utiliser un objet comme monnaie alternative Empty Re: Magasin où l'on utiliser un objet comme monnaie alternative

le Lun 24 Aoû 2009 - 14:58
Up, je suis d'accord avec calion
Skillo
Skillo
Staffeux retraité

Nombre de messages : 526
Age : 30
Localisation : Rennes
Distinction : J'aime ce gars :P
(by Coco')
Scripteur apprenti, futur Berka !
(par Tretian)
Membre anonyme de la communauté, caché derrière son PC
(???)
super prof de script
[Dudu']
Résident permanent de la Chat Box
[Autoproclamé]
Adepte du XDDD [Yak' Very Happy]
Fanatique hystérique de Raymond le français [Un connu]
Date d'inscription : 19/01/2008

Magasin où l'on utiliser un objet comme monnaie alternative Empty Re: Magasin où l'on utiliser un objet comme monnaie alternative

le Mar 25 Aoû 2009 - 12:43
Oups j'avais pas vu, je l'ai plus tel quel mais le temps de le refaire et je le remets Very Happy
AnthO'
AnthO'
Membre

Nombre de messages : 2202
Age : 26
Localisation : Orléans
Distinction : Panda d'élite

[Wax Rolling Eyes]
Date d'inscription : 05/01/2008
http://anthonybourgouin.fr

Magasin où l'on utiliser un objet comme monnaie alternative Empty Re: Magasin où l'on utiliser un objet comme monnaie alternative

le Mar 25 Aoû 2009 - 12:48
Merci bien Skillo Wink
Skillo
Skillo
Staffeux retraité

Nombre de messages : 526
Age : 30
Localisation : Rennes
Distinction : J'aime ce gars :P
(by Coco')
Scripteur apprenti, futur Berka !
(par Tretian)
Membre anonyme de la communauté, caché derrière son PC
(???)
super prof de script
[Dudu']
Résident permanent de la Chat Box
[Autoproclamé]
Adepte du XDDD [Yak' Very Happy]
Fanatique hystérique de Raymond le français [Un connu]
Date d'inscription : 19/01/2008

Magasin où l'on utiliser un objet comme monnaie alternative Empty Re: Magasin où l'on utiliser un objet comme monnaie alternative

le Jeu 27 Aoû 2009 - 1:18
Voici le script un trois partie (trop long pour un ou deux post) à collé au dessus de main à la suite dans un seul script. Toutes les instructions sont dedans.

1ere partie:
Spoiler:
Code:

#script permettant d'utiliser un objet comme monnaie alternative
#Créer par Skillo
# A placer au dessus de main avec le nom que vous voulez..
# Il est seulement possible d'acheter dans ce magasin la vente n'est pas autoriser.
#------------------------------------------------------------------------------
#==============================================================================

module Shop
    #Id de l'objet servant de monnaie alternative
    PIECE = 44
    #Nom de la monnaie alternative tel qu'elle sera affiché dans le magasin
    PIECE_NAME = "Pieces"
 
    #C'est ici que vous creez les listes d'objets ainsi que leur prix en objets "PIECE"
    OBJETS = {
    # ID => [[item1, prix], [item2, prix], [item3, prix], etc...],  <= ne pas oublier la vigule à la fin si vous voulez rajouter d'autres listes
    # ID2 => [[item1, prix], [item2, prix], [item3, prix], etc...],
    #Etc ....
    #Mais attention le dernier "ID=>[]" n'as pas de virgule à la fin.
    0 => [],
    1 => [[12, 10], [13, 10], [14, 20], [15, 20], [16,20], [17,20], [43, 30]]   
    }
   
    ARMES = {
    # ID => [[Arme1, prix], [Arme2, prix], [item3, prix], etc...],
    # ID2 => [[Arme1, prix], [Arme2, prix], [item3, prix], etc...]
    0 => [],
    1 => [[26, 30]]   
    }
 
    ARMURES = {  #armures, boucliers et accessoire
    # ID => [[Armure1, prix], [Armure2, prix], [Armure3, prix], etc...],
    # ID2 => [[Armure1, prix], [Armure2, prix], [Armure3, prix], etc...]
    0 => [],
    1 => [[22, 25], [37, 25], [43, 30]]   
    }
  end
 
#==============================================================================
# Pour lancer le magasin alternatif il suffit de definire quelles liste d'objets, d'armes et d'armue
# vous voulez  et de lancer la scene.
# Exemple dans un evenement appellez un script et mettez y ceci
#$game_system.shop1 = 0
#$game_system.shop2 = 1
#$game_system.shop3 = 0
#$scene = Scene_Shop2.new
#------------------------------------------------------------------------------
#$game_system.shop1 = 0 signifie que la liste d'objets affichée sera celle d'ID=0
#$game_system.shop2 = 1 signifie que la liste d'armes affichée sera celle d'ID=1
#$game_system.shop3 = 0 signifie que la liste d'armures affichée sera celle d'ID=0
#$scene = Scene_Shop2.new lance le magasin.
#------------------------------------------------------------------------------
#Attention si vous ne définissez pas les liste avant de lancer le magasin, ce seront les dernieres
#définies qui seront lancées. Et si vous n'en avez jamais définie aucune alors elle seront toutes à l'ID 0
#==============================================================================

#==============================================================================
# ■ Game_System
#==============================================================================
class Game_System
  attr_accessor :shop1
  attr_accessor :shop2
  attr_accessor :shop3
          # Formation ID
  #--------------------------------------------------------------------------
  # ● Initialisation de la formation
  #--------------------------------------------------------------------------
alias init2_game_system initialize
  def initialize
    init2_game_system
    @shop1= 0
    @shop2= 0
    @shop3= 0
  end
 
end


#==============================================================================
# ** Window_Base
#------------------------------------------------------------------------------

#==============================================================================

class Window_Base
#--------------------------------------------------------------------------
  # * Draw number with currency unit
  #    value : Number (gold, etc)
  #    x    : draw spot x-coordinate
  #    y    : draw spot y-coordinate
  #    width : Width
  #--------------------------------------------------------------------------
  def draw_value(value, x, y, width)
    cx = contents.text_size(Shop::PIECE_NAME).width
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, width-cx-2, WLH, value, 2)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, width, WLH, Shop::PIECE_NAME, 2)
  end
end

#==============================================================================
# ** Window_Piece
#------------------------------------------------------------------------------
#  This window displays the amount of gold.
#==============================================================================

class Window_Piece < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 204, WLH + 32)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    draw_item_icon($data_items[Shop::PIECE], 4, 0)
    draw_value($game_party.item_number($data_items[Shop::PIECE]), 45, 0, 120)
  end
end

#==============================================================================
# ** Window_ShopBuyItems
#------------------------------------------------------------------------------
#  This window displays buyable goods on the shop screen.
#==============================================================================

class Window_ShopBuyItems < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 304, 304)
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  # * Get Item
  #--------------------------------------------------------------------------
  def item
    return @data[self.index]
  end
  #--------------------------------------------------------------------------
  # * Get Item
  #--------------------------------------------------------------------------
  def item2
    return @data2[self.index]
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    @data = []
    @data2 = []
    for i in 0...Shop::OBJETS[$game_system.shop1].size
      @data.push($data_items[Shop::OBJETS[$game_system.shop1][i][0]]) 
      @data2.push(Shop::OBJETS[$game_system.shop1][i][1]) 
    end
  @item_max = @data.size
  create_contents
    for i in 0...@item_max
      draw_item(i)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #    index : item number
  #--------------------------------------------------------------------------
  def draw_item(index)
    item = @data[index]
    item2 =@data2[index]
    number = $game_party.item_number(item)
    enabled = (item2<= $game_party.item_number($data_items[Shop::PIECE]) and number < 99)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    draw_item_name(item, rect.x, rect.y, enabled)
    rect.width -= 4
    self.contents.draw_text(rect, item2, 2)
  end
  #--------------------------------------------------------------------------
  # * Help Text Update
  #--------------------------------------------------------------------------
  def update_help
    @help_window.set_text(item == nil ? "" : item.description)
  end
end



Dernière édition par Skillo le Jeu 27 Aoû 2009 - 1:24, édité 1 fois
Skillo
Skillo
Staffeux retraité

Nombre de messages : 526
Age : 30
Localisation : Rennes
Distinction : J'aime ce gars :P
(by Coco')
Scripteur apprenti, futur Berka !
(par Tretian)
Membre anonyme de la communauté, caché derrière son PC
(???)
super prof de script
[Dudu']
Résident permanent de la Chat Box
[Autoproclamé]
Adepte du XDDD [Yak' Very Happy]
Fanatique hystérique de Raymond le français [Un connu]
Date d'inscription : 19/01/2008

Magasin où l'on utiliser un objet comme monnaie alternative Empty Re: Magasin où l'on utiliser un objet comme monnaie alternative

le Jeu 27 Aoû 2009 - 1:20
2eme partie:
Spoiler:
Code:

#==============================================================================
# ** Window_ShopBuyArmes
#------------------------------------------------------------------------------
#  This window displays buyable goods on the shop screen.
#==============================================================================

class Window_ShopBuyArmes < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 304, 304)
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  # * Get Item
  #--------------------------------------------------------------------------
  def item
    return @data[self.index]
  end
  #--------------------------------------------------------------------------
  # * Get Item
  #--------------------------------------------------------------------------
  def item2
    return @data2[self.index]
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    @data = []
    @data2 = []
    for i in 0...Shop::ARMES[$game_system.shop2].size
      @data.push($data_weapons[Shop::ARMES[$game_system.shop2][i][0]]) 
      @data2.push(Shop::ARMES[$game_system.shop2][i][1]) 
    end
  @item_max = @data.size
  create_contents
    for i in 0...@item_max
      draw_item(i)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #    index : item number
  #--------------------------------------------------------------------------
  def draw_item(index)
    item = @data[index]
    item2 =@data2[index]
    number = $game_party.item_number(item)
    enabled = (item2<= $game_party.item_number($data_items[Shop::PIECE]) and number < 99)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    draw_item_name(item, rect.x, rect.y, enabled)
    rect.width -= 4
    self.contents.draw_text(rect, item2, 2)
  end
  #--------------------------------------------------------------------------
  # * Help Text Update
  #--------------------------------------------------------------------------
  def update_help
    @help_window.set_text(item == nil ? "" : item.description)
  end
end


#==============================================================================
# ** Window_ShopBuyArmures
#------------------------------------------------------------------------------
#  This window displays buyable goods on the shop screen.
#==============================================================================

class Window_ShopBuyArmures < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 304, 304)
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  # * Get Item
  #--------------------------------------------------------------------------
  def item
    return @data[self.index]
  end
  #--------------------------------------------------------------------------
  # * Get Item
  #--------------------------------------------------------------------------
  def item2
    return @data2[self.index]
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    @data = []
    @data2 = []
    for i in 0...Shop::ARMURES[$game_system.shop3].size
      @data.push($data_armors[Shop::ARMURES[$game_system.shop3][i][0]]) 
      @data2.push(Shop::ARMURES[$game_system.shop3][i][1]) 
    end
  @item_max = @data.size
  create_contents
    for i in 0...@item_max
      draw_item(i)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #    index : item number
  #--------------------------------------------------------------------------
  def draw_item(index)
    item = @data[index]
    item2 =@data2[index]
    number = $game_party.item_number(item)
    enabled = (item2<= $game_party.item_number($data_items[Shop::PIECE]) and number < 99)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    draw_item_name(item, rect.x, rect.y, enabled)
    rect.width -= 4
    self.contents.draw_text(rect, item2, 2)
  end
  #--------------------------------------------------------------------------
  # * Help Text Update
  #--------------------------------------------------------------------------
  def update_help
    @help_window.set_text(item == nil ? "" : item.description)
  end
end
#==============================================================================
# ** Window_ShopNumber
#------------------------------------------------------------------------------
#  This window is for inputting quantity of items to buy or sell on the
# shop screen.
#==============================================================================

class Window_ShopNumber2 < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 304, 304)
    @item = nil
    @max = 1
    @price = 0
    @number = 1
  end
  #--------------------------------------------------------------------------
  # * Set Items, Max Quantity, and Price
  #--------------------------------------------------------------------------
  def set(item, max, price)
    @item = item
    @max = max
    @price = price
    @number = 1
    refresh
  end
  #--------------------------------------------------------------------------
  # * Set Inputted Quantity
  #--------------------------------------------------------------------------
  def number
    return @number
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    y = 96
    self.contents.clear
    draw_item_name(@item, 0, y)
    self.contents.font.color = normal_color
    self.contents.draw_text(212, y, 20, WLH, "×")
    self.contents.draw_text(248, y, 20, WLH, @number, 2)
    self.cursor_rect.set(244, y, 28, WLH)
    draw_value(@price * @number, 4, y + WLH * 2, 264)
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    if self.active
      last_number = @number
      if Input.repeat?(Input::RIGHT) and @number < @max
        @number += 1
      end
      if Input.repeat?(Input::LEFT) and @number > 1
        @number -= 1
      end
      if Input.repeat?(Input::UP) and @number < @max
        @number = [@number + 10, @max].min
      end
      if Input.repeat?(Input::DOWN) and @number > 1
        @number = [@number - 10, 1].max
      end
      if @number != last_number
        Sound.play_cursor
        refresh
      end
    end
  end
end


Dernière édition par Skillo le Jeu 27 Aoû 2009 - 1:26, édité 1 fois
Skillo
Skillo
Staffeux retraité

Nombre de messages : 526
Age : 30
Localisation : Rennes
Distinction : J'aime ce gars :P
(by Coco')
Scripteur apprenti, futur Berka !
(par Tretian)
Membre anonyme de la communauté, caché derrière son PC
(???)
super prof de script
[Dudu']
Résident permanent de la Chat Box
[Autoproclamé]
Adepte du XDDD [Yak' Very Happy]
Fanatique hystérique de Raymond le français [Un connu]
Date d'inscription : 19/01/2008

Magasin où l'on utiliser un objet comme monnaie alternative Empty Re: Magasin où l'on utiliser un objet comme monnaie alternative

le Jeu 27 Aoû 2009 - 1:20
Et pour finir.

3eme partie:
Spoiler:
Code:

#==============================================================================
# ** Scene_Shop
#------------------------------------------------------------------------------
#  This class performs shop screen processing.
#==============================================================================

class Scene_Shop2 < Scene_Base
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    super
    create_menu_background
    create_command_window
    create_command_window2
    @command2_window.active = false
    @command2_window.visible = false
    @help_window = Window_Help.new
    @gold_window = Window_Piece.new(340, 56)
    @dummy_window = Window_Base.new(0, 112, 544, 304)
    @buy_window = Window_ShopBuyItems.new(240, 112)
    @buy2_window = Window_ShopBuyArmes.new(240, 112)
    @buy3_window = Window_ShopBuyArmures.new(240, 112)
    @buy_window.active = false
    @buy_window.visible = false
    @buy_window.help_window = @help_window
    @buy2_window.active = false
    @buy2_window.visible = false
    @buy2_window.help_window = @help_window
    @buy3_window.active = false
    @buy3_window.visible = false
    @buy3_window.help_window = @help_window
    @number_window = Window_ShopNumber2.new(240, 112)
    @number_window.active = false
    @number_window.visible = false
    @status_window = Window_ShopStatus.new(0, 112)
    @status_window.visible = false
  end
  #--------------------------------------------------------------------------
  # * Termination Processing
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_menu_background
    dispose_command_window
    dispose_command_window2
    @help_window.dispose
    @gold_window.dispose
    @dummy_window.dispose
    @buy_window.dispose
    @buy2_window.dispose
    @buy3_window.dispose
    @number_window.dispose
    @status_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    update_menu_background
    @help_window.update
    @command_window.update
    @command2_window.update
    @gold_window.update
    @dummy_window.update
    @buy_window.update
    @buy2_window.update
    @buy3_window.update
    @number_window.update
    @status_window.update
    if @command_window.active
      update_command_selection
    elsif  @command2_window.active
      update_command_selection2
    elsif @buy_window.active
      update_buy_selection
    elsif @buy2_window.active
      update_buy_selection2
    elsif @buy3_window.active
      update_buy_selection3
    elsif @number_window.active
      update_number_input
    end
  end
  #--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_command_window
    s1 = Vocab::ShopBuy
    s2 = Vocab::ShopCancel
    @command_window = Window_Command.new(340, [s1, s2], 2)
    @command_window.y = 56
  end
  #--------------------------------------------------------------------------
  # * Dispose of Command Window
  #--------------------------------------------------------------------------
  def dispose_command_window
    @command_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Update Command Selection
  #--------------------------------------------------------------------------
  def update_command_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      case @command_window.index
      when 0  # buy
        Sound.play_decision
        @command_window.active = false
        @command_window.visible = false
        @dummy_window.visible = true
        @command2_window.active = true
        @command2_window.visible = true
        @command2_window.refresh
      when 1 # Quit
        Sound.play_decision
        $scene = Scene_Map.new
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Create Command Window2
  #--------------------------------------------------------------------------
  def create_command_window2
    s1 = "Objets"
    s2 = "Armes"
    s3= "Armures"
    @command2_window = Window_Command.new(340, [s1, s2, s3], 3)
    @command2_window.y = 56
  end
  #--------------------------------------------------------------------------
  # * Dispose of Command Window2
  #--------------------------------------------------------------------------
  def dispose_command_window2
    @command2_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Update Command Selection2
  #--------------------------------------------------------------------------
  def update_command_selection2
    if Input.trigger?(Input::B)
      Sound.play_decision
        @command2_window.active = false
        @command2_window.visible = false
        @dummy_window.visible = true
        @command_window.active = true
        @command_window.visible = true
        @command_window.refresh
    elsif Input.trigger?(Input::C)
      case @command2_window.index
      when 0  # Objets
        Sound.play_decision
        @command2_window.active = false
        @dummy_window.visible = false
        @buy_window.active = true
        @buy_window.visible = true
        @buy_window.refresh
        @status_window.visible = true
      when 1  # Armes
        Sound.play_decision
        @command2_window.active = false
        @dummy_window.visible = false
        @buy2_window.active = true
        @buy2_window.visible = true
        @buy2_window.refresh
        @status_window.visible = true
        when 2  # Armes
        Sound.play_decision
        @command2_window.active = false
        @dummy_window.visible = false
        @buy3_window.active = true
        @buy3_window.visible = true
        @buy3_window.refresh
        @status_window.visible = true
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Update Buy Item Selection
  #--------------------------------------------------------------------------
  def update_buy_selection
    @status_window.item = @buy_window.item
    if Input.trigger?(Input::B)
      Sound.play_cancel
      @command2_window.active = true
      @dummy_window.visible = true
      @buy_window.active = false
      @buy_window.visible = false
      @status_window.visible = false
      @status_window.item = nil
      @help_window.set_text("")
      return
    end
    if Input.trigger?(Input::C)
      @item = @buy_window.item
      @item2 = @buy_window.item2
      number = $game_party.item_number(@item)
      if @item == nil or @item2 > $game_party.item_number($data_items[Shop::PIECE]) or number == 99
        Sound.play_buzzer
      else
        Sound.play_decision
        max = @item2== 0 ? 99 : $game_party.item_number($data_items[Shop::PIECE]) / @item2
        max = [max, 99 - number].min
        @buy_window.active = false
        @buy_window.visible = false
        @number_window.set(@item, max, @item2)
        @number_window.active = true
        @number_window.visible = true
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Update Buy Armes Selection
  #--------------------------------------------------------------------------
  def update_buy_selection2
    @status_window.item = @buy2_window.item
    if Input.trigger?(Input::B)
      Sound.play_cancel
      @command2_window.active = true
      @dummy_window.visible = true
      @buy2_window.active = false
      @buy2_window.visible = false
      @status_window.visible = false
      @status_window.item = nil
      @help_window.set_text("")
      return
    end
    if Input.trigger?(Input::C)
      @item = @buy2_window.item
      @item2 = @buy2_window.item2
      number = $game_party.item_number(@item)
      if @item == nil or @item2 > $game_party.item_number($data_items[Shop::PIECE]) or number == 99
        Sound.play_buzzer
      else
        Sound.play_decision
        max = @item2== 0 ? 99 : $game_party.item_number($data_items[Shop::PIECE]) / @item2
        max = [max, 99 - number].min
        @buy2_window.active = false
        @buy2_window.visible = false
        @number_window.set(@item, max, @item2)
        @number_window.active = true
        @number_window.visible = true
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Update Buy Armures Selection
  #--------------------------------------------------------------------------
  def update_buy_selection3
    @status_window.item = @buy3_window.item
    if Input.trigger?(Input::B)
      Sound.play_cancel
      @command2_window.active = true
      @dummy_window.visible = true
      @buy3_window.active = false
      @buy3_window.visible = false
      @status_window.visible = false
      @status_window.item = nil
      @help_window.set_text("")
      return
    end
    if Input.trigger?(Input::C)
      @item = @buy3_window.item
      @item2 = @buy3_window.item2
      number = $game_party.item_number(@item)
      if @item == nil or @item2 > $game_party.item_number($data_items[Shop::PIECE]) or number == 99
        Sound.play_buzzer
      else
        Sound.play_decision
        max = @item2== 0 ? 99 : $game_party.item_number($data_items[Shop::PIECE]) / @item2
        max = [max, 99 - number].min
        @buy3_window.active = false
        @buy3_window.visible = false
        @number_window.set(@item, max, @item2)
        @number_window.active = true
        @number_window.visible = true
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Update Number Input
  #--------------------------------------------------------------------------
  def update_number_input
    if Input.trigger?(Input::B)
      cancel_number_input
    elsif Input.trigger?(Input::C)
      decide_number_input
    end
  end
  #--------------------------------------------------------------------------
  # * Cancel Number Input
  #--------------------------------------------------------------------------
  def cancel_number_input
    Sound.play_cancel
    @number_window.active = false
    @number_window.visible = false
    case @command2_window.index
    when 0  # Buy
      @buy_window.active = true
      @buy_window.visible = true
    when 1  # Buy
      @buy2_window.active = true
      @buy2_window.visible = true
    when 2  # Buy
      @buy3_window.active = true
      @buy3_window.visible = true
    end
  end
  #--------------------------------------------------------------------------
  # * Confirm Number Input
  #--------------------------------------------------------------------------
  def decide_number_input
    Sound.play_shop
    @number_window.active = false
    @number_window.visible = false
    case @command2_window.index
    when 0  # Buy
      $game_party.lose_item($data_items[Shop::PIECE],@number_window.number * @item2)
      $game_party.gain_item(@item, @number_window.number)
      @gold_window.refresh
      @buy_window.refresh
      @status_window.refresh
      @buy_window.active = true
      @buy_window.visible = true
      when 1  # Buy
      $game_party.lose_item($data_items[Shop::PIECE],@number_window.number * @item2)
      $game_party.gain_item(@item, @number_window.number)
      @gold_window.refresh
      @buy2_window.refresh
      @status_window.refresh
      @buy2_window.active = true
      @buy2_window.visible = true
      when 2  # Buy
      $game_party.lose_item($data_items[Shop::PIECE],@number_window.number * @item2)
      $game_party.gain_item(@item, @number_window.number)
      @gold_window.refresh
      @buy3_window.refresh
      @status_window.refresh
      @buy3_window.active = true
      @buy3_window.visible = true
    end
  end
end

Voilà et désolé pour le triple post.
Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum