Buscador avanzado
Navegación
 Portal
 Índice
 Miembros
 Perfil
 FAQ
 Buscar
¿Quién está en línea?
En total hay 2 usuarios en línea: 0 Registrados, 0 Ocultos y 2 Invitados

Ninguno

[ Ver toda la lista ]


La mayor cantidad de usuarios en línea fue 30 el Lun Dic 21, 2015 12:37 am.
Últimos temas
» MundoDeluxe cierra - Muchas Gracias a todos
por ZAnimeMaker Miér Mar 02, 2016 3:45 pm

» Recomendaciones para subir aportes
por Xpe Mar Ene 05, 2016 5:00 pm

» dUDA Sobre mi Rpg maker XP en ES
por SketchDeluxe Sáb Ene 02, 2016 7:26 pm

» Arruina el anterior y pide un deseo
por asdseba123 Mar Dic 29, 2015 11:07 pm

» ¿Qué haremos en nuestros días libres?
por bathory123 Sáb Dic 26, 2015 4:02 pm

» Monster Strike (Anime)
por kyonides Sáb Dic 26, 2015 3:33 am

» Galeria de avatares
por bathory123 Vie Dic 25, 2015 6:57 pm

» Feliz Navidad 2015
por kyonides Vie Dic 25, 2015 2:18 am

» Battlers laterales(Ragnarok)
por Maghno Miér Dic 23, 2015 6:57 pm

» Buenas a todos!
por SketchDeluxe Mar Dic 22, 2015 4:36 pm

Publicidad
Afiliados


KBlueMage XP - Mago Azul

Ver el tema anterior Ver el tema siguiente Ir abajo

KBlueMage XP - Mago Azul

Mensaje por kyonides el Sáb Oct 24, 2015 12:33 pm

KBlueMage XP
v 1.2.1


por Kyonides-Arkanthos
 
Con este sencillo script podrán hacer que los héroes que Uds. escojan puedan aprender habilidades a lo mago azul de Final Fantasy. Solo hay que modificar los valores de unas cuantas Constantes y eso es todo.

Esta versión permite aprender siempre las habilidades sin importar su sistema de batallas, pero el aviso en forma de ventana solo estará disponible para el Sistema de Batallas por Defecto de XP.

Lo interesante es que les permite utilizar estados o states para no permitirle al mago azul que aprenda las habilidades por estar "enfermo". Si no les gusta o no necesitan esta opción, la pueden deshabilitar en la Constante STATESSTOPBML.

BLUEMAGES sirva para definir a los Magos Azules mediante los IDs de Actores.

BLUEMAGIC sirve para definir las habilidades que pueden aprender los magos azules al ser víctimas de estas la primera vez. 0 es el valor para todas las habilidades, los demás valores (uno tras otro separados por comas) son para esas habilidades únicamente.

NOBMLEARNING sirve para evitar que del todo aprendan ciertas habilidades, como la de algún jefe me imagino yo.

ANTIBMSTATES sirve para definir los estados o states que pueden impedir el aprendizaje de técnicas.

BMLEARNED está ahí para indicar en una ventana el aviso del aprendizaje de x habilidad. (Esto último es para el Sistema de Batallas de XP solamente).

La razón para definirlo mediante IDs de Actores es muy simple, mi script les da la facilidad de no solo crear personajes cuya clase sea por defecto la de un Mago Azul sino que también les abre la posibilidad de crear personajes híbridos, o sea, un Mago Negro con complejo de Mago Azul o un Luchador que descubre que es descendiente de una antigua familia de Magos Azules. Como pueden ver ahora, mi script no los fuerza a elegir un solo camino a seguir, pueden escoger entre al menos 2 o 3.
 
Desde la Versión 1.1


IGNORESUCCESSRATES les permite mantener la capacidad de siempre aprender una técnica (true) o de empezar a creer en la suerte (false o nil).

SUCCESSRATES les permite configurar entre qué niveles se va a tener cierto porcentaje de éxito en el aprendizaje de una técnica que los haya golpeado, IGNORESUCCESSRATES debe ser igual a false o nil si desean que se utilice esto.

Ejemplo:

SUCCESSRATES = {1..12 => 25}

Indica que entre el primer y el doceavo nivel se tiene una tasa de éxito del 25%.

El porcentaje SIEMPRE debe ser un múltiplo de 5.
 
Desde la Versión 1.2.1


IGNOREACCESSORIES les permite mantener la capacidad de aprender una técnica sin utilizar un accesorio específico o pueden deshabilitar esta Constante para exigirle que lo equipe al menos en determinados casos desde antes de que pueda ser golpeado por dicha técnica.

ACCESSORIES les permite configurar qué accesorios les permitirán aprender ciertas técnicas. Si no aparece un accesorio, entonces se podrá aprender la técnica normalmente. Sin embargo, si está deshabilitada la constante IGNORESUCCESSRATES, o sea, que habilitaron lo de contar suerte para aprenderla, igual no aprenderían la técnica si no tuvieron esa suerte necesaria para hacerlo.

SCRIPT Versión 1.2.1

Código:
#  KBlueMage XP - Default BS Version
#  v 1.2.1 - 2012-12-23
#  v 1.0   - 2012-08-26
#  Scripter: Kyonides-Arkanthos

#  No script call needed

module BlueSys
  # Hero IDs - They will learn skills right after being hit by them
  BLUEMAGES = [8]
  # Skill IDs - 0 : all IDs, any other number : those skills can be learned
  BLUEMAGIC = [0]
  # Skill IDs - Any number : Blue mages cannot learn them
  NOBMLEARNING = []
  # State IDs - States that may prevent blue mages from learning skills
  ANTIBMSTATES = []#[3, 6, 12]
  # Boolean (true or false) - States may prevent you from learning skills
  STATESTOPBML = false#true
  # String - Tell the player that he or she learned a new skill
  BMLEARNED = ' aprendió la habilidad de '
  # This version of my script adds the possibility of failing to learn a skill
  # Set to true if you want to always learn the skill, false if you feel lucky
  IGNORESUCCESSRATES = false
  # How probable is it for the Blue Mage to learn a skill after being hit
  # First Level..Last Level => Multiples of 5
  SUCCESSRATES = { 1..9 => 15, 10..21 => 20,
    22..38 => 25, 39..62 => 30,
    63..87 => 35, 88..100 => 40 }
  # NO NEED TO EQUIP ACCESSORIES to allow BM to learn some skills: true or false
  IGNOREACCESSORIES = false
  # Accessory ID => Array of Skill IDs
  ACCESSORIES = { 28 => [8, 11] }
  @bmlearned = [] # Leave It Alone!!
  def self.learned_skill(actor_name, skill)
    @bmlearned << [actor_name, $data_skills[skill].name]
  end

  def self.new_skills; @bmlearned end

  def self.clear_skills; @bmlearned.clear end
end

class Array
  def shuffle
    hsh = {}
    self.size.times {|n| index = rand(1000000)
      index = !hsh.keys.include?(index)? n : n + rand(1000000)
      hsh[index] = self[n] }
    hsh.values
  end

  def shuffle!() self[0..-1] = self.shuffle end
end

class Game_Actor
  alias kyon_blue_magic_gm_act_sk_eff skill_effect
  def skill_effect(user, skill)
    effective = kyon_blue_magic_gm_act_sk_eff(user, skill)
    afflicted = antibluemagic_states?
    learn_blue_magic(skill, afflicted, effective)
    return effective
  end

  def antibluemagic_states?
    return false if @states.empty? or !BlueSys::STATESTOPBML
    afflicted = @states.map {|s| break if BlueSys::ANTIBMSTATES.include?(s)}
    return afflicted.nil?
  end

  def learn_blue_magic(skill, afflicted, effective)
    if !afflicted and effective and BlueSys::BLUEMAGES.include?(self.id) and
        (BlueSys::BLUEMAGIC.include?(skill.id) or BlueSys::BLUEMAGIC[0] == 0)
      return if BlueSys::NOBMLEARNING.include?(skill.id)
      unless BlueSys::IGNORESUCCESSRATES
        key = BlueSys::SUCCESSRATES.keys.select {|k| k.include?(@level) }[0]
        success = [true] * (BlueSys::SUCCESSRATES[key] / 5)
        success += [nil] * (20 - success.size)
        success = success[rand(20)]
        return unless success
      end
      unless BlueSys::IGNOREACCESSORIES
        req = BlueSys::ACCESSORIES.select{|a, s| s.include?(skill.id)}.flatten
        armorid_ok = req.empty? ? nil : req[0] == @armor4_id
        return unless req.empty? or armorid_ok
      end
      learned = learn_skill(skill.id)
      BlueSys.learned_skill(self.name, skill.id) if learned
    end
  end
end

class Scene_Battle
  alias kyon_blue_magic_sc_bat_up_ph4_s6 update_phase4_step6
  def update_phase4_step6
    if @wait_count > 0
      @wait_count -= 1
      return
    end
    unless BlueSys.new_skills.empty?
      name, skill = BlueSys.new_skills.shift
      @help_window.set_text(name + BlueSys::BMLEARNED + skill, 1)
      @help_window.visible = true if !@help_window.visible
      @wait_count = 60
    end
    return if @wait_count > 0
    kyon_blue_magic_sc_bat_up_ph4_s6
  end
end
avatar
kyonides
Usuario VIP
Usuario VIP

Mensajes : 66
Fecha de inscripción : 09/03/2009

Ver perfil de usuario

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

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