Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.


 
AccueilSiteDernières imagesRechercherS'enregistrerConnexion
Le Deal du moment : -55%
Coffret d’outils – STANLEY – ...
Voir le deal
21.99 €

 

 [RMXP] Durability System

Voir le sujet précédent Voir le sujet suivant Aller en bas 
Auteur Message
Mat
Roi
Roi
Mat

Masculin Nombre de messages : 2260
Age : 37
Point(s) Fort(s) : Méthode CPF / Briseur de chevilles / Serial Killer
Point(s) Faible(s) : Trop technique
Niveau RPG Maker : On ne peut être juge et parti...
Logiciel préféré : Visual Studio 2008
Date d'inscription : 12/08/2006

[RMXP] Durability System Vide
MessageSujet: [RMXP] Durability System   [RMXP] Durability System Icon_minitimeMer 9 Juil 2008 - 20:16

Durability System

Auteur : Mat

Description :

Ce système permet d'appliquer une durabilité aux armes et armures qui se désagrège aux fils des combats.

Sommaire

1.Scripts
1.1 Dépendances
1.2 Script de Base : Partie 1, Partie 2
1.3 Adapteur pour Window
1.4 Scene Repare
2. Explication


Dernière édition par Mat le Mer 9 Juil 2008 - 20:34, édité 4 fois
Revenir en haut Aller en bas
Mat
Roi
Roi
Mat

Masculin Nombre de messages : 2260
Age : 37
Point(s) Fort(s) : Méthode CPF / Briseur de chevilles / Serial Killer
Point(s) Faible(s) : Trop technique
Niveau RPG Maker : On ne peut être juge et parti...
Logiciel préféré : Visual Studio 2008
Date d'inscription : 12/08/2006

[RMXP] Durability System Vide
MessageSujet: Re: [RMXP] Durability System   [RMXP] Durability System Icon_minitimeMer 9 Juil 2008 - 20:18

1. Script

1.1 Dépendances

Database Management
Advanced Items


Dernière édition par Mat le Sam 19 Juil 2008 - 18:03, édité 1 fois
Revenir en haut Aller en bas
Mat
Roi
Roi
Mat

Masculin Nombre de messages : 2260
Age : 37
Point(s) Fort(s) : Méthode CPF / Briseur de chevilles / Serial Killer
Point(s) Faible(s) : Trop technique
Niveau RPG Maker : On ne peut être juge et parti...
Logiciel préféré : Visual Studio 2008
Date d'inscription : 12/08/2006

[RMXP] Durability System Vide
MessageSujet: Re: [RMXP] Durability System   [RMXP] Durability System Icon_minitimeMer 9 Juil 2008 - 20:20

1.2 Script de base

Partie 1 :

Code:

#===============================================================================
# ■ Durability System
#-------------------------------------------------------------------------------
# Auteur  : Mat
# Version : 1.0
# Date    : 09/07/2008
#-------------------------------------------------------------------------------
# Ce système permet d'appliquer une durabilité aux armes et armures qui se
# désagrège aux fils des combats.
#
# Si le Game_Actor est touché, son armure perds en durabilité
# Si le Game_Actor est en garde, son bouclier perds en durabilité
# Si le coup est un coup critique, son casque perds en durabilité
# Si l'attaquant réussi son coup, son arme perd en durabilité
#
# Dépendance :
# - Database Management
# - Advanced Item
#-------------------------------------------------------------------------------
# Utilisation :
#
#    1) Installation :
#      Copier le Database Management dans un script au dessus de Main.
#      Copier tous les scripts Advanced_Item dans un script au dessus de Main.
#      Copier ce script dans un nouveau script entre Database Management
#      et Main.
#
#    2) Utilisation :
#      Lancer une première fois votre jeu. Le jeu créera ainsi deux dossiers
#      nommer "ArmorDurability Data" et "WeaponDurability Data"dans le dossier
#      de votre jeu, contenant un fichier tout deux un fichier nommé
#      "template.dbsl". Il suffit de copier le template et de remplir les
#      différents champs et ceci pour chaque arme et armure.
#
#-------------------------------------------------------------------------------
# Personnalisation :
# Durabilité par défaut lorsqu'elle n'est pas défini dans la base de données :
DEFAULT_DURABILITY = 1000
# Reduction de la durabilité lors d'un coup :
DURABILITY_REDUCE = 1
# Cout d'un point de reparation :
DURABILITY_PRICE = 1
#===============================================================================

Database.create_table("WeaponDurability") { |t|
  t.column :weapon_id, :integer, 0
  t.column :max_durability, :integer, 0
}

Database.create_table("ArmorDurability") { |t|
  t.column :armor_id, :integer, 0
  t.column :max_durability, :integer, 0
}

#===============================================================================
# ▼ Game_Weapon
#-------------------------------------------------------------------------------
# Ajout des attributs durability et max_durability
#===============================================================================
class Game_Weapon
 
  attr_accessor :durability    #durabilité actuelle de l'arme
  attr_accessor :max_durability #durabilité maximale de l'arme

  #=============================================================================
  # ● setup
  #    weapon_id : id de l'objet RPG::Weapon servant à l'initialisation.
  #=============================================================================
  alias durability_setup_weapon setup
  def setup(weapon_id)
    durability_setup_weapon(weapon_id)
    weapon = Database::WeaponDurability.find { |weapon|
      weapon.weapon_id == weapon_id
    }
    @max_durability = weapon != nil ? weapon.max_durability : DEFAULT_DURABILITY
    @durability = @max_durability   
  end
 
  #=============================================================================
  # ● price
  #-----------------------------------------------------------------------------
  # Définition du prix de l'arme ponctué par sa durabilité
  #=============================================================================
  def price
    return (@price * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● atk
  #-----------------------------------------------------------------------------
  # Définition de l'atk de l'arme ponctué par sa durabilité
  #=============================================================================
  def atk
    return (@atk * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● pdef
  #-----------------------------------------------------------------------------
  # Définition du pdef de l'arme ponctué par sa durabilité
  #=============================================================================
  def pdef
    return (@pdef * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● mdef
  #-----------------------------------------------------------------------------
  # Définition du mdef de l'arme ponctué par sa durabilité
  #=============================================================================
  def mdef
    return (@mdef * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● str_plus
  #-----------------------------------------------------------------------------
  # Définition du str_plus de l'arme ponctué par sa durabilité
  #=============================================================================
  def str_plus
    return (@str_plus * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● dex_plus
  #-----------------------------------------------------------------------------
  # Définition du dex_plus de l'arme ponctué par sa durabilité
  #=============================================================================
  def dex_plus
    return (@dex_plus * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● agi_plus
  #-----------------------------------------------------------------------------
  # Définition du agi_plus de l'arme ponctué par sa durabilité
  #=============================================================================
  def agi_plus
    return (@agi_plus * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● int_plus
  #-----------------------------------------------------------------------------
  # Définition du int_plus de l'arme ponctué par sa durabilité
  #=============================================================================
  def int_plus
    return (@int_plus * (@durability.to_f / @max_durability.to_f)).to_i
  end

  #=============================================================================
  # ● repare
  #-----------------------------------------------------------------------------
  # Redonne toute sa durabilité à l'arme
  #=============================================================================
  def repare
    @durability = @max_durability   
  end
 
  #=============================================================================
  # ● repare_price
  #-----------------------------------------------------------------------------
  # Définie le prix de réparation de l'arme
  #=============================================================================
  def repare_price
    return (@max_durability - @durability) * DURABILITY_PRICE
  end
   
  #=============================================================================
  # ● reduce_durability
  #    reduce : le nombre par lequelle sera reduit la durabilité
  #-----------------------------------------------------------------------------
  # Permet de diminuer la durabilité de l'arme
  #=============================================================================
  def reduce_durability(reduce)
    @durability -= reduce if(@durability > 0)
  end
 
end

#===============================================================================
# ▼ Game_Armor
#-------------------------------------------------------------------------------
# Ajout des attributs durability et max_durability
#===============================================================================
class Game_Armor
 
  attr_accessor :durability    #durabilité actuelle de l'armure
  attr_accessor :max_durability #durabilité maximale de l'armure

  #=============================================================================
  # ● setup
  #    armor_id : id de l'objet RPG::Armor servant à l'initialisation.
  #=============================================================================
  alias durability_setup_armor setup
  def setup(armor_id)
    durability_setup_armor(armor_id)
    armor = Database::ArmorDurability.find { |armor|
      armor.armor_id == armor_id
    }
    @max_durability = armor ? armor.max_durability : DEFAULT_DURABILITY
    @durability = @max_durability
  end
 
  #=============================================================================
  # ● price
  #-----------------------------------------------------------------------------
  # Définition du prix de l'armure ponctué par sa durabilité
  #=============================================================================
  def price
    return (@price * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● atk
  #-----------------------------------------------------------------------------
  # Définition de l'atk de l'armure ponctué par sa durabilité
  #=============================================================================
  def atk
    return (@atk * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● pdef
  #-----------------------------------------------------------------------------
  # Définition du pdef de l'armure ponctué par sa durabilité
  #=============================================================================
  def pdef
    return (@pdef * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● mdef
  #-----------------------------------------------------------------------------
  # Définition du mdef de l'armure ponctué par sa durabilité
  #=============================================================================
  def mdef
    return (@mdef * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● str_plus
  #-----------------------------------------------------------------------------
  # Définition du str_plus de l'armure ponctué par sa durabilité
  #=============================================================================
  def str_plus
    return (@str_plus * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● dex_plus
  #-----------------------------------------------------------------------------
  # Définition du dex_plus de l'armure ponctué par sa durabilité
  #=============================================================================
  def dex_plus
    return (@dex_plus * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● agi_plus
  #-----------------------------------------------------------------------------
  # Définition du agi_plus de l'armure ponctué par sa durabilité
  #=============================================================================
  def agi_plus
    return (@agi_plus * (@durability.to_f / @max_durability.to_f)).to_i
  end
 
  #=============================================================================
  # ● int_plus
  #-----------------------------------------------------------------------------
  # Définition du int_plus de l'armure ponctué par sa durabilité
  #=============================================================================
  def int_plus
    return (@int_plus * (@durability.to_f / @max_durability.to_f)).to_i
  end

  #=============================================================================
  # ● repare
  #-----------------------------------------------------------------------------
  # Redonne toute sa durabilité à l'armure
  #=============================================================================
  def repare
    @durability = @max_durability   
  end
 
  #=============================================================================
  # ● repare_price
  #-----------------------------------------------------------------------------
  # Définie le prix de réparation de l'armure
  #=============================================================================
  def repare_price
    return (@max_durability - @durability) * DURABILITY_PRICE
  end
   
  #=============================================================================
  # ● reduce_durability
  #    reduce : le nombre par lequelle sera reduit la durabilité
  #-----------------------------------------------------------------------------
  # Permet de diminuer la durabilité de l'armure
  #=============================================================================
  def reduce_durability(reduce)
    @durability -= reduce if(@durability > 0)
  end
end


Dernière édition par Mat le Mer 9 Juil 2008 - 20:23, édité 1 fois
Revenir en haut Aller en bas
Mat
Roi
Roi
Mat

Masculin Nombre de messages : 2260
Age : 37
Point(s) Fort(s) : Méthode CPF / Briseur de chevilles / Serial Killer
Point(s) Faible(s) : Trop technique
Niveau RPG Maker : On ne peut être juge et parti...
Logiciel préféré : Visual Studio 2008
Date d'inscription : 12/08/2006

[RMXP] Durability System Vide
MessageSujet: Re: [RMXP] Durability System   [RMXP] Durability System Icon_minitimeMer 9 Juil 2008 - 20:21

Partie 2 :

Code:

#===============================================================================
# ▼ Game_Actor
#-------------------------------------------------------------------------------
# Redéfiniton de la méthode attack_effect afin de prendre en compte la réduction
# de durabilité des armures.
#===============================================================================
class Game_Actor < Game_Battler
 
  #=============================================================================
  # ● attack_effect
  #    attaker : attaquant
  #-----------------------------------------------------------------------------
  # Si le Game_Actor est touché, son armure perds en durabilité
  # Si le Game_Actor est en garde, son bouclier perds en durabilité
  # Si le coup est un coup critique, son casque perds en durabilité
  #=============================================================================
  def attack_effect(attacker)
    self.critical = false
    hit_result = (rand(100) < attacker.hit)
    if hit_result == true
      if @armor1 != nil
        @armor1.reduce_durability(DURABILITY_REDUCE)
      end
      atk = [attacker.atk - self.pdef / 2, 0].max
      self.damage = atk * (20 + attacker.str) / 20
      self.damage *= elements_correct(attacker.element_set)
      self.damage /= 100
      if self.damage > 0
        if rand(100) < 4 * attacker.dex / self.agi
          self.damage *= 2
          self.critical = true
          if @armor3 != nil
            @armor3.reduce_durability(DURABILITY_REDUCE)
          end
        end
        if self.guarding?
          self.damage /= 2
          if @armor2 != nil
            @armor2.reduce_durability(DURABILITY_REDUCE)
          end
        end
      end
      if self.damage.abs > 0
        amp = [self.damage.abs * 15 / 100, 1].max
        self.damage += rand(amp+1) + rand(amp+1) - amp
      end
      eva = 8 * self.agi / attacker.dex + self.eva
      hit = self.damage < 0 ? 100 : 100 - eva
      hit = self.cant_evade? ? 100 : hit
      hit_result = (rand(100) < hit)
    end
    if hit_result == true
      remove_states_shock
      self.hp -= self.damage
      @state_changed = false
      states_plus(attacker.plus_state_set)
      states_minus(attacker.minus_state_set)
    else
      self.damage = "Miss"
      self.critical = false
    end
    return true
  end
 
 
end 

#===============================================================================
# ▼ Game_Ennemy
#-------------------------------------------------------------------------------
# Redéfiniton de la méthode attack_effect afin de prendre en compte la réduction
# de durabilité de l'arme.
#===============================================================================
class Game_Enemy < Game_Battler

  #=============================================================================
  # ● attack_effect
  #    attaker : attaquant
  #-----------------------------------------------------------------------------
  # Si l'attaquant réussi son coup, son arme perd en durabilité
  #=============================================================================
  def attack_effect(attacker)
    self.critical = false
    hit_result = (rand(100) < attacker.hit)
    if hit_result == true
      if attacker.weapon != nil
        attacker.weapon.reduce_durability(DURABILITY_REDUCE)
      end
      atk = [attacker.atk - self.pdef / 2, 0].max
      self.damage = atk * (20 + attacker.str) / 20
      self.damage *= elements_correct(attacker.element_set)
      self.damage /= 100
      if self.damage > 0
        if rand(100) < 4 * attacker.dex / self.agi
          self.damage *= 2
          self.critical = true
        end
        if self.guarding?
          self.damage /= 2
        end
      end
      if self.damage.abs > 0
        amp = [self.damage.abs * 15 / 100, 1].max
        self.damage += rand(amp+1) + rand(amp+1) - amp
      end
      eva = 8 * self.agi / attacker.dex + self.eva
      hit = self.damage < 0 ? 100 : 100 - eva
      hit = self.cant_evade? ? 100 : hit
      hit_result = (rand(100) < hit)
    end
    if hit_result == true
      remove_states_shock
      self.hp -= self.damage
      @state_changed = false
      states_plus(attacker.plus_state_set)
      states_minus(attacker.minus_state_set)
    else
      self.damage = "Miss"
      self.critical = false
    end
    return true
  end
end
Revenir en haut Aller en bas
Mat
Roi
Roi
Mat

Masculin Nombre de messages : 2260
Age : 37
Point(s) Fort(s) : Méthode CPF / Briseur de chevilles / Serial Killer
Point(s) Faible(s) : Trop technique
Niveau RPG Maker : On ne peut être juge et parti...
Logiciel préféré : Visual Studio 2008
Date d'inscription : 12/08/2006

[RMXP] Durability System Vide
MessageSujet: Re: [RMXP] Durability System   [RMXP] Durability System Icon_minitimeMer 9 Juil 2008 - 20:21

1.3 Adapteur pour Window

Code:

#===============================================================================
# ▼ Window_Item
#===============================================================================
class Window_Item < Window_Selectable
 
  #=============================================================================
  # ● update_help
  #=============================================================================
  def update_help
    text = ""
    if self.item != nil
    text += self.item.description
      if !self.item.is_a?(Game_Item)
        text += " " + self.item.durability.to_s + "/" + self.item.max_durability.to_s
      end
    end
    @help_window.set_text(text)
  end
 
end

#===============================================================================
# ▼ Window_EquipItem
#===============================================================================
class Window_EquipItem < Window_Selectable
 
  #=============================================================================
  # ● update_help
  #=============================================================================
  def update_help
    text = ""
    if self.item != nil
    text += self.item.description
      if !self.item.is_a?(Game_Item)
        text += " " + self.item.durability.to_s + "/" + self.item.max_durability.to_s
      end
    end
    @help_window.set_text(text)
  end
 
end

#===============================================================================
# ▼ Window_EquipRight
#===============================================================================
class Window_EquipRight < Window_Selectable
 
  #=============================================================================
  # ● update_help
  #=============================================================================
  def update_help
    text = ""
    if self.item != nil
    text += self.item.description
      if !self.item.is_a?(Game_Item)
        text += " " + self.item.durability.to_s + "/" + self.item.max_durability.to_s
      end
    end
    @help_window.set_text(text)
  end
 
end

#===============================================================================
# ▼ Window_ShopSell
#===============================================================================
class Window_ShopSell < Window_Selectable
 
  #=============================================================================
  # ● update_help
  #=============================================================================
  def update_help
    text = ""
    if self.item != nil
    text += self.item.description
      if !self.item.is_a?(Game_Item)
        text += " " + self.item.durability.to_s + "/" + self.item.max_durability.to_s
      end
    end
    @help_window.set_text(text)
  end

end
Revenir en haut Aller en bas
Mat
Roi
Roi
Mat

Masculin Nombre de messages : 2260
Age : 37
Point(s) Fort(s) : Méthode CPF / Briseur de chevilles / Serial Killer
Point(s) Faible(s) : Trop technique
Niveau RPG Maker : On ne peut être juge et parti...
Logiciel préféré : Visual Studio 2008
Date d'inscription : 12/08/2006

[RMXP] Durability System Vide
MessageSujet: Re: [RMXP] Durability System   [RMXP] Durability System Icon_minitimeMer 9 Juil 2008 - 20:22

1.4 Scene Repare

Code:

#===============================================================================
# ▼ Scene_Repare
#-------------------------------------------------------------------------------
#  Cette scène permet de réparer les armes et armures
#-------------------------------------------------------------------------------
#  Pour appeler cette scene, utiliser le code $scene = Scene_Repare.new
#===============================================================================
class Scene_Repare
 
  #=============================================================================
  # ● main
  #=============================================================================
  def main
    @help_window = Window_Help.new
    @command_window = Window_RepareCommand.new

    @gold_window = Window_Gold.new
    @gold_window.x = 480
    @gold_window.y = 64
   
    @repare_window = Window_Repare.new
    @repare_window.active = false
    @repare_window.help_window = @help_window
 
    Graphics.transition

    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    Graphics.freeze
    @help_window.dispose
    @command_window.dispose
    @gold_window.dispose
    @repare_window.dispose
  end
 
  #=============================================================================
  # ● update
  #=============================================================================
  def update
    @help_window.update
    @command_window.update
    @gold_window.update
    @repare_window.update

    if @command_window.active
      update_command
      return
    end

    if @repare_window.active
      update_repare
      return
    end
  end
 
  #=============================================================================
  # ● update_command
  #=============================================================================
  def update_command
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      $scene = Scene_Map.new
      return
    end

    if Input.trigger?(Input::C)
      case @command_window.index
      when 0
        $game_system.se_play($data_system.decision_se)
        @command_window.active = false
        @repare_window.active = true
        @repare_window.refresh
      when 1
        $game_system.se_play($data_system.decision_se)
        $scene = Scene_Map.new
      end
      return
    end
  end
 
  #=============================================================================
  # ● update_repare
  #=============================================================================
  def update_repare
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @command_window.active = true
      @repare_window.active = false
      @help_window.set_text("")
      return
    end
    if Input.trigger?(Input::C)
      @item = @repare_window.item
      if @item == nil or @item.is_a?(Game_Item) or @item.repare_price == 0
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      $game_system.se_play($data_system.shop_se)
      @item.repare
      $game_party.lose_gold(@item.repare_price)
      @gold_window.refresh
      @repare_window.refresh
    end
  end
 
end

#===============================================================================
# ▼ Window_RepareCommand
#===============================================================================
class Window_RepareCommand < Window_Selectable

  #=============================================================================
  # ● initialize
  #=============================================================================
  def initialize
    super(0, 64, 480, 64)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $fontface
    self.contents.font.size = $fontsize
    @item_max = 2
    @column_max = 2
    @commands = ["Reparer", "Annuler"]
    refresh
    self.index = 0
  end

  #=============================================================================
  # ● refresh
  #=============================================================================
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i)
    end
  end

  #=============================================================================
  # ● draw_item
  #=============================================================================
  def draw_item(index)
    x = 4 + index * 240
    self.contents.draw_text(x, 0, 128, 32, @commands[index])
  end
end

#===============================================================================
# ▼ Window_Repare
#===============================================================================
class Window_Repare < Window_Selectable

  #=============================================================================
  # ● initialize
  #=============================================================================
  def initialize
    super(0, 128, 640, 352)
    @column_max = 1
    refresh
    self.index = 0
  end

  #=============================================================================
  # ● refresh
  #=============================================================================
  def item
    return @data[self.index]
  end

  #=============================================================================
  # ● refresh
  #=============================================================================
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = $game_party.items + $game_party.weapons + $game_party.armors
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 32)
      self.contents.font.name = $fontface
      self.contents.font.size = $fontsize
      for i in 0...@item_max
        draw_item(i)
      end
    end
  end
 
  #=============================================================================
  # ● draw_item
  #=============================================================================
  def draw_item(index)
    item = @data[index]
    if !item.is_a?(Game_Item) && (item.durability != item.max_durability)
      self.contents.font.color = normal_color
    else
      self.contents.font.color = disabled_color
    end
    x = 4
    y = index * 32
    rect = Rect.new(x, y, self.width / @column_max - 32, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    bitmap = RPG::Cache.icon(item.icon_name)
    opacity = self.contents.font.color == normal_color ? 255 : 128
    self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
    self.contents.draw_text(x + 28, y, 212, 32, item.name, 0)
    text = item.is_a?(Game_Item) ? "" : item.repare_price.to_s
    self.contents.draw_text(x + 256, y, 24, 32, text , 2)
  end

  #=============================================================================
  # ● update_help
  #=============================================================================
  def update_help
    text = ""
    if self.item != nil
    text += self.item.description
      if !self.item.is_a?(Game_Item)
        text += " " + self.item.durability.to_s + "/" + self.item.max_durability.to_s
      end
    end
    @help_window.set_text(text)
  end
 
end
Revenir en haut Aller en bas
Mat
Roi
Roi
Mat

Masculin Nombre de messages : 2260
Age : 37
Point(s) Fort(s) : Méthode CPF / Briseur de chevilles / Serial Killer
Point(s) Faible(s) : Trop technique
Niveau RPG Maker : On ne peut être juge et parti...
Logiciel préféré : Visual Studio 2008
Date d'inscription : 12/08/2006

[RMXP] Durability System Vide
MessageSujet: Re: [RMXP] Durability System   [RMXP] Durability System Icon_minitimeMer 9 Juil 2008 - 20:33

2. Explication

Installation :

Copier le Database Management dans un script au dessus de Main.
Copier tous les scripts Advanced_Item dans un script au dessus de Main.
Copier ce script dans un nouveau script au dessus de Main.

Utilisation :

Lancer une première fois votre jeu. Le jeu créera ainsi deux dossiers nommer "ArmorDurability Data" et "WeaponDurability Data"dans le dossier de votre jeu, contenant un fichier tout deux un fichier nommé "template.dbsl". Il suffit de copier le template et de remplir les différents champs et ceci pour chaque arme et armure.

Appel de la scène de réparation:

Pour appeler cette scène, utiliser le code $scene = Scene_Repare.new

Exemple

Copier-coller dans un fichier le texte suivant dans WeaponDurability Data:
Citation :

Database::WeaponDurability
weapon_id: 1
max_durability: 2000
ce qui aura pour effet de donner 2000 comme durabilité maximale.


Note : il n'est pas nécessaire de définir la durabilité de toutes les armes et armures. En effet, si celle-ci n'est pas défini, elle prendra automatiquement la valeur de la constante DEFAULT_DURABILITY défini en début de script.
Revenir en haut Aller en bas
Contenu sponsorisé




[RMXP] Durability System Vide
MessageSujet: Re: [RMXP] Durability System   [RMXP] Durability System Icon_minitime

Revenir en haut Aller en bas
 

[RMXP] Durability System

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

Permission de ce forum: Vous ne pouvez pas répondre aux sujets dans ce forum
 :: Partage de scripts :: Systèmes -
|
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Forum gratuit