- Editado
Autor: Kyonides Arkanthes
Introducción
Pues, este script sirve para provocar que ciertas técnicas sean capaces de curar a monstruos o héroes que ustedes hayan elegido cuando estos sean golpeados por dichas técnicas. No quiere decir que no puedan ser téc0nicas dañinas en primera instancia…
Si necesitan una excusa para implementarlas, solo digan que querían hacer divertidos sus juegos. XD
Script para XP
# * KStatsRefill XP
# Scripter : Kyonides Arkanthes
# 2019-11-06
# Este script les permite configurar héroes o monstruos que puedan ganar algunos
# puntos de vida o mana al ser golpeados por ciertas técnicas.
module KStats
REFILL_SKILL_IDS = {}# ¡Ni la volteen a ver!
# Tipo : :life para Vida o :mana para... ¡Mana!
# Lista de Héroes: IDActor => { IDTecnica => [Tipo, algún %], etc. }, etc. }
REFILL_SKILL_IDS[:actor] = {
1 => { 1 => [:life, 5], 2 => [:mana, 10] }
}
# Lista Enemigos: IDEnemigo => { IDTecnica => [Tipo, algún %], etc. }, etc. }
REFILL_SKILL_IDS[:enemy] = {
1 => { 1 => [:life, 5], 2 => [:mana, 10] }
}
end
class Game_Battler
alias :kyon_stats_refill_gm_battler_se :skill_effect
def skill_effect(user, skill)
result = kyon_stats_refill_gm_battler_se(user, skill)
refill_stats(skill.id) if result
result
end
def refill_stats(skill_id)
data = KStats::REFILL_SKILL_IDS[self.kind] || {}
data = data[self.id] || {}
stype, percent = data[skill_id]
return unless stype
if stype == :life
self.hp += total = maxhp * percent / 100
elsif stype == :mana
self.sp += total = maxsp * percent / 100
end
@damage = @damage - total rescue -total
end
end
class Game_Actor
def kind() :actor end
end
class Game_Enemy
def kind() :enemy end
end
Script para VX
# * KStatsRefill VX
# Scripter : Kyonides Arkanthes
# 2019-11-06
# Este script les permite configurar héroes o monstruos que puedan ganar algunos
# puntos de vida o mana al ser golpeados por ciertas técnicas.
module KStats
REFILL_SKILL_IDS = {}# ¡Ni la volteen a ver!
# Tipo : :life para Vida o :mana para... ¡Mana!
# Lista de Héroes: IDActor => { IDTecnica => [Tipo, algún %], etc. }, etc. }
REFILL_SKILL_IDS[:actor] = {
1 => { 1 => [:life, 5], 2 => [:mana, 10] }
}
# Lista Enemigos: IDEnemigo => { IDTecnica => [Tipo, algún %], etc. }, etc. }
REFILL_SKILL_IDS[:enemy] = {
1 => { 1 => [:life, 5], 2 => [:mana, 10] }
}
end
class Game_Battler
alias :kyon_stats_refill_gm_battler_se :skill_effect
def skill_effect(user, skill)
result = kyon_stats_refill_gm_battler_se(user, skill)
refill_stats(skill.id) if result
result
end
def refill_stats(skill_id)
data = KStats::REFILL_SKILL_IDS[self.kind] || {}
data = data[self.id] || {}
stype, percent = data[skill_id]
if stype == :life
self.hp += total = maxhp * percent / 100
@hp_damage = @hp_damage - total rescue -total
elsif stype == :mana
self.mp += total = maxmp * percent / 100
@mp_damage = @mp_damage - total rescue -total
end
end
end
class Game_Actor
def kind() :actor end
end
class Game_Enemy
def kind() :enemy end
end
Script para VX ACE
# * KStatsRefill ACE
# Scripter : Kyonides Arkanthes
# 2019-11-06
# Este script les permite configurar héroes o monstruos que puedan ganar algunos
# puntos de vida o mana al ser golpeados por ciertas técnicas.
module KStats
REFILL_SKILL_IDS = {}# ¡Ni la volteen a ver!
# Tipo : :life para Vida o :mana para... ¡Mana!
# Lista de Héroes: IDActor => { IDTecnica => [Tipo, algún %], etc. }, etc. }
REFILL_SKILL_IDS[:actor] = {
1 => { 1 => [:life, 5], 2 => [:mana, 10] }
}
# Lista Enemigos: IDEnemigo => { IDTecnica => [Tipo, algún %], etc. }, etc. }
REFILL_SKILL_IDS[:enemy] = {
1 => { 1 => [:life, 5], 2 => [:mana, 10] }
}
end
class Game_ActionResult
alias :kyon_stats_refill_gm_ar_md :make_damage
def make_damage(value, item)
kyon_stats_refill_gm_ar_md(value, item)
return unless item.is_a?(RPG::Skill)
data = KStats::REFILL_SKILL_IDS[@battler.kind] || {}
data = data[@battler.id] || {}
stype, percent = data[item.id]
if stype == :life
@hp_damage -= @battler.maxhp * percent / 100
elsif stype == :mana
@mp_damage -= @battler.maxmp * percent / 100
end
end
end
class Game_Actor
def kind() :actor end
end
class Game_Enemy
def kind() :enemy end
end
Términos & Condiciones
Deben incluir mi apodo en sus créditos.
Es de uso gratuito para projectos y demos no comerciales. Para todo lo demás, es mejor que me contacten.