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).
As habilidades indicadas para ter o elemento “MINUSDano” trabalharam com a equação apresentada. Note que o nome do atributo DEVE ser “MINUSDano”.
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
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.
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!