Minus Strike [RGSS]
Script Minus Strike, do Steiner, de FFIX. A habilidade que for indicada pra trabalhar com esse script tira um dano igual ao HP Total - HP Constante de quem a usar. Ele foi editado por Hiperbanka, baseado no Script Rate Damage, do KGC.
Segue um script é um clássico, o Minus Strike, do Steiner, de FFIX. A habilidade que for indicada pra trabalhar com esse script, tirar um dano igual ao HP Total – HP Constante de quem a usar. Ele foi editado por Hiperbanka, baseado no Script Rate Damage, do KGC.
Aí vai a minha primeira edição de script.
É importante lembrar que:
Este script foi editado com base no Script Rate Damage, do KGC.
O funcionamento depende inteiramente do script “Módulo – KGC”, portanto, copie TAMBÉM o KGC_Module.
Quanto aos créditos do Script:
A epiderme do script foi editada por mim…
Eu mudei alguns nomes e algumas variáveis, pra ele trabalhar de forma diferente. Mas o esqueleto(os methods) em si são do KGC, então, acho que mais é crédito dele( era um script pra Demi, eu transformei em Minus Strike XD).
Utilizando o script
- Crie um atributo chamado “MINUSDano”;
- Adicione o atributo “MINUSDano” Á(s) habilidade(s) que você desejar que possuam o calculo de dano deste script.
As habilidades indicadas para ter o elemento “MINUSDano” trabalharam com a equação apresentada. Note que o nome do atributo DEVE ser “MINUSDano”.

Scripts
Script Minus Strike, deve ir acima do Main:
################################################################################
################################### KGC ########################################
################################################################################
#IMPORTANTE!#
#--------------------------------------------------------------------
#Este script foi editado com base no Script Rate Damage, do KGC.
#O funcionamento depende inteiramente do script "Módulo - KGC",
#portanto, copie TAMBÉM o script que se encontra logo acima deste.
#--------------------------------------------------------------------
#CRÉDITO:
#Script editado por Hiperbanka com base no script Rate Damage do KGC.
#--------------------------------------------------------------------
#FUNÇÃO:
# Este script foi editado para trabalhar com a sistemtica do golpe
#"Minus Strike", de Steiner, do Final Fantasy 9.
#O sistema em questão tira dano dos inimigos com base na subtraço
#MAXHP - HP de quem está usando a habilidade.
#--------------------------------------------------------------------
#Utilização
#Crie um atributo chamado "MINUSDano"
#Adicione o atributo "MINUSDano" Á(s) habilidade(s) que você desejar
#que possuam o cálculo de dano deste script
#
#Note que no Database, você pode alterar livremente os alvos que
#a habilidade atinge. Logo, na hipótese mais criativa, você pode
#criar um "Revive" que toma como recuperaço a diferença entre os
#HPs do user(colocando em alvo "aliado 0 HP"). :D
#-------------------------------------------------------------------
#------#
#SCRIPT#
#------#
#Aqui provavelmente a definição de como o elemento no database
#vai virar uma referência no script
#Eu alterei a linha 32, para tornar o mudar o nome do elemento referencial
if $game_special_elements == nil
$game_special_elements = {}
$data_system = load_data("Data/System.rxdata")
end
$game_special_elements["rate_damage"] = /(MINUS)Dano/i
module KGC
def self.check_damage_rate(skill)
skill.element_set.compact.each { |element|
element_name = $data_system.elements[element]
if $game_special_elements["rate_damage"] =~ element_name
return [$1.upcase, element]
end
}
return nil
end
end
class Game_Battler
alias skill_effect_KGC_RateDamage skill_effect
def skill_effect(user, skill)
rate_damage = KGC.check_damage_rate(skill)
if rate_damage == nil
return skill_effect_KGC_RateDamage(user, skill)
end
@effective = false
@effective |= skill.common_event_id > 0
hit = skill.hit
if skill.atk_f > 0
hit *= user.hit / 100
end
hit_result = (rand(100) < hit)
@effective |= hit < 100
if hit_result
eva = 8 * self.agi / user.dex + self.eva
hit = skill.power < 0 ? 100 : 100 - eva * skill.eva_f / 100
hit = self.cant_evade? ? 100 : hit
hit_result = (rand(100) < hit)
@effective |= hit < 100
end
#Em seguida vem a fórmula do dano, que foi a modificação mais
#significativa feita por mim.
if hit_result
case rate_damage[0]
when "MINUS"
self.damage = user.maxhp - user.hp
@base_damage = self.damage
self.damage = self.damage * self.element_rate(rate_damage[1]) / 100
hp_dmg = self.damage
self.hp -= hp_dmg if hp_dmg != nil
@state_changed = false
effective |= states_plus(skill.plus_state_set)
effective |= states_minus(skill.minus_state_set)
end
end
end
end
Script KGC_Module (OBRIGATÓRIO). Coloque-o acima do script Minus Strike:
################################################################################
################################### KGC ########################################
################################################################################
#Script necessário para usar alguns outros scripts do KGC
################################################################################
$game_special_elements = {}
$imported = {}
$data_states = load_data("Data/States.rxdata")
$data_system = load_data("Data/System.rxdata")
É pequeno assim mesmo :P
Compatibilidade
Haha, deve ser compatível com tudo. A não ser que hajam scripts incompatíveis com KGC_Module, mas eu não conheço.
Mais RPG Maker XP
Informações adicionais
- Categoria: Programação XP
- Tag: RPG Maker XP
- Adicionado por: LichKing
- Acessos: 32
Observação: se você gostou deste post ou ele lhe foi útil de alguma forma, por favor considere apoiar financeiramente a Gaming Room. Fico feliz só de ajudar, mas a contribuição do visitante é muito importante para que este site continua existindo e para que eu possa continuar provendo este tipo de conteúdo e melhorar cada vez mais. Acesse aqui e saiba como. Obrigado!
