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



 
AccueilPortailRechercherDernières imagesS'enregistrerConnexion
-40%
Le deal à ne pas rater :
Tefal Ingenio Emotion – Batterie de cuisine 10 pièces (induction, ...
59.99 € 99.99 €
Voir le deal

 

 [RGSS2]Apprendre des skills avec des objet etc...

Aller en bas 
AuteurMessage
Sansonic
Auguste Polichinelle
Auguste Polichinelle
Sansonic


Masculin
Nombre de messages : 1116
Age : 31
Projet(s) en cours : ...
Niveau Rpg Maker : jugez !...
Date d'inscription : 28/07/2007

[RGSS2]Apprendre des skills avec des objet etc... Empty
MessageSujet: [RGSS2]Apprendre des skills avec des objet etc...   [RGSS2]Apprendre des skills avec des objet etc... EmptyVen 18 Juil 2008, 23:46

Voila un script très utiles, aussi bien pour créer un A-RPG, que pour de simple extensions de jeux !

Fonction:
Permet d'apprendre des skills/compétences/habilités par l'intermédiaire des objets...
Référez vous au instructions que j'y ai noté ...

script:

Le nom n'a que peu d'importance.
Code:
#=================================================================
#  Skill Teaching Equipment & Items
#  Version 1.0
#  Author: modern algebra (rmrk.net)
#  Date: January 27, 2008
#  Traduction par: Sansonic
#  Pour http://rpgfusionv2.1fr1.net/
#  référez vous à ce site pour plus d'infos
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  Instructions:
#    Insérez le script au dessus de Main.   
#~ Pour configurer votre base de données, voir le
#~ Section de configuration des lignes 29, 66 et 97 (par défaut, une fois que vous avez
#~ configuré quelques-unes des données, cela va changer)
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# ** RPG
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  Adds an additional stat, skill_id, to weapons, armors, and items
#=================================================================

module RPG
#=================================================================
# ** Objet
#=================================================================

class Item
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Skill ID
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def skill_id
    learn_skill = 0
    case @id
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # * CONFIGURATIONS
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    #  C'est très simple pour définir l'objet et le skill qu'il permettra de faire faite ceci:
    #
    #    when
    #      learn_skill =
    #
    # Une fois remplit, copier/coller ce code à la ligne 47
    # Il y a deux exemple en dessous
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    when 1 # Potion
      learn_skill = 1 # Heal
    when 2 # High Potion
      learn_skill = 69 # Poison Edge
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # * FIN DES CONFIGURATIONS
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    end
    return learn_skill
  end
end 

#================================================================
# ** Arme
#================================================================

class Weapon
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Skill ID
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def skill_id
    learn_skill = 0
    case @id
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # * CONFIGURATIONS
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    #Idem que pour les objets:
    # 
    #
    #    when
    #      learn_skill =
    #
    #Cette fois mettez le code à partir de la ligne 81/82 il y a comme pour les objet deux exemples
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    when 1 # Bronze Sword
      learn_skill = 1 # Heal
    when 2 # Iron Sword
      learn_skill = 69 # Poison Edge
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # * FIN DES CONFIGURATIONS
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    end
    return learn_skill
  end
end 

#=================================================================
# ** Armure
#=================================================================

class Armor
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Skill ID
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def skill_id
    learn_skill = 0
    case @id
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # * CONFIGURATIONS
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    #Idem...
    #
    #    when
    #      learn_skill =
    #
    #
    #Mettez le à la ligne 112 il y a aussi deux exemples
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    when 1 # Bronze Shield
      learn_skill = 1 # Heal
    when 2 # Iron Shield
      learn_skill = 69 # Poison Edge
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # * FIN DES CONFIGURATIONS
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    end
    return learn_skill
  end
end
end

#==================================================================
# ** Game_Actor
#------------------------------------------------------------------------------
#  This class handles the actor. It's used within the Game_Actors class
#  ($game_actors) and refers to the Game_Party class ($game_party).
#==================================================================

class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # * Change Equipment
  #    equip_type : type of equipment
  #    id    : weapon or armor ID (If 0, remove equipment)
  #--------------------------------------------------------------------------
  alias ma_skill_teaching_items_equipment_change change_equip
  def change_equip (equip_type, item, test = false)
    last_item = equips[equip_type]
    # Forget the skill from what was previously equipped
    unless test
      skill_id = last_item.nil? ? 0 : last_item.skill_id
      forget_skill (skill_id) if @unnatural_skills.include? (skill_id)
      @unnatural_skills.delete (skill_id)
    end
    # Run original method
    ma_skill_teaching_items_equipment_change (equip_type, item, test)
    unless test
      skill_id = item.nil? ? 0 : item.skill_id
      unless @skills.include? (skill_id) || skill_id == 0
        learn_skill (skill_id)
        @unnatural_skills.push (skill_id)
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Setup
  #    actor_id : actor ID
  #--------------------------------------------------------------------------
  alias ma_skill_teaching_items_actor_setup setup
  def setup (actor_id)
    @unnatural_skills = []
    # Run original method
    ma_skill_teaching_items_actor_setup (actor_id)
    for item in equips
      next if item.nil?
      skill_id = item.skill_id
      next if skill_id == 0 || @skills.include? (skill_id)
      @unnatural_skills.push (skill_id)
      learn_skill (skill_id)
    end
  end
end

#==============================================================================
# ** Game_Battler (Skill Teaching modification)
#------------------------------------------------------------------------------
#  This class deals with battlers. It's used as a superclass for the Game_Actor
#  and Game_Enemy classes.
#==============================================================================

class Game_Battler
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Item Test
  #      user : person using item
  #      item : the item being used
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias ma_skill_teaching_items_test_item item_test
  def item_test (user, item)
    effective = ma_skill_teaching_items_test_item (user, item)
    if self.class != Game_Enemy
      effective |= !@skills.include? (item.skill_id)
    end
    return effective
  end
  #--------------------------------------------------------------------------
  # * Application of Item Effects
  #    item : item
  #--------------------------------------------------------------------------
  alias ma_skill_teaching_items_effect_item item_effect
  def item_effect (user, item)
    # Run original method
    ma_skill_teaching_items_effect_item (user, item)
    if item.skill_id != 0 && self.class != Game_Enemy && !@skills.include? (item.skill_id)
      @unnatural_skills.delete (item.skill_id)
      learn_skill (item.skill_id)
    end
  end
end
Revenir en haut Aller en bas
http://callgame.bbactif.com/portal.htm
 
[RGSS2]Apprendre des skills avec des objet etc...
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Objet scan
» RGSS2 -> QuickSave

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Fusion :: BANQUE DU CODE :: Antre des Scripts :: Map-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser