Transformação Para NPM 3 ou 4
Log
19/12/2012 --> Script PostadoLog
Script
- Código:
#================================================================
#================================================================
#=================Tranformação Avançada V 1.0 ===================
#================================================================
#=======BY:Gladistony Silva======================================
#=======Criada para o forum: Aldeiarpgbr ========================
#=======A pedido de Lukas Uchiha ================================
#=======NÃO POSTA EM OUTRO FORUM SEM AUTORIZAÇÃO=================
#================================================================
#================================================================
module User_Edit_Skill
TRANSFOR = {}
# TRANSFOR[ID SKILL] = ["Nome do char que vira", Tempo, custo por segundo, bonus em Str,Agi,Dex,Int]
# TRANSFOR[5] = ['Fire', 2, 1, [1,10,2,0]]
TRANSFOR[5] = ['Fire', 2, 1, [1,10,2,0]]
end
#=====================NAO EDITE ================================
class Scene_Map
alias regenerar_trans update
def update
regenerar_trans
contagem if @count == 20
end
end
def contagem
return if not $game_party.actors[0].tranfor
if $game_party.actors[0].time > 0
$game_party.actors[0].time -= 1
if $game_party.actors[0].sp < User_Edit_Skill::TRANSFOR[$game_party.actors[0].magia][2]
$game_party.actors[0].character_name = $game_party.actors[0].charo
$game_party.actors[0].tranfor = false
subtrair_poder
else
$game_party.actors[0].sp -= User_Edit_Skill::TRANSFOR[$game_party.actors[0].magia][2]
end
else
$game_party.actors[0].character_name = $game_party.actors[0].charo
$game_party.actors[0].tranfor = false
subtrair_poder
end
end
def soma_poder
a = User_Edit_Skill::TRANSFOR[$game_party.actors[0].magia][3]
$game_party.actors[0].str += a[0]
$game_party.actors[0].agi += a[1]
$game_party.actors[0].dex += a[2]
$game_party.actors[0].int += a[3]
end
def subtrair_poder
a = User_Edit_Skill::TRANSFOR[$game_party.actors[0].magia][3]
$game_party.actors[0].str -= a[0]
$game_party.actors[0].agi -= a[1]
$game_party.actors[0].dex -= a[2]
$game_party.actors[0].int -= a[3]
end
class Game_Actor
attr_reader :tranfor
attr_reader :charo
attr_reader :time
attr_reader :magia
alias setup_actor setup
def setup(id)
setup_actor(id)
@tranfor = false
@charo = ''
@time = 0
@magia = 0
end
def tranfor=(tranfor)
@tranfor = tranfor
end
def charo=(charo)
@charo = charo
end
def time=(time)
@time = time
end
def magia=(magia)
@magia = magia
end
end
class Game_Battler
alias skill_trans can_use_skill?
def can_use_skill?(skill)
a = skill_trans(skill)
if User_Edit_Skill::TRANSFOR.keys.include?(skill.id) and a
return false if $game_party.actors[0].tranfor
$game_party.actors[0].charo = $game_party.actors[0].character_name
$game_party.actors[0].character_name = User_Edit_Skill::TRANSFOR[skill.id][0]
$game_party.actors[0].tranfor = true
$game_party.actors[0].magia = skill.id
soma_poder
$game_party.actors[0].time = User_Edit_Skill::TRANSFOR[skill.id][1]
end
return a
end
end
Instalação
Cole o Script logo acima do MainConfiguração
1° Localize no script TRANSFOR = {}2° Abaixo desse escreva: TRANSFOR[ID SKILL], onde ID SKILL é o ID da skill de transformação no banco de dados.
3° coloque igual e cria 1 array onde o 1 termo e o nome do gráfico, da pasta Characters, o segundo e o tempo máximo que uma transformação pode durar, o terceiro e quando se SP sera gasto por segundo e o 4 termo sera outra array com os bônus que a transformação for da
4° Para a segunda array preencha seguindo a ordem Str,Agi,Dex,Int. Mesmo que ele não de bonus coloque um 0.
5° Deve ficar mais ou menos assim:
TRANSFOR[ID SKILL] = ["Nome do char que vira", Tempo, custo por segundo, bonus em Str,Agi,Dex,Int]
TRANSFOR[5] = ['Fire', 2, 1, [1,10,2,0]]
6° Nesse caso, sempre que eu usar a magia de ID 5, me transformarei no char de nome 'Fire' por 2 segundos gastando 1 SP por segundo e ganharei Str 1,Agi 10,Dex 2 e Int 0.
Notas
>Vc pode ter quantas transformações quiser>Mesmo que vc saia do jogo e volta o script continuara contando quando você volta.
>Somente e possível se transforma 1 vez, mesmo que você tenha 2 magias de transformação, somente pode usar 1 de cada vez.
>É possível configurar efeitos secundários para as transformações.
Bugs
>Nenhum ate o momentoCompatibilidade
>Esse script apenas funciona no NetPlay Master, para usa-lo em um game não online ou outro netplat crie um script um novo script e cole o codigo abaixo:- Código:
class Scene_Map
alias trans_main_draw main_draw
alias trans_update update
def main_draw
@count = 0
trans_main_draw
end
def update
if Graphics.frame_count / Graphics.frame_rate != @total_sec
@count += 1
end
@count = 0 if @count > 20
trans_update
end
end