Partagez
Aller en bas
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

-----Menu option plus V2.0----- By Adurna Empty -----Menu option plus V2.0----- By Adurna

le Jeu 11 Mar 2010 - 21:07
Menu Option Plus V 2.0


Auteur : Adurna
Version : 2.0
Date : 11/03/10
Description : Un menu différent de celui d'origine avec plus d'options!
Indications pour l'utilisation : Collez ce script au dessus de Main en le nommant : Scene_Menu.
est ajouté les ressource Sel1,Sel2,Sel3,Sel4 et Sel00 dans Graphics/System
Code:


#=================================================================#
#                      By Adurna                                                        11/03/10                                                              #
#                                          menu option plus version 2.0                                                                                    #
#=================================================================#
module Cache
  def self.menu(filename)
    load_bitmap("Graphics/System/",filename)
  end
end

  $imported = {} if $imported == nil
$imported["AdurnaMenu"] = true
module Adurna
Obj = "Objet"
Comp = "Compétence"
Equip = "Equiper"
Stat = "Statut"
Sov = "Sauvegarder"
Char = "Charger"
Fin = "Quiter"
Or = "Or"
Note = "note"
Location ="Location :"

Icon_Note=1
Icon_Or=147
Icon_Loc=153
Icon_Obj=144
Icon_Comp=128
Icon_Equip=32
Icon_Stat=118
Icon_Sov=176
Icon_Char=177
Icon_Fin=117
end

class Scene_Menu < Scene_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    menu_index : command cursor's initial position
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    super
  create_menu_background
    create_command_window
      @menu_select = Sprite.new
    @menu_select.bitmap = Cache.menu("Sel00")
    @status_window=Window_MenuStatus2.new(220, 58)
    @status_window.opacity = 0
    @location_window = Window_location.new(190, 0)
  #  @location_window.opacity = 0
  @gold = Window_gold.new(0,245)
  #@gold.opacity = 0
    @win_actor =  Window_Vide.new
  #  @win_actor.opacity = 0
  end
  #--------------------------------------------------------------------------
  # * Termination Processing
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_menu_background
    @command_window.dispose
    @location_window.dispose
    @menu_select.dispose
    @status_window.dispose
    @win_actor.dispose
    @gold.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
  update_menu_background
  @menu_select.update
  @win_actor.update
  @gold.update
  @status_window.update
    @command_window.update
    if @command_window.active
      update_command_selection
    elsif @status_window.active
      update_actor_selection
      @win_actor.update
    end
  end
  #--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_command_window
    s1 = [Adurna::Icon_Obj, Adurna::Obj]
    s2 = [Adurna::Icon_Comp, Adurna::Comp]
    s3 = [Adurna::Icon_Equip, Adurna::Equip]
    s4 = [Adurna::Icon_Stat, Adurna::Stat]
    s5 = [Adurna::Icon_Sov, Adurna::Sov]
    s6 = [Adurna::Icon_Char, Adurna::Char]
    s7=  [Adurna::Icon_Fin, Adurna::Fin]
    s8= [Adurna::Icon_Note,Adurna::Note]
    @command_window = Window_IconCommand.new(172, [s1, s2, s3, s4, s5, s6,s7])
    @command_window = Window_IconCommand.new(172, [s1, s2, s3, s4, s5, s6,s8,s7]) if $imported["ASNS"]
    @command_window.index = @menu_index
    #@command_window.opacity = 0
 
    if $game_party.members.size == 0          # If number of party members is 0
      @command_window.draw_item(0, false)
      @command_window.draw_item(1, false)
      @command_window.draw_item(2, false)
      @command_window.draw_item(3, false)
    end
    if $game_system.save_disabled            # If save is forbidden
      @command_window.draw_item(4,false)    # Disable save
    end
    if Dir.glob('Save*.rvdata').size <=0
      @command_window.draw_item(5,false)
    end
  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)
      if $game_party.members.size == 0 and @command_window.index < 4
        Sound.play_buzzer
        return
      elsif $game_system.save_disabled and @command_window.index == 4
        Sound.play_buzzer
        return
      elsif Dir.glob('Save*.rvdata').size <=0 and @command_window.index == 5
        Sound.play_buzzer
        return
      end
      Sound.play_decision
      if $imported["ASNS"]
      case @command_window.index
      when 0      # Item
        $scene = Scene_Item.new
      when 1,2,3  # Skill, equipment, status
        start_actor_selection
      when 4      # Save
        $scene = Scene_File.new(true, false, false)
        when 5
          $scene = Scene_File.new(false, false, false)
          when 6
        $scene = Scene_MenuNote.new
      when 7      # End Game
        $scene = Scene_End.new
        end
      else
        case @command_window.index
      when 0      # Item
        $scene = Scene_Item.new
      when 1,2,3  # Skill, equipment, status
        start_actor_selection
      when 4      # Save
        $scene = Scene_File.new(true, false, false)
        when 5
          $scene = Scene_File.new(false, false, false)
      when 6      # End Game
        $scene = Scene_End.new
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Start Actor Selection
  #--------------------------------------------------------------------------
  def start_actor_selection
    @command_window.active = false
    @status_window.active = true
    if $game_party.last_actor_index < @status_window.item_max
      @status_window.index = $game_party.last_actor_index
    else
      @status_window.index = 0
    end
  end
  #--------------------------------------------------------------------------
  # * End Actor Selection
  #--------------------------------------------------------------------------
  def end_actor_selection
    @command_window.active = true
    @status_window.active = false
    @status_window.index = -1
  end
  #--------------------------------------------------------------------------
  # * Update Actor Selection
  #--------------------------------------------------------------------------
def update_actor_selection
    @status_window.update
  case @status_window.index
  when 0
    @win_actor.dispose
    @win_actor =  Window_Actor1.new(0)
    when 1
      @win_actor.dispose
      @win_actor =  Window_Actor1.new(1)
    when 2
      @win_actor.dispose
      @win_actor =  Window_Actor1.new(2)
    when 3
      @win_actor.dispose
      @win_actor =  Window_Actor1.new(3)
    end
  @status_window.update
  case @status_window.index
    when 0
    @menu_select.bitmap = Cache.menu("Sel1")
    when 1
    @menu_select.bitmap = Cache.menu("Sel2")
    when 2
    @menu_select.bitmap = Cache.menu("Sel3")
    when 3
      @menu_select.bitmap = Cache.menu("Sel4")
    end
    @menu_select.z = 10

  #@win_actor.opacity = 0
    if Input.trigger?(Input::B)
      @win_actor.dispose
      @win_actor =  Window_Vide.new
      @menu_select.bitmap = Cache.menu("Sel00")
      Sound.play_cancel
      end_actor_selection
    elsif Input.trigger?(Input::C)
      @win_actor = Window_Vide.new
      $game_party.last_actor_index = @status_window.index
      Sound.play_decision
      case @command_window.index
      when 1  # skill
        $scene = Scene_Skill.new(@status_window.index)
      when 2  # equipment
        $scene = Scene_Equip.new(@status_window.index)
      when 3  # status
        $scene = Scene_Status.new(@status_window.index)
      end
    end
  end
end





class Window_location < Window_Base
  def initialize(x, y)
    super(x, y, 300, WLH+28)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  def refresh
    self.contents.clear
    $maps = load_data("Data/MapInfos.rvdata")
    @map_id = $game_map.map_id
    @map_name = $maps[@map_id].name
    self.contents.font.color = system_color
    self.contents.draw_text(35, -8, 280, 32, Adurna::Location)
    self.contents.font.color = normal_color
    self.contents.draw_text(0, -8, 360, 32, @map_name, 1)
    draw_icon(Adurna::Icon_Loc,8, -4, true)
  end
end

class Window_IconCommand < Window_Selectable
  def initialize(width, commands, column_max = 1, row_max = 0, spacing = 20)
    if row_max == 0
      row_max = (commands.size + column_max - 1) / column_max
    end
    super(0, 0, width, row_max * WLH + 32, spacing)
    @commands = commands
    @item_max = commands.size
    @column_max = column_max
    refresh
    self.index = 0
  end
 
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i)
    end
  end

  def draw_item(index,enabled = true)
    rect = item_rect(index)
    rect.x += 4 + 24
    rect.width -= 8
    self.contents.clear_rect(rect)
    self.contents.font.color = normal_color
    self.contents.font.color.alpha = enabled ? 255 : 128
    draw_icon(@commands[index][0], rect.x - 24, rect.y)
    self.contents.draw_text(rect, @commands[index][1])
  end
  def draw_item_name(index, x, y,enabled = true)
    draw_icon(index, x, y, enabled)
  end
end

class Window_Vide< Window_Base
  def initialize
    super(-544,-416,544,416)
    self.contents = Bitmap.new(width, height)
  end
  def refresh
    self.contents.clear
    end
  end

class Window_Actor1< Window_Base
  def initialize(actor_id)
    super(135,286, 375, 125)
    self.contents = Bitmap.new(width - 32, height - 32)
    @actor = $game_party.members[actor_id]
    refresh
  end
  def refresh
    self.contents.clear
    if @actor != -1
    draw_actor_face(@actor, 0, 0)
    draw_actor_name(@actor, 100, 10)
    draw_actor_class(@actor, 100, 35)
      draw_actor_level(@actor, 100, 60)
      draw_actor_state(@actor, 200, 60) 
      draw_actor_hp(@actor,  200, 10)
      draw_actor_mp(@actor, 200, 35) 
      end
    end
end

  class Window_MenuStatus2< Window_Selectable
  def initialize(x, y)
    super(x, y, 220, 220)
    self.contents.font.bold = true
    self.contents.font.shadow = true
    self.contents.font.size = 16
    refresh
    self.active = false
    self.index = -1
  end
  def refresh
    self.contents.clear
    @item_max = $game_party.members.size
    for actor in $game_party.members
      if actor.index == 0
      draw_actor_graphic(actor, 25, 110)
      elsif actor.index == 1
      draw_actor_graphic(actor, 95, 30)
      elsif actor.index == 2
      draw_actor_graphic(actor, 165, 110)
      elsif actor.index == 3
      draw_actor_graphic(actor,95,  190)
      end
    end
  end
  def update_cursor
  end
end

class Window_gold < Window_Base
  def initialize(x, y)
    super(x, y, 130, (WLH*2) + 32)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  def refresh
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(-15, -4, 128, 32, Adurna::Or,1)
    self.contents.font.color = normal_color
    self.contents.draw_text(-25, -10+WLH, 140, 42, $game_party.gold, 1)
    draw_icon(Adurna::Icon_Or,0, 0, true)
  end
end



class Scene_End < Scene_Base
def return_scene
    if $imported["ASNS"]
    $scene = Scene_Menu.new(7)
  else
    $scene = Scene_Menu.new(6)
    end
  end
  end

ressource:
Sel1
Spoiler:
-----Menu option plus V2.0----- By Adurna Sel110
Sel2
Spoiler:

-----Menu option plus V2.0----- By Adurna Sel210
Sel3
Spoiler:

-----Menu option plus V2.0----- By Adurna Sel310
Sel4
Spoiler:

-----Menu option plus V2.0----- By Adurna Sel410
Sel00
Spoiler:

-----Menu option plus V2.0----- By Adurna Sel0010
screen:
-----Menu option plus V2.0----- By Adurna Captur15

Et un grand merci à Mist' pour m'avoir aidé à déplanté mon script^^


Dernière édition par Adurna le Lun 12 Juil 2010 - 22:49, édité 4 fois
ZangtherOld
ZangtherOld
Membre

Nombre de messages : 1711
Date d'inscription : 07/08/2009

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Jeu 11 Mar 2010 - 21:21
C'est sympathique, merci du partage ^^
Naël
Naël
Membre

Nombre de messages : 558
Age : 22
Localisation : n.f. : repérage, dans l'espace ou dans le temps.
Distinction : aucune
Date d'inscription : 07/02/2010

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Jeu 11 Mar 2010 - 22:05
Joli !
Ca rend le jeu plus agréable je trouve !
Merci beaucoup !
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Jeu 11 Mar 2010 - 22:08
de rien de rien mais pour info ce n'est qu'un projeté de la version final qui sera bien plus....euh graphique^^

ps: si vous avez des bugs ou des idée pour l'amélioré MP moi!!!
Coco'
Coco'
Staffeux retraité

Nombre de messages : 6577
Age : 26
Localisation : Nord/Douai
Distinction : EL DICTATOR COCO'
Coco-Dieu en puissance

-----Menu option plus V2.0----- By Adurna Magikarpe Grand gourou suppléant de la secte des MAGIKARP
Leader charismatique des 2beStaffieux

N°1 du forum
Président, vice-présidents et membres honoraires de la cour suprême du forum
Président de l'association des grosses distinctions CMB
Date d'inscription : 02/07/2008
http://www.rpgmakervx-fr.com

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Ven 12 Mar 2010 - 0:36
Adurna, le prochain grand scripteur de la commu'? A voir Wink

Merci du partage, c'est bien sympathique ton menu :P
Berka
Berka
Administrateur

Nombre de messages : 1832
Age : 28
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Ven 12 Mar 2010 - 1:57
Code:
for actor in $game_party.members
      if actor.index == 0
      draw_actor_graphic(actor, 25, 110)
      elsif actor.index == 1
      draw_actor_graphic(actor, 95, 30)
      elsif actor.index == 2
      draw_actor_graphic(actor, 165, 110)
      elsif actor.index == 3
      draw_actor_graphic(actor,95,  190) 
      end
    end

N'hésite pas à mettre des case/when. C'est plus propre.

Ceci:
Code:
def update_actor_selection
    @status_window.update
  case @status_window.index
  when 0
    @win_actor.dispose
    @win_actor =  Window_Actor1.new(0)
    when 1
      @win_actor.dispose
      @win_actor =  Window_Actor1.new(1)
    when 2
      @win_actor.dispose
      @win_actor =  Window_Actor1.new(2)
    when 3
      @win_actor.dispose
      @win_actor =  Window_Actor1.new(3)
    end
  @status_window.update
  case @status_window.index
    when 0
    @menu_select.bitmap = Cache.menu("Sel1")
    when 1
    @menu_select.bitmap = Cache.menu("Sel2")
    when 2
    @menu_select.bitmap = Cache.menu("Sel3")
    when 3
      @menu_select.bitmap = Cache.menu("Sel4")
    end

est la meme chose que
Code:
def update_actor_selection
@win_actor.dispose
@win_actor =  Window_Actor1.new(@status_window.index)
@status_window.update
@menu_select.bitmap = Cache.menu("Sel#{@status_window.index+1}")

Pour tes réglages:
Code:
Icon_Or=147
Icon_Loc=153
Icon_Obj=144
Icon_Comp=128
Icon_Equip=32
Icon_Stat=118
Icon_Sov=176
Icon_Char=177
Icon_Fin=117

faudrait mieux utiliser un hash

Code:
Icon = {"Or"=>147, "Loc"=>153...}
plus précis et moins gourmand. En plus, on peut réassigner les valeurs.

Enfin, pense à utiliser des aliases. C'est plus propre, rapide et compatible.

Mais bon script quand meme Wink
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Ven 12 Mar 2010 - 19:37
merci de tes conseil Berka mais comme j'apprends à scripter "sur le tas" les truc comme les aliases et las hash je sais pas les manipuler!!!
alors si quelqu'un pouvais me l'expliqué cela m'arrangerait^^

euh sinon
@coco' a écrit:
Adurna, le prochain grand scripteur de la commu'
ça je doute^^
Berka
Berka
Administrateur

Nombre de messages : 1832
Age : 28
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Ven 12 Mar 2010 - 19:47
Code:
Adurna, le prochain grand scripteur de la commu'
Coco n'a pas tord.
Ce que tu as fait est très bien. D'ailleurs je ne savais pas que c'était ton premier script. C'est vraiment super encourageant. Petit à petit, tu vas trouver comment faire plus et plus simple.

Si tu as des questions: Go -> ChatBox
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Ven 12 Mar 2010 - 19:51
euh s'est plus ou moins mon 1er script enfin la version 1.0 était mon 1er mais depuis j'ai fait 2-3 menu pour des demande et j'ai fait 2 p'tit system un peut bateau^^
Djidane
Djidane
Membre

Nombre de messages : 1444
Age : 26
Localisation : Paris
Distinction : Héritier d'Alexdream (mais on l'aime quand même).
Lèche cul professionnel
et il aime ça!!!
Date d'inscription : 30/12/2008

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Sam 13 Mar 2010 - 0:19
Jolie menu , malgrès que ce sois une version moiun bien faite du MOG menu . C'est du beau boulot .

Merci du partage de ton travail Wink
Jess
Jess
Staffeux retraité

Nombre de messages : 855
Age : 28
Localisation : Ma drums ou mon ordi !
Distinction : Dieu de Kipatord


Date d'inscription : 04/05/2008

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Sam 13 Mar 2010 - 10:56
Ouais vraiment c'est du bon boulot Adurna ! affraid

Bonne continuation dans le script, t'es un bon. Wink
Naël
Naël
Membre

Nombre de messages : 558
Age : 22
Localisation : n.f. : repérage, dans l'espace ou dans le temps.
Distinction : aucune
Date d'inscription : 07/02/2010

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Sam 13 Mar 2010 - 12:19
Graphics/Menu ?

Je trouve pas...
ZangtherOld
ZangtherOld
Membre

Nombre de messages : 1711
Date d'inscription : 07/08/2009

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Sam 13 Mar 2010 - 12:27
Bah justement, il faut le créer ><
Naël
Naël
Membre

Nombre de messages : 558
Age : 22
Localisation : n.f. : repérage, dans l'espace ou dans le temps.
Distinction : aucune
Date d'inscription : 07/02/2010

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Sam 13 Mar 2010 - 12:31
Oui, c'est bien ce que je pensais...
Merci !

( par contre, mes personnages n'apparaissent pas dans un rectangle bleu, petit bug ? )
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Sam 13 Mar 2010 - 13:26
non s'est pas un bug s'est volontaire je l'ai modifier pour que l'on vois mieux la sélection
sinon il y à un bug on ne peut pas utilisé 3 perso pour l'instant on peut avec 1,2 ou 4 mais pas 3
je sais pas d'où sa viens et pour l'instant malgré l'aide précieuse de mist' je ne trouve pas!!!!

@Djidane a écrit:
malgrès que ce sois une version moins bien faite du MOG menu
il n'a rien à voire avec le mog menu à la base, seul la sélection des perso se fait de la même manière^^
Naël
Naël
Membre

Nombre de messages : 558
Age : 22
Localisation : n.f. : repérage, dans l'espace ou dans le temps.
Distinction : aucune
Date d'inscription : 07/02/2010

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Dim 20 Juin 2010 - 7:24
Je repère un petit problème...Quand on veut utiliser un objet sur un personnage, on ne voit pas lequel on choisit...
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Dim 20 Juin 2010 - 11:46
à oui en éfait bon je vais éssayer de corriger le bug^^
édit:
voila s'est fait
Spoiler:

Code:

#=================================================================#
#                      By Adurna                                                        11/03/10                                                              #
#                                          menu option plus version 2.0                                                                                    #
#=================================================================#
module Cache
  def self.menu(filename)
    load_bitmap("Graphics/System/",filename)
  end
end


module Adurna
Obj = "Objet"
Comp = "Compétence"
Equip = "Equiper"
Stat = "Statut"
Sov = "Sauvegarder"
Char = "Charger"
Fin = "Quiter"
Or = "Or"
Location ="Location :"
Affiche_Icon=1
Icon_Or=147
Icon_Loc=153
Icon_Obj=144
Icon_Comp=128
Icon_Equip=32
Icon_Stat=118
Icon_Sov=176
Icon_Char=177
Icon_Fin=117
end

class Scene_Menu < Scene_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    menu_index : command cursor's initial position
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    super
  create_menu_background
    create_command_window
      @menu_select = Sprite.new
    @menu_select.bitmap = Cache.menu("Sel00")
    @status_window=Window_MenuStatus2.new(220, 58)
    @status_window.opacity = 0
    @location_window = Window_location.new(190, 0)
  #  @location_window.opacity = 0
  @gold = Window_gold.new(0,245)
  #@gold.opacity = 0
    @win_actor =  Window_Vide.new
  #  @win_actor.opacity = 0
  end
  #--------------------------------------------------------------------------
  # * Termination Processing
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_menu_background
    @command_window.dispose
    @location_window.dispose
    @menu_select.dispose
    @status_window.dispose
    @win_actor.dispose
    @gold.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
  update_menu_background
  @menu_select.update
  @win_actor.update
  @gold.update
  @status_window.update
    @command_window.update
    if @command_window.active
      update_command_selection
    elsif @status_window.active
      update_actor_selection
      @win_actor.update
    end
  end
  #--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_command_window
    s1 = [Adurna::Icon_Obj, Adurna::Obj]
    s2 = [Adurna::Icon_Comp, Adurna::Comp]
    s3 = [Adurna::Icon_Equip, Adurna::Equip]
    s4 = [Adurna::Icon_Stat, Adurna::Stat]
    s5 = [Adurna::Icon_Sov, Adurna::Sov]
    s6 = [Adurna::Icon_Char, Adurna::Char]
    s7=  [Adurna::Icon_Fin, Adurna::Fin]
    @command_window = Window_IconCommand.new(172, [s1, s2, s3, s4, s5, s6,s7])
    @command_window.index = @menu_index
    #@command_window.opacity = 0
 
    if $game_party.members.size == 0          # If number of party members is 0
      @command_window.draw_item(0, false)
      @command_window.draw_item(1, false)
      @command_window.draw_item(2, false)
      @command_window.draw_item(3, false)
    end
    if $game_system.save_disabled            # If save is forbidden
      @command_window.draw_item(4,false)    # Disable save
    end
    if Dir.glob('Save*.rvdata').size <=0
      @command_window.draw_item(5,false)
    end
  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)
      if $game_party.members.size == 0 and @command_window.index < 4
        Sound.play_buzzer
        return
      elsif $game_system.save_disabled and @command_window.index == 4
        Sound.play_buzzer
        return
      elsif Dir.glob('Save*.rvdata').size <=0 and @command_window.index == 5
        Sound.play_buzzer
        return
      end
      Sound.play_decision
      case @command_window.index
      when 0      # Item
        $scene = Scene_Item.new
      when 1,2,3  # Skill, equipment, status
        start_actor_selection
      when 4      # Save
        $scene = Scene_File.new(true, false, false)
        when 5
          $scene = Scene_File.new(false, false, false)
      when 6      # End Game
        $scene = Scene_End.new
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Start Actor Selection
  #--------------------------------------------------------------------------
  def start_actor_selection
    @command_window.active = false
    @status_window.active = true
    if $game_party.last_actor_index < @status_window.item_max
      @status_window.index = $game_party.last_actor_index
    else
      @status_window.index = 0
    end
  end
  #--------------------------------------------------------------------------
  # * End Actor Selection
  #--------------------------------------------------------------------------
  def end_actor_selection
    @command_window.active = true
    @status_window.active = false
    @status_window.index = -1
  end
  #--------------------------------------------------------------------------
  # * Update Actor Selection
  #--------------------------------------------------------------------------
def update_actor_selection
    @status_window.update
  case @status_window.index
  when 0
    @win_actor.dispose
    @win_actor =  Window_Actor1.new(0)
    when 1
      @win_actor.dispose
      @win_actor =  Window_Actor1.new(1)
    when 2
      @win_actor.dispose
      @win_actor =  Window_Actor1.new(2)
    when 3
      @win_actor.dispose
      @win_actor =  Window_Actor1.new(3)
    end
  @status_window.update
  case @status_window.index
    when 0
    @menu_select.bitmap = Cache.menu("Sel1")
    when 1
    @menu_select.bitmap = Cache.menu("Sel2")
    when 2
    @menu_select.bitmap = Cache.menu("Sel3")
    when 3
      @menu_select.bitmap = Cache.menu("Sel4")
    end
    @menu_select.z = 10

  #@win_actor.opacity = 0
    if Input.trigger?(Input::B)
      @win_actor.dispose
      @win_actor =  Window_Vide.new
      @menu_select.bitmap = Cache.menu("Sel00")
      Sound.play_cancel
      end_actor_selection
    elsif Input.trigger?(Input::C)
      @win_actor = Window_Vide.new
      $game_party.last_actor_index = @status_window.index
      Sound.play_decision
      case @command_window.index
      when 1  # skill
        $scene = Scene_Skill.new(@status_window.index)
      when 2  # equipment
        $scene = Scene_Equip.new(@status_window.index)
      when 3  # status
        $scene = Scene_Status.new(@status_window.index)
      end
    end
  end
end





class Window_location < Window_Base
  def initialize(x, y)
    super(x, y, 300, WLH+28)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  def refresh
    self.contents.clear
    $maps = load_data("Data/MapInfos.rvdata")
    @map_id = $game_map.map_id
    @map_name = $maps[@map_id].name
    self.contents.font.color = system_color
    self.contents.draw_text(35, -8, 280, 32, Adurna::Location)
    self.contents.font.color = normal_color
    self.contents.draw_text(0, -8, 360, 32, @map_name, 1)
    draw_icon(Adurna::Icon_Loc,8, -4, true)
  end
end

class Window_IconCommand < Window_Selectable
  def initialize(width, commands, column_max = 1, row_max = 7, spacing = 20)
    super(0, 0, width, row_max * WLH + 32, spacing)
    @commands = commands
    @item_max = commands.size
    @column_max = column_max
    refresh
    self.index = 0
  end
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i)
    end
  end

  def draw_item(index,enabled = true)
    rect = item_rect(index)
    rect.x += 4 + 24
    rect.width -= 8
    self.contents.clear_rect(rect)
    self.contents.font.color = normal_color
    self.contents.font.color.alpha = enabled ? 255 : 128
    draw_icon(@commands[index][0], rect.x - 24, rect.y)
    self.contents.draw_text(rect, @commands[index][1])
  end
  def draw_item_name(index, x, y,enabled = true)
    draw_icon(index, x, y, enabled)
  end
end

class Window_Vide< Window_Base
  def initialize
    super(-544,-416,544,416)
    self.contents = Bitmap.new(width, height)
  end
  def refresh
    self.contents.clear
    end
  end

class Window_Actor1< Window_Base
  def initialize(actor_id)
    super(135,286, 375, 125)
    self.contents = Bitmap.new(width - 32, height - 32)
    @actor = $game_party.members[actor_id]
    refresh
  end
  def refresh
    self.contents.clear
    if @actor != -1
    draw_actor_face(@actor, 0, 0)
    draw_actor_name(@actor, 100, 10)
    draw_actor_class(@actor, 100, 35)
      draw_actor_level(@actor, 100, 60) 
      draw_actor_state(@actor, 200, 60)   
      draw_actor_hp(@actor,  200, 10)
      draw_actor_mp(@actor, 200, 35)   
      end
    end
end

  class Window_MenuStatus2< Window_Selectable
  def initialize(x, y)
    super(x, y, 220, 220)
    self.contents.font.bold = true
    self.contents.font.shadow = true
    self.contents.font.size = 16
    refresh
    self.active = false
    self.index = -1
  end
  def refresh
    self.contents.clear
    @item_max = $game_party.members.size
    for actor in $game_party.members
      if actor.index == 0
      draw_actor_graphic(actor, 25, 110)
      elsif actor.index == 1
      draw_actor_graphic(actor, 95, 30)
      elsif actor.index == 2
      draw_actor_graphic(actor, 165, 110)
      elsif actor.index == 3
      draw_actor_graphic(actor,95,  190)
      end
    end
  end
  def update_cursor
  end
end

class Window_gold < Window_Base
  def initialize(x, y)
    super(x, y, 130, (WLH*2) + 32)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  def refresh
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(-15, -4, 128, 32, Adurna::Or,1)
    self.contents.font.color = normal_color
    self.contents.draw_text(-25, -10+WLH, 140, 42, $game_party.gold, 1)
    draw_icon(Adurna::Icon_Or,0, 0, true)
  end
end
Naël
Naël
Membre

Nombre de messages : 558
Age : 22
Localisation : n.f. : repérage, dans l'espace ou dans le temps.
Distinction : aucune
Date d'inscription : 07/02/2010

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Mar 22 Juin 2010 - 16:32
Merci Adurna !

PS : Faut maintenant mettre les images dans le dossier system, c'est ça ?
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Mar 22 Juin 2010 - 18:36
ah euh oui j'ai modifier pour mes test
et j'ai oublier de remettre mais s'est mieux comme ça alors oui dans System^^
Naël
Naël
Membre

Nombre de messages : 558
Age : 22
Localisation : n.f. : repérage, dans l'espace ou dans le temps.
Distinction : aucune
Date d'inscription : 07/02/2010

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Jeu 24 Juin 2010 - 10:06
Petit truc à modifier : tu as mis "Location" au lieu de localisation...
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Jeu 24 Juin 2010 - 19:51
bah tu peut le faire toi même avec la configuration^^
Naël
Naël
Membre

Nombre de messages : 558
Age : 22
Localisation : n.f. : repérage, dans l'espace ou dans le temps.
Distinction : aucune
Date d'inscription : 07/02/2010

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Jeu 24 Juin 2010 - 20:03
Je l'ai fait, mais je te préviens quand même ^^
Dudu'
Dudu'
Staffeux retraité

Nombre de messages : 2060
Age : 28
Distinction : Apprenti KGB-boy en avenir
[Coco' Smile]
Hamsterphile de service ^^
[Balby' le Fake]
Grand prof de la MA
[Skillo]
Ce grand programmateur, mon coeur, ma vie ! [Hamu']
Date d'inscription : 22/06/2009

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Lun 12 Juil 2010 - 22:55
voila ptite maj:
correction de quelque bugs
et un ptit bonus pour ce qui utilise mon note system^^ ( il faut le mettre à jours aussi d'ailleurs)
Black'
Black'
Membre

Nombre de messages : 351
Localisation : Far, far away
Distinction : aucune
Date d'inscription : 19/04/2010

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Jeu 29 Juil 2010 - 15:37
Merci du partage !!
Mais je remarque que dans ton menu, il y a une petite touche à la MOGHUNTER, non ?
(Je parle du pavé en-dessous du héros)
Loginer
Loginer
Membre

Nombre de messages : 19
Age : 23
Localisation : Bas... Sur RPG Maker voyons!
Distinction : Inscrit le 10/10/10. o/
[Kojy' -----Menu option plus V2.0----- By Adurna 522164]
Date d'inscription : 10/10/2010

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

le Ven 24 Déc 2010 - 18:43
Désoler de remonter ce topic mais j'ai un problème avec le script. Quand je fais "Charger" dans le jeu, et que j'annule avec "Echap" et bien cela me ramène à l'écran titre alors que je suis en plein jeu.

Merci d'avance pour vos réponses!

Edit' d'Elisa' : fais attention aux nécroposts s'il te plaît, il y a la section "Demandes de scripts / Rapports de bugs" pour poser ce genre de questions ^^"
Contenu sponsorisé

-----Menu option plus V2.0----- By Adurna Empty Re: -----Menu option plus V2.0----- By Adurna

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum