Accueil du SiteAccueil du Site  AccueilAccueil  Dernières imagesDernières images  RechercherRechercher  ConnexionConnexion  S'enregistrerS'enregistrer  



Le Deal du moment : -34%
-34% LG OLED55B3 – TV OLED 4K 55″ 2023 ...
Voir le deal
919 €

Partagez
 

 Equipement visible

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Afr0man
Chevalier (niveau 4)
Chevalier (niveau 4)
Afr0man

Messages postés : 118
Date d'inscription : 20/08/2010
Jauge LPC :
Equipement visible 89152714007 / 1007 / 100Equipement visible 8915271400


Equipement visible Empty
MessageSujet: Equipement visible   Equipement visible EmptyMer 1 Sep 2010 - 12:54

CREATEUR : RATAIME
Creer un nouveau script au dessus de Main et
nommez le Visual_Equipment:

Code:
#==============================================================================
# ■ Visual_Equipment
# Written by Rataime
#
# Edit below
#
# Note : If you have a custom Window_SaveFile, check the one at the end of the scrîpt,
# add the added lines to yours, and delete the whole Window_SaveFile class here
#==============================================================================
def equip_update(light=false)

$visual_equipment=Array.new
$visual_equipment[0]=light
for i in 0..3
 $visual_equipment[i+1]=[]
end

#===================================================
# ● EDIT HERE !
#===================================================  

#If weapon n°33 is equiped, add the charset tpl_helmet_1.png (I don't have a weapon charset ><)
#add_weapon_sprite(33,"tpl_helmet_1")

#If weapon n°6 is equiped, add the charset tpl_helmet_1.png
add_armor_sprite(6,"tpl_helmet_1")

add_armor_sprite(7,"tpl_helmet_2")
add_armor_sprite(20,"tpl_armor_white")
add_armor_sprite(15,"tpl_armor_blue")
add_armor_sprite(21,"tpl_armor_cape")

#===================================================
# ▼ Visual_equip functions
#===================================================
   RPG::Cache.clear
   @game_party = $game_party
   @game_party = $game_party2 if $visual_equipment[0]
   for i in 0...@game_party.actors.size
     for img in $visual_equipment[i+1]
       bitmap = RPG::Cache.character(@game_party.actors[i].character_name, @game_party.actors[i].character_hue)
        if img!=true and img!=false
          add_equip(bitmap,img,i)
        end
      end
    end
end

  def add_equip(sprite,to_add,character)
  @game_party = $game_party
  @game_party = $game_party2 if $visual_equipment[0]
  bmp = Sprite.new
  bmp.visible =false
  bmp.bitmap = RPG::Cache.character(to_add,@game_party.actors[character].character_hue)
  color = bmp.bitmap.get_pixel(0, 0)
  x=sprite.width
  y=sprite.height
  if $visual_equipment[0]
    x=x/4
    y=y/4
  end
  for i in 0..x
    for j in 0..y
      color_get=bmp.bitmap.get_pixel(i, j)
      if color_get!=color
        sprite.set_pixel(i, j ,color_get)
      end
    end
  end
 
 bmp=nil
 
 end

  def add_weapon_sprite(id,sprite)
    @game_party = $game_party
    @game_party = $game_party2 if $visual_equipment[0]
    for i in 0...@game_party.actors.size
      if @game_party.actors[i].weapon_id==id
        $visual_equipment[i+1].push(sprite)
      end
    end
  end

  def add_armor_sprite(id,sprite)
    @game_party = $game_party
    @game_party = $game_party2 if $visual_equipment[0]
    for i in 0...@game_party.actors.size
      if @game_party.actors[i].armor1_id==id or @game_party.actors[i].armor2_id==id or @game_party.actors[i].armor3_id==id or @game_party.actors[i].armor4_id==id
        $visual_equipment[i+1].push(sprite)
      end
    end
  end

#===================================================
# ▼ CLASS Scene_Equip edit
#===================================================

class Scene_Equip
 
 alias visual_update_right update_right
 
 def update_right
    if Input.trigger?(Input::B)
      equip_update
      $game_system.se_play($data_system.cancel_se)
      $scene = Scene_Menu.new(2)
      return
    end
    visual_update_right
  end
        
end

class Interpreter

  alias visual_command_319 command_319
 
 def command_319
    actor = $game_actors[@parameters[0]]
    if actor != nil
      actor.equip(@parameters[1], @parameters[2])
    end
    equip_update
    return true
  end
 
end

class Game_Character
  attr_accessor :character_hue
end

class Game_Actor < Game_Battler
alias visual_setup setup
  def setup(actor_id)
    visual_setup(actor_id)
    @character_hue = (@character_hue+1)%256
  end
end

class Scene_Load
  alias visual_read_save_data read_save_data
  alias visual_on_cancel on_cancel
 
 def on_cancel
    equip_update
    visual_on_cancel
  end
 
 def read_save_data(file)
    visual_read_save_data(file)
    equip_update
  end
end

class Scene_Save
  alias visual_on_decision on_decision
  alias visual_on_cancel on_cancel
 
 def on_cancel
    equip_update
    visual_on_cancel
  end
 
 def on_decision(file)
    equip_update
    visual_on_decision(file)
  end
end

class Scene_Title
  alias visual_command_new_game command_new_game
 
 def command_new_game
    visual_command_new_game
    equip_update
  end

end

class Window_SaveFile < Window_Base

  def initialize(file_index, filename)
    super(0, 64 + file_index % 4 * 104, 640, 104)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $fontface
    self.contents.font.size = $fontsize
    @file_index = file_index
    @filename = "Save#{@file_index + 1}.rxdata"
    @time_stamp = Time.at(0)
    @file_exist = FileTest.exist?(@filename)
    if @file_exist
      file = File.open(@filename, "r")
      @time_stamp = file.mtime
      @characters = Marshal.load(file)
      @frame_count = Marshal.load(file)
      @game_system = Marshal.load(file)
      @game_switches = Marshal.load(file)
      @game_variables = Marshal.load(file)
      @self_variables = Marshal.load(file)#added
      @game_screen = Marshal.load(file)#added
      @game_actors = Marshal.load(file)#added
      $game_party2=@game_party= Marshal.load(file)#added
      @total_sec = @frame_count / Graphics.frame_rate
      file.close
    end
    equip_update(true)#added
    refresh
    @selected = false
  end
 
end

regardez entre les lignes 15 et 30 :

Code:
add_armor_sprite(6,"tpl_helmet_1")

Voilà, à cet endroit vous aurez à rajouter les lignes qui correspondront aux différents équipements. Elles se présenteront sous la forme suivante :

Code:
add_armor_sprite(ID,nom_image)
ou

Code:
add_weapon_sprite(ID,nom_image)

Armor correspont à armure, weaponc'est pour les  arme.

Remplacez ID par le numéro correspondant à l'equipement dans la base de données, et nom_image par le nom de l'image que vous aurez placée dans le dossier "characters" de votre projet




Pris sur un autre forum et vraiment désolé car c'est presque du copier coller. [/i][/i][/i][/i][/i][/i][/i]
Revenir en haut Aller en bas
http://www.neone.forumactif.org
Elekami
Fondateur
Fondateur
Elekami

Masculin
Messages postés : 19071
Date d'inscription : 19/07/2008
Jauge LPC :
Equipement visible 8915271400100 / 100100 / 100Equipement visible 8915271400

Equipement visible Pater_10
Equipement visible Staffe10
Equipement visible Mythe_10
Equipement visible Membre11
Equipement visible Doyen10
Equipement visible Scanar10
Equipement visible Compos10
Equipement visible Testeu10
Equipement visible Membre15
Equipement visible Partag10
Equipement visible Projet10
Equipement visible Projet16
Equipement visible Riche_10
Equipement visible Travai10
Equipement visible Collec10
Equipement visible Collec11
Equipement visible Collec12
Equipement visible Collec13
Equipement visible Connar10


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptyJeu 2 Sep 2010 - 10:07

Cimer pour le script mon ami l'Afro. Tu es sur la bonne voie x)
Revenir en haut Aller en bas
https://www.ledijonshow.fr https://twitter.com/EleKoptes
Afr0man
Chevalier (niveau 4)
Chevalier (niveau 4)
Afr0man

Messages postés : 118
Date d'inscription : 20/08/2010
Jauge LPC :
Equipement visible 89152714007 / 1007 / 100Equipement visible 8915271400


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptyJeu 2 Sep 2010 - 10:18

X)
Mon ami L'Afro d'où ça vient ça X)
Revenir en haut Aller en bas
http://www.neone.forumactif.org
Elekami
Fondateur
Fondateur
Elekami

Masculin
Messages postés : 19071
Date d'inscription : 19/07/2008
Jauge LPC :
Equipement visible 8915271400100 / 100100 / 100Equipement visible 8915271400

Equipement visible Pater_10
Equipement visible Staffe10
Equipement visible Mythe_10
Equipement visible Membre11
Equipement visible Doyen10
Equipement visible Scanar10
Equipement visible Compos10
Equipement visible Testeu10
Equipement visible Membre15
Equipement visible Partag10
Equipement visible Projet10
Equipement visible Projet16
Equipement visible Riche_10
Equipement visible Travai10
Equipement visible Collec10
Equipement visible Collec11
Equipement visible Collec12
Equipement visible Collec13
Equipement visible Connar10


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptyJeu 2 Sep 2010 - 14:36

C'est une expression pour sympatoche tu trouves pas? XD
Revenir en haut Aller en bas
https://www.ledijonshow.fr https://twitter.com/EleKoptes
Brandobscure001
Paladin (niveau 1)
Paladin (niveau 1)
Brandobscure001

Masculin
Messages postés : 544
Date d'inscription : 02/08/2011
Jauge LPC :
Equipement visible 89152714006 / 1006 / 100Equipement visible 8915271400

Equipement visible Membre10
Equipement visible Partag10
Equipement visible Projet16
Equipement visible Collec12


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptySam 13 Aoû 2011 - 18:22

Salut désolé de répondre a un vieux topik mais je voulait savoir
si ce script et pour rmvx ? ^^
Revenir en haut Aller en bas
jerethom
Paysan (niveau 2)
Paysan (niveau 2)
avatar

Masculin
Messages postés : 10
Date d'inscription : 19/07/2008
Jauge LPC :
Equipement visible 89152714000 / 1000 / 100Equipement visible 8915271400


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptySam 13 Aoû 2011 - 18:27

En effet, le créateur du topic n'a pas précisé, et je n'en ai aucune idée.
Désolé...
Revenir en haut Aller en bas
Dirushee
Paysan (niveau 3)
Paysan (niveau 3)
Dirushee

Messages postés : 27
Date d'inscription : 13/08/2011
Jauge LPC :
Equipement visible 89152714002 / 1002 / 100Equipement visible 8915271400


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptySam 13 Aoû 2011 - 18:35

Pour VX tu as ça

Ce script permet de modifier de manière automatique l'apparance du héro. Pour avoir une utilisation optimal, il doit être utiliser avec le script que j'ai mis au-dessous, la version étendue de KGC_EquipExtension VX[/url]. Ce script est plus capricieux tant qu'à l'emplacement. Si vous voulez l'utiliser seul, vous devrai décommenter le bloc de constante au début du script. Si vous voulez l'utiliser avec KGC_EquipExtension VX expansion, vous devrez placer ce script entre KGC_EquipExtension VX expansion et Main.

Les images:
Equipement visible Suits011
Equipement visible Suits012

Le script :
Code:
#--------------------------------------------------------------------
#
# Classe MyFaceChanger (MFC)
# Création : 2 mai 2008
# Auteur : MirainoHikari http://rpg-maker-vx.bbactif.com/
# Mise à jour :
#
#--------------------------------------------------------------------
#
# Utilité : modification de costume
# Scripts nécessaires : KGC_EquipExtension VX mise à jour par MirainoHikari
# Notes : doit être placer entre KGC_EquipExtension et Main
#
#--------------------------------------------------------------------
#
# SUITS_SET est le numéro qui vient après le nom de l'image d'où
#          viennent les sprites et les faceset. (Ex. Actor1, le set
#          est 1)
#
# SUITS_INDEX est le numéro qui identifie le personnage à l'intérieur
#          du set (0 est le 1er, 7 est le dernier)
#
#--------------------------------------------------------------------

=begin
# ce bloc doit être décommenté uniquement si ce script n'est pas utilisé
# avec KGC_EquipExtension afin de donner les valeurs de constantes

#Interrupteur (switch) du jeu indiquant les changement de costume
$CAN_EQUIP_SUITS = 33 #true si on peut se changer
$SUITS_EQUIPED = 34 #true si un nouveau costume a été équipé
#Variables de jeu détenant les information pour les costumes (set et index)
$SUITS_GROUP_VAR = 28 #Dans ce scrip, il s'agit du sex du perso, mais peu être étendu
$SUITS_SETS_VAR = 29
$SUITS_INDEX_VAR = 30

# Variable de jeu indiquant le numéro du costume équipé
# (utile pour faire des condition dans le jeu)
$EQUIPED_SUIT = 9
=end

class MFC
 
  #--------------------------------------------------------------------------
  # * Change actor apperance
  #--------------------------------------------------------------------------
  def MFC.change_actor(actor = 1,base = 'Actor',number = 1,index = 0)
   
    nn = base.to_s + number.to_s
    id = actor.to_i
    nb = index.to_i
    $game_actors[id].set_graphic(nn, nb, nn, nb)
    $game_player.refresh
    $game_variables[$EQUIPED_SUIT] = ((number.to_i - 1) * 8 + index.to_i).to_i
  end
 
  def MFC.change_actor(actor = 1) #ID de l'acteur à modifier
    #convertion du groupe en base de fichier
    if $game_variables[$SUITS_GROUP_VAR] == 0
      base = 'Girl'
    else
      base = 'Boy'
    end
    number = $game_variables[$SUITS_SETS_VAR]
    index = $game_variables[$SUITS_INDEX_VAR]
   
    nn = base.to_s + number.to_s
    nb = index.to_i
    id = actor.to_i
   
    $game_actors[id].set_graphic(nn, nb, nn, nb)
    $game_player.refresh
    $game_variables[$EQUIPED_SUIT] = [((number.to_i - 1) * 8 + index.to_i).to_i, -1].max
  end

end

Voilà. Pour l'appeler, vous n'avez qu'à placer la commande MFC.change_actor(1,'Actor',1,0) (avec les informations que vous désirez) dans un événement si vous n'utiliser pas KGC_EquipExtension VX expansion ou simplement MFC.change_actor(1) si vous l'utilisez.


EDIT: (et oui déjà). Il y a un second moyen pour l'appel de MFC.change_actor(1), toutefois, il faut être à l'aise avec les scripts. Regardez bien ce screen:
Equipement visible Game_v10
Cette écran montre la fenêtre de tests. Ceux qui la connaissent, regardez bien. Un élément impossible à faire en event est présent... Et oui. Une variable texte (les events permettent uniquement les variables numérique)
Donc au lieu de
Code:
#convertion du groupe en base de fichier
    if $game_variables[$SUITS_GROUP_VAR] == 0
      base = 'Girl'
    else
      base = 'Boy'
    end
vous pouvez mettre:
Code:
base = $game_variables[$SUITS_GROUP_VAR]
et pour initialisé $game_variables[$SUITS_GROUP_VAR], et bien, dans l'évènement qui donne la valeur à cette variable, vous n'avez qu'à mettre le script
Code:
$game_variables[$SUITS_GROUP_VAR]='Girl'
comme dans l'exemple ou remplacer Girl par Actor ou Boy ou peut importe comment vous avez organisé vos images.


EDIT2 : (trop productif ce Hikari Smile) ATTENTION Si vous utiliser la méthode de la variable string, n'essayer pas de la changer par le menu de debug. Celui-ci s'attend à un chiffre et le fait de tenter de le modifier manuellement fera fermer l'application avec le message d'erreur «Impossible de convertir string en entier» ou encore «Out of Range ±99999». Donc si vous voulez utiliser cette méthode, assurez vous que la variable ne se trouve pas dans le chemin de variables que vous voulez tester manuellement puisque ce bug suviendra chaque fois que le curseur passera par dessus cette variable.


Dernière édition par Dirushee le Sam 13 Aoû 2011 - 18:37, édité 1 fois
Revenir en haut Aller en bas
Dirushee
Paysan (niveau 3)
Paysan (niveau 3)
Dirushee

Messages postés : 27
Date d'inscription : 13/08/2011
Jauge LPC :
Equipement visible 89152714002 / 1002 / 100Equipement visible 8915271400


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptySam 13 Aoû 2011 - 18:36

A utilise avec ce script

Bon, ça y est, j'ai finalement réussi. La version étendu de EquipExtension pour permettre le changement de costume.
Ce script remplace tout simplement l'ancien script de KGC_EquipExtension VX.

Désolé à l'avance, je sais que normalement je ne devrais pas reposter le même script, mais justement, ce n'est pas tout à fait le même. Cependant, je n'ai pas réussi à faire un joli petit fichier de patch, il a fallu que j'aille modifier des trucs directement dans le code et à cause de ces changements, remettre les autres fonctions qui les utilisaient, finalement je devais recopier 95% du script alors je me suis dit: «Oublie le patch, repost le fichier complet.»

Les screens :
Equipement visible Suits010
Equipement visible Suits011
Equipement visible Suits012

Le code :
Code:
#
#
#_/    ◆ 装備拡張 - KGC_EquipExtension ◆ VX ◆
#_/    ◇ Last update : 2008/03/02 ◇
#
#  Expansion par MirainoHikari 28 mai 2008
#
#  Suits Set et Suits Index par MirainoHikari http://rpg-maker-vx.bbactif.com
#
#
#==============================================================================
# Modules nécessaires : Customize (KGC)
#==============================================================================

#Interrupteur (switch) du jeu indiquant les changements de costumes
$CAN_EQUIP_SUITS = 33 #true si on peut se changer
$SUITS_EQUIPED = 34 #true si un nouveau costume a été équipé
#Variables de jeu détenant les informations pour les costumes (set et index)
$SUITS_GROUP_VAR = 28 #Dans ce scrip, il s'agit du sex du perso, mais peu être étendu
$SUITS_SETS_VAR = 29
$SUITS_INDEX_VAR = 30

# Variable de jeu indiquant le numéro du costume équipé
# (utile pour faire des condition dans le jeu)
$EQUIPED_SUIT = 9

#Valeurs par défaut lorsqu'on retire un costume
$SUITS_DEFAULT_SETS = 0 #Mettre à 1 si vous utilisé les sets par défaut
$SUITS_DEFAULT_INDEX = 0
 

module MySuit
  #Si true, le costume peut être changé n'importe où, si false
  #nécessite un emplacement de changement
  ALWAYS_EQUIP_SUIT = false
 
  # Où voullez vous que le costume soit inscrit dans la liste de la
  # fenêtre d'équipement (0 = début, -1 = fin, 1 = après le 1er, -2 = avant dernier
  # et ainsi de suite
  # Si vous utiliser un entier "out of range", il sera placer comme dernier
  # item de la liste.
  # C'est également l'index qui sera bloqué si ALWAYS_EQUIP_SUIT est à false
  # Et que l'interrupteur $CAN_EQUIP_SUITS n'est pas activé
  SLOT_OF_SUITS = 6
  # Le nom à ajouter pour les costumes
  EXTRA_EQUIP_KIND = "Costume"
 
 
  #Nouveaux éléements pour le "parser" de notes
  SUITS_SETS_SUB = /<SUITS_SET\s*(\d+)>/i
  SUITS_INDEX_SUB = /<SUITS_INDEX\s*(\d+)>/i

end


module KGC
module EquipExtension
  # ◆ From the extended equipment
  #classification  first in order 4, 5 and 6,… Is allotted.
  EXTRA_EQUIP_KIND = ["Bouclier"]
  # ◆ After
  #the equipment place list # weapon, it lines up in the order which is appointed here.
  #Unless the # * equipment place is minimum of one, two swords style is a bug [ru] possibility.
  #  * Equipment classification summary &
  # 0. Shield 1. Head 2. Body 3. Ornament 4~. It defines with the ↑
  EQUIP_TYPE = [0, 4, 1, 2, 3]
 
  # Miraino Hikari : ici on ajoute ce qui est nécessaire pour le costume
  EXTRA_EQUIP_KIND << MySuit::EXTRA_EQUIP_KIND
  #vérification du out of range
  if (MySuit::SLOT_OF_SUITS > EQUIP_TYPE.size) | (MySuit::SLOT_OF_SUITS < -1 * EQUIP_TYPE.size)
    EQUIP_TYPE << EXTRA_EQUIP_KIND.size.to_i + 3 #se place à la fin
    MySuit::SLOT_OF_SUITS = EQUIP_TYPE.size.to_i # SLOT_OF_SUITS prends valeur max
  else
    #sinon s'insère à l'endroit désiré
    EQUIP_TYPE.insert MySuit::SLOT_OF_SUITS, (EXTRA_EQUIP_KIND.size.to_i + 3)
  end
 
  #Ajustement sur nombre négatif
  MySuit::SLOT_OF_SUITS = MySuit::SLOT_OF_SUITS + EQUIP_TYPE.size.to_i + 1 if MySuit::SLOT_OF_SUITS.to_i < 0

  USE_EP_SYSTEM = false
  VOCAB_EP  = "EP"
  VOCAB_EP_A = "E"
  SHOW_STATUS_EP = true
  DEFAULT_EP_COST  = 0
  HIDE_ZERO_EP_COST = true
  EP_MAX = 20
  EP_MIN = 0
  #  Because integer it is converted automatically, the result becoming in decimal, OK.
  EP_CALC_EXP = "level * 0.2 + 3"
  #  Color : Color ID ou Color.new(128, 255, 255)
  EP_COST_COLOR        = 23
  EP_GAUGE_START_COLOR = 28
  EP_GAUGE_END_COLOR  = 29
end
end
#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
$imported = {} if $imported == nil
$imported["EquipExtension"] = true
module KGC::EquipExtension
  unless USE_EP_SYSTEM
    SHOW_STATUS_EP = false
    HIDE_ZERO_EP_COST = true
  end
  module Regexp
    module BaseItem
      EP_COST = /<EP\s*(\d+)>/i
      EQUIP_TYPE = /<EQUIP_TYPE\s*(\d+(?:\s*,\s*\d+)*)>/
    end
    module Armor
      EQUIP_KIND = /<EQUIP_KIND\s*(.+)>/i
    end
  end
end
#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
#==============================================================================
# □ KGC::Commands
#==============================================================================
module KGC::Commands
  module_function
  def restore_equip
    (1...$data_actors.size).each { |i|
      actor = $game_actors[i]
      actor.restore_equip
    }
  end
  def set_actor_equip_type(actor_id, equip_type = nil)
    actor = $game_actors[actor_id]
    return if actor == nil
    actor.equip_type = equip_type
  end
  def change_actor_equipment(actor_id, index, item_id)
    actor = $game_actors[actor_id]
    return if actor == nil
    actor.change_equip_by_id(index, item_id)
  end
end
class Game_Interpreter
  include KGC::Commands
end
#==============================================================================
# ■ Vocab
#==============================================================================
module Vocab
  def self.ep
    return KGC::EquipExtension::VOCAB_EP
  end
  def self.ep_a
    return KGC::EquipExtension::VOCAB_EP_A
  end
  def self.extra_armor(index)
    return KGC::EquipExtension::EXTRA_EQUIP_KIND[index]
  end
end
#==============================================================================
# ■ RPG::BaseItem
#==============================================================================
class RPG::BaseItem
  def create_equip_extension_cache
    @__ep_cost = KGC::EquipExtension::DEFAULT_EP_COST
    @__equip_type = []
    self.note.split(/[\r\n]+/).each { |line|
      case line
        when KGC::EquipExtension::Regexp::BaseItem::EP_COST
          @__ep_cost = $1.to_i
        when MySuit::SUITS_SETS_SUB
          #Lors de la lecture des notes, prends la valeur indiqué après
          # <SUITS_SET>
          @suits_set_val = $1.to_i
        when MySuit::SUITS_INDEX_SUB
          #Lors de la lecture des notes, prends la valeur indiqué après
          # <SUITS_INDEX>
          @suits_index_val = $1.to_i
        when KGC::EquipExtension::Regexp::BaseItem::EQUIP_TYPE
          @__equip_type = []
          $1.scan(/\d+/) { |num| @__equip_type << num.to_i }
      end
    }
    @__ep_cost = 0 unless KGC::EquipExtension::USE_EP_SYSTEM
  end
  def ep_cost
    create_equip_extension_cache if @__ep_cost == nil
    return @__ep_cost
  end
  def equip_type
    create_equip_extension_cache if @__equip_type == nil
    return @__equip_type
  end
  #-----------------------
  #méthode pour récupérer les valeurs de suits_set et suits_index
  #de l'objet courrant
  #-----------------------
  def suits_set
    create_equip_extension_cache if @suits_set_val == nil
    return @suits_set_val
  end
  def suits_index
    create_equip_extension_cache if @suits_index_val == nil
    return @suits_index_val
  end
end
#==============================================================================
# ■ RPG::Armor
#==============================================================================
class RPG::Armor < RPG::BaseItem
  def create_equip_extension_cache
    super
    @__kind = -1
    self.note.split(/[\r\n]+/).each { |line|
      if line =~ KGC::EquipExtension::Regexp::Armor::EQUIP_KIND
        # 装備種別
        e_index = KGC::EquipExtension::EXTRA_EQUIP_KIND.index($1)
        next if e_index == nil
        @__kind = e_index + 4
      end
    }
  end
unless $@
  alias kind_KGC_EquipExtension kind
  def kind
    create_equip_extension_cache if @__kind == nil
    return (@__kind == -1 ? kind_KGC_EquipExtension : @__kind)
  end
end
end
#==============================================================================
# ■ Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
  attr_writer  :equip_type              # 装備タイプ
  alias setup_KGC_EquipExtension setup
  def setup(actor_id)
    actor = $data_actors[actor_id]
    @extra_armor_id = []
    setup_KGC_EquipExtension(actor_id)
    restore_equip
  end
  def maxep
    n = Integer(eval(KGC::EquipExtension::EP_CALC_EXP))
    return [[n, ep_limit].min, KGC::EquipExtension::EP_MIN].max
  end
  def ep
    n = 0
    equips.compact.each { |item| n += item.ep_cost }
    return [maxep - n, 0].max
  end
  def ep_limit
    return KGC::EquipExtension::EP_MAX
  end
  #-----------------------
  #méthode pour vérifier les valeurs de suits_set et suits_index
  #équipé sur le personnage actif
  #-----------------------
  def suits_s
    n = $SUITS_DEFAULT_SETS.to_i
    equips.compact.each { |item| n = item.nil? ? $SUITS_DEFAULT_SETS.to_i : item.suits_set.to_i }
    return n
  end
  def suits_i
    n = $SUITS_DEFAULT_INDEX.to_i
    equips.compact.each { |item| n = item.nil? ? $SUITS_DEFAULT_INDEX.to_i : item.suits_index.to_i }
    return n
  end 
  def equip_type
    if @equip_type.is_a?(Array)
      return @equip_type
    else
      return KGC::EquipExtension::EQUIP_TYPE
    end
  end
  def armor_number
    return equip_type.size
  end
  def extra_armor_number
    return [armor_number - 4, 0].max
  end
  def extra_armor_id
    @extra_armor_id = [] if @extra_armor_id == nil
    return @extra_armor_id
  end
  alias armors_KGC_EquipExtension armors
  def armors
    result = armors_KGC_EquipExtension
    extra_armor_number.times { |i|
      armor_id = extra_armor_id[i]
      result << (armor_id == nil ? nil : $data_armors[armor_id])
    }
    return result
  end
  alias change_equip_KGC_EquipExtension change_equip
  def change_equip(equip_type, item, test = false)
   
    # Effectue le changement d'équipement si on est situer correctement ou
    # qu'on autorise toujours le changement d'équipement
    if MySuit::ALWAYS_EQUIP_SUIT | (equip_type != MySuit::SLOT_OF_SUITS) | ($game_switches[$CAN_EQUIP_SUITS] & (equip_type == MySuit::SLOT_OF_SUITS))
      change_equip_KGC_EquipExtension(equip_type, item, test)
      # When there is an extended guard column only,
      if extra_armor_number > 0
        item_id = item == nil ? 0 : item.id
        case equip_type
        when 5..armor_number  # Extended guard column
          @extra_armor_id = [] if @extra_armor_id == nil
          @extra_armor_id[equip_type - 5] = item_id
        end
      end
    end
    if (equip_type == MySuit::SLOT_OF_SUITS)
        #change la valeur des variables pour modification du personnage
        $game_variables[$SUITS_SETS_VAR] = suits_s.nil? ? $SUITS_DEFAULT_SETS : suits_s
        $game_variables[$SUITS_INDEX_VAR] = suits_i.nil? ? $SUITS_DEFAULT_INDEX : suits_i
        $game_switches[$SUITS_EQUIPED] = true
    end
    restore_battle_skill if $imported["SkillCPSystem"]
    restore_passive_rev  if $imported["PassiveSkill"]
  end
  alias discard_equip_KGC_EquipExtension discard_equip
  def discard_equip(item)
    last_armors = [@armor1_id, @armor2_id, @armor3_id, @armor4_id]
    discard_equip_KGC_EquipExtension(item)
    curr_armors = [@armor1_id, @armor2_id, @armor3_id, @armor4_id]
    return unless item.is_a?(RPG::Armor) 
    return if last_armors != curr_armors 
    extra_armor_number.times { |i|
      if extra_armor_id[i] == item.id
        @extra_armor_id[i] = 0
        break
      end
    }
    restore_battle_skill if $imported["SkillCPSystem"]
    restore_passive_rev  if $imported["PassiveSkill"]
  end
  alias class_id_equal_KGC_EquipExtension class_id=
  def class_id=(class_id)
    class_id_equal_KGC_EquipExtension(class_id)
    return if extra_armor_number == 0 
    for i in 5..armor_number
      change_equip(i, nil) unless equippable?(equips[i])
    end
  end
  def ep_condition_clear?(equip_type, item)
    return true if item == nil 
    curr_item = equips[equip_type]
    offset = (curr_item != nil ? curr_item.ep_cost : 0)
    return false if self.ep < (item.ep_cost - offset)  # EP 不足
    return true
  end
  def restore_equip
    return if @__last_equip_type == equip_type
    last_equips = equips
    last_hp = self.hp
    last_mp = self.mp
    if $imported["SkillCPSystem"]
      last_battle_skill_ids = battle_skill_ids.clone
    end
    last_equips.each_index { |i| change_equip(i, nil) }
    last_equips.compact.each { |item| equip_legal_slot(item) }
    self.hp = last_hp
    self.mp = last_mp
    if $imported["SkillCPSystem"]
      last_battle_skill_ids.each_with_index { |s, i| set_battle_skill(i, s) }
    end
    @__last_equip_type = equip_type.clone
    Graphics.frame_reset
  end
  def equip_legal_slot(item)
    if item.is_a?(RPG::Weapon)
      if @weapon_id == 0
        change_equip(0, item)
      elsif two_swords_style && @armor1_id == 0
        change_equip(1, item)
      end
    elsif item.is_a?(RPG::Armor)
      if !two_swords_style && item.kind == equip_type[0] && @armor1_id == 0
        change_equip(1, item)
      else
        list = [-1, @armor2_id, @armor3_id, @armor4_id]
        list += extra_armor_id
        # You set to the place where it is correct, at the same time has been less crowded
        equip_type.each_with_index { |kind, i|
          if kind == item.kind && list[i] == 0
            change_equip(i + 1, item)
            break
          end
        }
      end
    end
  end
end
Revenir en haut Aller en bas
Brandobscure001
Paladin (niveau 1)
Paladin (niveau 1)
Brandobscure001

Masculin
Messages postés : 544
Date d'inscription : 02/08/2011
Jauge LPC :
Equipement visible 89152714006 / 1006 / 100Equipement visible 8915271400

Equipement visible Membre10
Equipement visible Partag10
Equipement visible Projet16
Equipement visible Collec12


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptySam 13 Aoû 2011 - 18:42

C'est trop dure pour moi tout sa Sad

je laisse tomber.
les script et moi sa fait pas bon ménage ^^
Revenir en haut Aller en bas
Dirushee
Paysan (niveau 3)
Paysan (niveau 3)
Dirushee

Messages postés : 27
Date d'inscription : 13/08/2011
Jauge LPC :
Equipement visible 89152714002 / 1002 / 100Equipement visible 8915271400


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptySam 13 Aoû 2011 - 18:45

Tu peux le faire en event, dans ton projet tu as un seul perso donc c'est hyper simple.

Condition si machin est équiper d'une paire de bottes
Modifier l'apparence de machin
En machine

Tu saisis ?
Revenir en haut Aller en bas
Brandobscure001
Paladin (niveau 1)
Paladin (niveau 1)
Brandobscure001

Masculin
Messages postés : 544
Date d'inscription : 02/08/2011
Jauge LPC :
Equipement visible 89152714006 / 1006 / 100Equipement visible 8915271400

Equipement visible Membre10
Equipement visible Partag10
Equipement visible Projet16
Equipement visible Collec12


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptySam 13 Aoû 2011 - 18:47

Oui mais j'ai 2 projets ^^

un survivale et un rpg Very Happy
Revenir en haut Aller en bas
Dirushee
Paysan (niveau 3)
Paysan (niveau 3)
Dirushee

Messages postés : 27
Date d'inscription : 13/08/2011
Jauge LPC :
Equipement visible 89152714002 / 1002 / 100Equipement visible 8915271400


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptySam 13 Aoû 2011 - 18:48

J'en connais qu'un XD autant pour moi, je m’abstiens. Smile
Revenir en haut Aller en bas
Brandobscure001
Paladin (niveau 1)
Paladin (niveau 1)
Brandobscure001

Masculin
Messages postés : 544
Date d'inscription : 02/08/2011
Jauge LPC :
Equipement visible 89152714006 / 1006 / 100Equipement visible 8915271400

Equipement visible Membre10
Equipement visible Partag10
Equipement visible Projet16
Equipement visible Collec12


Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible EmptySam 13 Aoû 2011 - 18:53

J'ai répondu au script que je demande sur l'autre forum ^^
Revenir en haut Aller en bas
Contenu sponsorisé




Equipement visible Empty
MessageSujet: Re: Equipement visible   Equipement visible Empty

Revenir en haut Aller en bas
 
Equipement visible
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [XP] Auto-équipement
» Slot équipement
» [VX] HUD - Affichage de l'équipement sur la map
» [XP]Menu équipement amélioré
» Equipement Skill System

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Le Palais Créatif :: ~ PARTAGE ~ :: Scripts et plugins :: RPG Maker XP :: Système-
Sauter vers: