=begin
#==============================================================================
# Modificador de Atributos das Classes
# por KGC
#==============================================================================
Esse é um script bem simples de ser usado.
Com ele você pode associar valores de multiplicação dos atributos
as classes dos personagens.
Assim, se você mudar a classe de um personagem, os atributos dele
serão modificados de acordo com aquela classe.
Configuração:
Esse script é bem simples de configurar, basta ir no "module KGC"
e adicionar linhas como esta:
CDS_STATUS_REVISE[ID] = [ HP, SP, FOR, DEX, AGI, INT]
Sendo
ID = ID da classe
HP = Multiplicador do HP
SP = Multiplicador do SP
FOR= Multiplicador da Força
DEX= Multiplicador da Destreza
AGI= Multiplicador da Agilidade
INT= Multiplicador da Inteligência
=end
module KGC
CDS_STATUS_REVISE = [] #não altere essa linha
#Adicione aqui os modificadores das classes
CDS_STATUS_REVISE[1] = [1.2, 0.85, 1.1, 1, 0.9, 0.7]
CDS_STATUS_REVISE[2] = [1.1, 0.95, 1, 1.1, 0.8, 0.8]
end
$imported = {} if $imported == nil
$imported["ClassDetailSetting"] = true
#==============================================================================
# ? RPG::Class
#==============================================================================
class RPG::Class
#--------------------------------------------------------------------------
def maxhp_revise
return KGC::CDS_STATUS_REVISE[@id] != nil ? KGC::CDS_STATUS_REVISE[@id][0] : 1
end
#--------------------------------------------------------------------------
def maxsp_revise
return KGC::CDS_STATUS_REVISE[@id] != nil ? KGC::CDS_STATUS_REVISE[@id][1] : 1
end
#--------------------------------------------------------------------------
def str_revise
return KGC::CDS_STATUS_REVISE[@id] != nil ? KGC::CDS_STATUS_REVISE[@id][2] : 1
end
#--------------------------------------------------------------------------
def dex_revise
return KGC::CDS_STATUS_REVISE[@id] != nil ? KGC::CDS_STATUS_REVISE[@id][3] : 1
end
#--------------------------------------------------------------------------
def agi_revise
return KGC::CDS_STATUS_REVISE[@id] != nil ? KGC::CDS_STATUS_REVISE[@id][4] : 1
end
#--------------------------------------------------------------------------
def int_revise
return KGC::CDS_STATUS_REVISE[@id] != nil ? KGC::CDS_STATUS_REVISE[@id][5] : 1
end
end
#==============================================================================
# ? Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
alias base_maxhp_KGC_ClassDetailSetting base_maxhp
def base_maxhp
n = base_maxhp_KGC_ClassDetailSetting
n *= $data_classes[@class_id].maxhp_revise
return Integer(n)
end
#--------------------------------------------------------------------------
def hp
@hp = [@hp, maxhp].min
return @hp
end
#--------------------------------------------------------------------------
alias base_maxsp_KGC_ClassDetailSetting base_maxsp
def base_maxsp
n = base_maxsp_KGC_ClassDetailSetting
n *= $data_classes[@class_id].maxsp_revise
return Integer(n)
end
#--------------------------------------------------------------------------
def sp
@sp = [@sp, maxsp].min
return @sp
end
#--------------------------------------------------------------------------
alias base_str_KGC_ClassDetailSetting base_str
def base_str
n = base_str_KGC_ClassDetailSetting
n *= $data_classes[@class_id].str_revise
n = [[n, 1].max, $imported["LimitBreak"] ? KGC::LB_ACTOR_ETC_LIMIT : 999].min
return Integer(n)
end
#--------------------------------------------------------------------------
alias base_dex_KGC_ClassDetailSetting base_dex
def base_dex
n = base_dex_KGC_ClassDetailSetting
n *= $data_classes[@class_id].dex_revise
n = [[n, 1].max, $imported["LimitBreak"] ? KGC::LB_ACTOR_ETC_LIMIT : 999].min
return Integer(n)
end
#--------------------------------------------------------------------------
alias base_agi_KGC_ClassDetailSetting base_agi
def base_agi
n = base_agi_KGC_ClassDetailSetting
n *= $data_classes[@class_id].agi_revise
n = [[n, 1].max, $imported["LimitBreak"] ? KGC::LB_ACTOR_ETC_LIMIT : 999].min
return Integer(n)
end
#--------------------------------------------------------------------------
alias base_int_KGC_ClassDetailSetting base_int
def base_int
n = base_int_KGC_ClassDetailSetting
n *= $data_classes[@class_id].int_revise
n = [[n, 1].max, $imported["LimitBreak"] ? KGC::LB_ACTOR_ETC_LIMIT : 999].min
return Integer(n)
end
end