RPG Creator : créez votre MMORPG ou RPG sans aucune connaissance en programmation


Disponible le 4 Juin !




- Jouez à votre jeu sur tablettes tactiles, Smartphones et navigateurs Web
- Personnalisez vos menus
- Dessinez facilement et rapidement vos cartes
- Créez des actions pour le combat A-RPG


www.rpgcreator.net


Heures au format UTC + 1 heure [ Heure d’été ]


Règles du forum


Consultez la liste des Scripts : cliquez ici



Publier un nouveau sujet Répondre au sujet  [ 3 messages ] 
Auteur Message
 Sujet du message: Rajouter des icones dans les listes des menus
MessagePublié: 16 Juil 2008, 20:48 
Membre VIP
Membre VIP
Avatar de l’utilisateur

Inscrit le: 14 Avr 2007, 00:00
Messages: 1738
Localisation: ENS Rennes
Niveau RPG Maker: +∞
Point(s) Fort(s): Ruby
Sexe: Masculin
Points d'aide: 60/60

Créations :

Voir ses créations

Rajouter des icones dans les listes des menus
Auteur : Darkleo


Cet utilitaire sert uniquement dans les scenes de menus, où l'on trouve des listes de choix. (exemple : Scene_Title, Scene_Menu, etc...) Pour les scripteurs, dans tout fenêtre de classe Window_Command.
Il permet de rajouter des icones aux différents choix de la liste.

La manipulation est expliquée dans l'entête.
Notez que vous pouvez fixer une taille maximum à la liste !

Code: Tout sélectionner
#====================================================================
# ■ Window_Command_Icon (Utilitaire)
#====================================================================
# Auteur : Darkleo
#--------------------------------------------------
# Permet de rajouter des icones dans des listes de choix en script
# Rechercher les lignes de ce type : (tiré de Scene_Title, ligne 40)
#   @command_window = Window_Command.new(192, [s1, s2, s3])
# Et modifiez les ainsi : (ajoutez entre crochets les noms des icones entre guillemets)
#   @command_window = Window_Command_Icon.new(192, [s1, s2, s3],
#        ["001-Weapon01" ,"002-Weapon02" ,"001-Weapon01"])
# (vous pouvez mettre la ligne en deux lignes, dans ce cas la coupez après la virgule)
# Laissez vide les guillemets pour ne pas utiliser d'icone
#
# Vous pouvez remplacez la dernière parenthèse ceci : (avec la virgule !)
#   , 2)
# Cela permettra de fixer une taille maximum à la liste
#====================================================================
class Window_Command_Icon < Window_Selectable
  #--------------------------------------------------------------------------
  def initialize(width, commands, icons, max = commands.size)
    super(0, 0, width, ([commands.size, max].min + 1) * 32)
    @item_max = commands.size
    @commands = commands
    @icons = icons
    self.contents = Bitmap.new(width - 32, @item_max * 32)
    self.contents.font.name = $fontface
    self.contents.font.size = $fontsize
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i, normal_color)
    end
  end
  #--------------------------------------------------------------------------
  def draw_item(index, color)
    self.contents.font.color = color
    icon_bitmap = RPG::Cache.icon(@icons[index])
    src_rect = Rect.new(0, 0, 24, 24)
    self.contents.blt(4 , (32 * index) + 4, icon_bitmap, src_rect)
    rect = Rect.new(4 + 28, 32 * index, self.contents.width - 8 - 28, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    self.contents.draw_text(rect, @commands[index])
  end
  #--------------------------------------------------------------------------
  def disable_item(index)
    draw_item(index, disabled_color)
  end
  #--------------------------------------------------------------------------
end
#====================================================================


un screen enfin (en utilisant l'exemple) :

Image

Enjoy !

_________________
Image
Projets
> ORAGE (Alternative 2D library) (#=> voir sur Github)
> &Co (#=> http://darkleo.alwaysdata.net/)


Haut
 Profil  
 
 Sujet du message: Re: Rajouter des icones dans les listes des menus
MessagePublié: 06 Juin 2009, 15:59 
Artisan (Nv 2)

Inscrit le: 14 Nov 2007, 01:00
Messages: 127
Points d'aide: 0/60

Créations :

Voir ses créations

Bonjour,
Ce script marche-t-il avec VX ?
Merci.


Haut
 Profil  
 
 Sujet du message: Re: Rajouter des icones dans les listes des menus
MessagePublié: 06 Juin 2009, 19:23 
Membre VIP
Membre VIP
Avatar de l’utilisateur

Inscrit le: 14 Avr 2007, 00:00
Messages: 1738
Localisation: ENS Rennes
Niveau RPG Maker: +∞
Point(s) Fort(s): Ruby
Sexe: Masculin
Points d'aide: 60/60

Créations :

Voir ses créations

Le plus simple avant de poser des questions stupides, c'est d'essayer.
La réponse est non, il n'est pas compatible VX.

Mais comme je suis d'un naturel sympa, je l'ai réécris pour VX.
Code: Tout sélectionner
#====================================================================
# ■ Window_Command_Icon (Utilitaire)
#====================================================================
# Auteur : Darkleo
# Version VX
#--------------------------------------------------
# Permet de rajouter des icones dans des listes de choix en script
# Rechercher les lignes de ce type : (tiré de Scene_Title, ligne 154)
#   @command_window = Window_Command.new(172, [s1, s2, s3])
# Et modifiez les ainsi : (ajoutez entre crochets l'index des icones voulues)
#   @command_window = Window_Command_Icon.new(172, [s1, s2, s3], [1, 2, 3])
# Laissez 0 pour ne pas utiliser d'icone
#==============================================================================
#==============================================================================
class Window_Command_Icon < Window_Selectable
  #--------------------------------------------------------------------------
  attr_reader   :commands
  #--------------------------------------------------------------------------
  def initialize(width, commands, icons, column_max=1, row_max=0, spacing=32)
    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
    @icons = icons
    @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) # enabled = transparent
    rect = item_rect(index)
    rect.x += 4
    rect.width -= 8
    self.contents.clear_rect(rect)
    rect.x += 24
    rect.width -= 24
    self.contents.font.color = normal_color
    self.contents.font.color.alpha = enabled ? 255 : 128
    draw_icon(@icons[index], 4, WLH * index, enabled)
    self.contents.draw_text(rect, @commands[index])
  end
end
#==============================================================================

_________________
Image
Projets
> ORAGE (Alternative 2D library) (#=> voir sur Github)
> &Co (#=> http://darkleo.alwaysdata.net/)


Haut
 Profil  
 
Afficher les messages depuis:  Trier par  
Publier un nouveau sujet Répondre au sujet  [ 3 messages ] 

Heures au format UTC + 1 heure [ Heure d’été ]


Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 2 invités


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Rechercher pour:
Sauter vers:  
cron
RPG Creative Forum version 5 ; Tous droits réservés
phpBB Group (Traduit par Xaphos)
Optimisé pour une résolution 1024*728