¡Bienvenido a Universo Maker!
¿Es esta la primera vez que visitas el foro? Si es así te recomendamos que te registres para tener completo acceso a todas las áreas y secciones del foro, así también podrás participar activamente en la comunidad. Si ya tienes una cuenta, conectate cuanto antes.
Iniciar Sesión Registrarme

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo Mensaje [Página 1 de 1.]

#1 [XP]Habilidades por equipamiento el Miér Feb 19, 2014 11:46 am

Reputación del mensaje :100% (1 voto)

~Night Shade

avatar
Hola a todos, vengo con un script interesante que encontré por ahí.

Autor: Atoa

Introducción:

Permite aprender habilidades cuando te equipas una espada o una armadura, creo que no necesita mas explicación.

Instrucciones:

Para Armas:
Weapon_Skills[X] = [Y]
Onde:
X = ID de arma
Y = ID de habilidad que sera aprendida.

Para Armaduras:
Armor_Skills[X] = [Y]

X = ID de armadura
Y = de habilidad que sera aprendida.

Script:

Código:
#===============================================================================
# Equipamentos com Habilidades
# por Atoa
#===============================================================================
=begin
Este script permite criar equipamentos que, enquanto estiverem equipados,
concedem novas habilidades aos personagens.
Uma vez removido os equipamentos, as habilidades são perdidas.
 
Para adicionar habilidades aos equipamentos, você deve ir ao "module Atoa"
e adicionar as IDs dos equipamentos e as skills que ele ensina.
 
Para Armas:
Weapon_Skills[X] = [Y]
Onde:
X = ID da arma
Y = ID das skills, você pode adicionar mais de uma ID separando-as por vírgula.
 
Para Armaduras:
Armor_Skills[X] = [Y]
Onde:
X = ID da armadura
Y = ID das skills, você pode adicionar mais de uma ID separando-as por vírgula.
 
=end
 
module Atoa
  Weapon_Skills = [] #Não altere esta linha
  Armor_Skills  = [] #Não altere esta linha
 
  #IDs das armas que tem Habilidades e as IDs das Habilidades
  Weapon_Skills[1] = [1]
  Weapon_Skills[2] = [2]
 
  #IDs das armaduras que tem Habilidades e as IDs das Habilidades
  Armor_Skills[1]  = [7]
  Armor_Skills[2]  = [10]
  Armor_Skills[29] = [8]
 
  #Adicione quantas linhas para armas ou armaduras você quiser
end
 
 
#===============================================================================
# Game_Actor
#===============================================================================
class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  alias equip_learn_skill_initialize initialize
  alias equip_learn_skill_equip equip
  #--------------------------------------------------------------------------
  def initialize(*args)
    @equipment_skills = []
    equip_learn_skill_initialize(*args)
    gain_equip_skills
  end
  #--------------------------------------------------------------------------
  def equip(equip_type, id)
    lose_equip_skills
    equip_learn_skill_equip(equip_type, id)
    gain_equip_skills
  end
  #--------------------------------------------------------------------------
  def lose_equip_skills
    for lose_skills in @equipment_skills
      self.forget_skill(lose_skills)
    end
    @equipment_skills = []
  end
  #--------------------------------------------------------------------------
  def gain_equip_skills
    new_skills = Atoa::Weapon_Skills[@weapon_id]
    get_new_equip_skill(new_skills)
    new_skills = Atoa::Armor_Skills[@armor1_id]
    get_new_equip_skill(new_skills)
    new_skills = Atoa::Armor_Skills[@armor2_id]
    get_new_equip_skill(new_skills)
    new_skills = Atoa::Armor_Skills[@armor3_id]
    get_new_equip_skill(new_skills)
    new_skills = Atoa::Armor_Skills[@armor4_id]
    get_new_equip_skill(new_skills)
  end
  #--------------------------------------------------------------------------
  def get_new_equip_skill(new_skills)
    if new_skills != nil
      for learning in new_skills
        if !self.skill_learn?(learning) and !@equipment_skills.include?(learning)
          @equipment_skills.push(learning)
          self.learn_skill(learning)
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  def exp=(exp)
    lose_equip_skills
    @exp = [[exp, 9999999].min, 0].max
    while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0
      @level += 1
      for j in $data_classes[@class_id].learnings
        if j.level == @level
          learn_skill(j.skill_id)
        end
      end
    end
    while @exp < @exp_list[@level]
      @level -= 1
    end
    @hp = [@hp, self.maxhp].min
    @sp = [@sp, self.maxsp].min
    gain_equip_skills
  end
end

Saludos U.Maker!

#2 Re: [XP]Habilidades por equipamiento el Miér Feb 19, 2014 3:18 pm

Aarl

avatar
¡Me gusta el script! Aunque eso de que se quiten las habilidades cuando te quitas el equipamiento no tanto. Siempre fui muy fan del sistema de habilidades del Final Fantasy Tactics. xD

Por el resto, ¡gran aporte!
+2 Makedas

Saludos~

#3 Re: [XP]Habilidades por equipamiento el Miér Feb 19, 2014 4:05 pm

Cuervoso

avatar
Oh, que bien. Es parecido al sistema del Final Fantasy Tactics. De todas maneras, supongo que no es necesario que todas las habilidades se aprendan de esta forma.

Buen aporte.

Saludos.






Cuervoso! No te pases ¬_¬

#4 Re: [XP]Habilidades por equipamiento el Miér Feb 19, 2014 4:48 pm

Ledai

avatar
Oh! interesante! y para el XP! mi preferido XDD
Gracias por aportarlo. Puede que lo use alguna vez...




Entérate de todas las novedades

Contenido patrocinado


Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.