AccueilAccueil  PortailPortail  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  



Le deal à ne pas rater :
SSD interne Crucial BX500 2,5″ SATA – 500 Go à 29,99€
29.99 €
Voir le deal

Partagez
 

 [VXace] Picture Extender pour le Grimator

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
heos
Noble Lv.8
Noble Lv.8
avatar


Masculin Inscrit le : 08/07/2009
Messages : 228

[VXace] Picture Extender pour le Grimator Empty
MessageSujet: [VXace] Picture Extender pour le Grimator   [VXace] Picture Extender pour le Grimator Icon_minitimeMar 21 Aoû 2012 - 19:58

Ce petit script permet d'utiliser les ressources qui ne font pas partie du dossier pictures comme images
La liste des fonctionnalité ce trouve au début du script
[VXace] Picture Extender pour le Grimator 120821113849713304
Voici un exemple.
Code:

################################################################################
# Image Extender V 1.0: Add-on pour le Grimator V 1.1                          #
# Par heos - http://rpg-maker-vx.bbactif.com/                                  #
################################################################################
#Remerciement: Grim                                                            #
#------------------------------------------------------------------------------#
#Credit: Rien                                                                  #
#==============================================================================#
#Command                                                                      #
#==============================================================================#
# cmd(:picture_type,id,type)                                                  #
# cmd(:picture_name,id,name)                                                  #
# cmd(:picture_set,id, type, name)                                            #
#                                                                              #
# id = id de l'image                                                          #
# name = nom de l'image                                                        #
#==============================================================================#
# Type                                                                        #
#==============================================================================#
# :Picture  : Image de base                                                    #
# :Title1  : Utiliser les images du dosier Title1                              #
# :Title2  : Utiliser les images du dosier Title2                              #
# :Battleback1 : Utiliser les images du dosier Battlebakcs1                    #
# :Battleback2 : Utiliser les images du dosier Battlebakcs2                    #
# :Battler  : Utiliser les images du dosier Battler                          #
# :Icon  : Utiliser un icône                                                  #
# :Face  : Utiliser une face                                                  #
# :Title  : Utiliser un tile                                                  #
# :Charater  : Utiliser un chara                                              #
#==============================================================================#
# Nom                                                                          #
#==============================================================================#
#Type :Picture :Title1 :Title2 :Battleback1 :Battleback2                      #
#Le nom correspond au nom du fichier qui se trouve dans le dossier            #
#------------------------------------------------------------------------------#
#Type :Icon                                                                    #
#  nombre        ou le nombre est l'id de l'icone                            #
# [:item,"nom"]  ou nom est le nom d'un objet                                #
# [:weapon,"nom"] ou nom est le nom d'une arme                                #
# [:armor,"nom"]  ou nom est le nom d'une armure                              #
# [:skill,"nom"]  ou nom est le nom d'un sort                                  #
# Pour obtenir l'icône associer                                                #
#------------------------------------------------------------------------------#
#Type :Battler                                                                #
# nombre = Utiliser l'image du monstre donc l'id est ...                      #
# nom = Le nom du fichier qui se trouve dans le dossier                        #
#------------------------------------------------------------------------------#
#Type :Face :Tile :Character                                                  #
# ["nom",ID] ou nom est le nom du fichier et ID la position sur la planche    #
################################################################################




#==============================================================================
# ** Game_Picture
#------------------------------------------------------------------------------
#  This class handles pictures. It is created only when a picture of a specific
# number is required internally for the Game_Pictures class.
#==============================================================================

class Game_Picture
  attr_accessor :type, :name
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  alias base_initialize initialize
  def initialize(number)
  @type = :Picture
  base_initialize(number)
 end
end

#==============================================================================
# ** Sprite_Picture
#------------------------------------------------------------------------------
#  This sprite is used to display pictures. It observes an instance of the
# Game_Picture class and automatically changes sprite states.
#==============================================================================

class Sprite_Picture < Sprite

  def update_bitmap
    if @picture.name == ""
      self.bitmap = nil
    else
      case @picture.type
     
        when :Picture
          self.bitmap = Cache.picture(@picture.name)
   
        when :Parallaxe
          self.bitmap = Cache.parallax(@picture.name)
       
        when :Titles1
          self.bitmap = Cache.title1(@picture.name)
       
        when :Titles2
          self.bitmap = Cache.title2(@picture.name)
       
        when :Battleback1
          self.bitmap = Cache.battleback1(@picture.name)
       
        when :Battleback2
          self.bitmap = Cache.battleback2(@picture.name)
       
        when :Battler
          self.bitmap = Picture::get_battler(@picture.name)
         
        when :Icon
          self.bitmap = Picture::get_icon(@picture.name)
         
        when :Face
          self.bitmap = Picture::get_face(@picture.name[0],@picture.name[1])
         
        when :Tile
          self.bitmap = Picture::get_tile(@picture.name[0],@picture.name[1])
        when :Character
          self.bitmap = Picture::get_chara(@picture.name[0],@picture.name[1])
         
      else
      Picture.change_type(@picture.number, 0)
      Picture.change_name(@picture.number, "")
      end
    end
  end
end

#==============================================================================
# ** Picture
#------------------------------------------------------------------------------
#  Utilitaire de manipulation de pictures
#==============================================================================

module Picture
   #--------------------------------------------------------------------------
   # * Change le type de l'image
   #--------------------------------------------------------------------------
   def change_type(id, type)
    get_screen.pictures[id].type = type
  end
    #--------------------------------------------------------------------------
   # * Change le nom de l'image 
   #--------------------------------------------------------------------------
  def change_name(id, name)
    get_screen.pictures[id].name = name
  end
 
 #---------------------------------------------------------------------------
 # * Renvoie un icon grace a son ID
 #---------------------------------------------------------------------------
  def self.get_icon(icon_index)
    icon_index = self.get_icon_index(icon_index)
    contents = Bitmap.new(24,24)
    bitmap = Cache.system("Iconset")
    rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
    contents.blt(0, 0, bitmap, rect, 255)
    return contents
  end
 
 #---------------------------------------------------------------------------
 # * Convertit icon_index en ID si ce n'est pas le cas
 #---------------------------------------------------------------------------
  def self.get_icon_index(icon_index)
    if icon_index.size
      case icon_index[0]
      when :item
        return self.get_icon_item(icon_index[1])
      when :weapon
        return self.get_icon_weapon(icon_index[1])
      when :armor
        return self.get_icon_armor(icon_index[1])
      when :skill
        return self.get_icon_skill(icon_index[1])
      else
      return icon_index
    end
  end
end

 #---------------------------------------------------------------------------
 # * Convertit un nom en ID d'objet
 #--------------------------------------------------------------------------- 
  def self.get_icon_item(icon_name)
  (1..$data_items.size).each do |i|
    return self.get_icon_index($data_items[i].icon_index ) if  $data_items[i].name == icon_name
  end
  return nil
end

 #---------------------------------------------------------------------------
 # * Convertit un nom en ID d'arme
 #---------------------------------------------------------------------------
  def self.get_icon_weapon(icon_name)
  (1..$data_weapons.size).each do |i|
    return self.get_icon_index($data_weapons[i].icon_index ) if  $data_weapons[i].name == icon_name
    end
  return nil
end

 #---------------------------------------------------------------------------
 # * Convertit un nom en ID d'armure
 #---------------------------------------------------------------------------
  def self.get_icon_armor(icon_name)
  (1..$data_armors.size).each do |i|
    return self.get_icon_index($data_armors[i].icon_index ) if  $data_armors[i].name == icon_name
  end
  return nil
end

 #---------------------------------------------------------------------------
 # * Convertit un nom en ID d'une compétence
 #---------------------------------------------------------------------------
  def self.get_icon_skill(icon_name)
  (1..$data_skills).each do |i|
    return self.get_icon_index($data_skills[i].icon_index ) if  $data_skills[i].name == icon_name
  end
  return nil
end

 #---------------------------------------------------------------------------
 #
 #---------------------------------------------------------------------------
 
  def self.get_face(filename,face_index)
    contents = Bitmap.new(96,96)
    bitmap =  Cache.face(filename)
    rect = Rect.new(face_index % 4 * 96, face_index / 4 * 96, 96, 96)
    contents.blt(0, 0, bitmap, rect,255)
    return contents
  end
 
 #---------------------------------------------------------------------------
 #
 #---------------------------------------------------------------------------
  def self.get_tileset(filename,tile_index)
    contents = Bitmap.new(32,32)
    bitmap =  Cache.tileset(filename)
    rect = Rect.new(tile_index % 8 * 32, tile_index / 8 * 32, 32, 32)
    contents.blt(0, 0, bitmap, rect,255)
    return contents
  end
 #---------------------------------------------------------------------------
 #
 #---------------------------------------------------------------------------
  def self.get_chara(filename,tile_index)
    contents = Bitmap.new(32,32)
    bitmap =  Cache. character(filename)
    rect = Rect.new(tile_index % 12 * 32, tile_index / 12 * 32, 32, 32)
    contents.blt(0, 0, bitmap, rect,255)
    return contents
  end


 #---------------------------------------------------------------------------
 # Renvoi le batller selon le nom ou l'id
 #---------------------------------------------------------------------------

 def self.get_battler(battler_name)
  if battler_name.is_a? String
    return Cache.battler(battler_name, 0)
  else
    return Cache.battler($data_enemies[battler_name].battler_name,$data_enemies[battler_name].battler_hue)
  end
 end
 
end
 

#==============================================================================
# ** Command
#------------------------------------------------------------------------------
#  Ajoute des commandes facilement manipulables
#==============================================================================

module Command
  def picture_type(id, type) Picture.change_type(id, type) end
  def picture_name(id, name) Picture.change_name(id, name) end
  def picture_set(id, type, name)
    Picture.change_type(id, type)
    Picture.change_name(id, name)
  end
end

#==============================================================================
# ** Game_Interpreter
#------------------------------------------------------------------------------
#  An interpreter for executing event commands. This class is used within the
# Game_Map, Game_Troop, and Game_Event classes.
#==============================================================================

class Game_Interpreter
  def command_231
    Picture::change_type(@params[0],:Picture)
    if @params[3] == 0    # Direct designation
      x = @params[4]
      y = @params[5]
    else                  # Designation with variables
      x = $game_variables[@params[4]]
      y = $game_variables[@params[5]]
    end
    screen.pictures[@params[0]].show(@params[1], @params[2],
      x, y, @params[6], @params[7], @params[8], @params[9])
  end

end


Dernière édition par heos le Mar 21 Aoû 2012 - 21:40, édité 1 fois
Revenir en haut Aller en bas
Invité
Invité
avatar



[VXace] Picture Extender pour le Grimator Empty
MessageSujet: Re: [VXace] Picture Extender pour le Grimator   [VXace] Picture Extender pour le Grimator Icon_minitimeMar 21 Aoû 2012 - 20:28

Merci beaucoup pour ton script ! Je te suis très reconnaissant d'avoir créer le premier addon pour le grimator ! Je suis tout ému !
Revenir en haut Aller en bas
 

[VXace] Picture Extender pour le Grimator

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» [VXACE] Event Extender - Flip Pictures
» [VXAce] Event Extender, Le Grimator !
» [VXAce] Extension de la base de données orienté DSL pour l'Event Extender
» [VXAce] L'Event Extender 4 (Le grimimimator)
» [VXAce] Event Extender, Pathfinder

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Entraide :: Scripts :: Scripts VX.Ace - RGSS3 :: Utilitaires-
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Cookies | Forumactif.com