Script de Barrinha GOW
(http://i.creativecommons.org/l/by-nc-sa/3.0/88x31.png) (http://creativecommons.org/licenses/by-nc-sa/3.0/)
www.mundorpgmaker.com
This work is licensed under a Creative Commons Atribuição-Uso não-comercial-Compartilhamento pela mesma licença 3.0 Unported License (http://creativecommons.org/licenses/by-nc-sa/3.0/).
[info float=left border=#6587E4]
Informações:
--------------------------------------------------.• Autor: thiago_d_d• Versão: 1.0• Incompatibilidade: Desprezível• Lag gerado: Desprezível• Customizável: Sim• Requer Recursos Extras: Sim[/info][box class=catbg2]
Resumo
[/box][box class=catbg4]Implementa um barrinha de rage of titans, parecido com o jogo God of War. Quando essa barrinha enche, uma habilidade é aprendida pelo personagem. Só tem verdadeira utilidade em ABS's.[/box]
[box class=catbg2]
Instalação e configuração
[/box]
Coloque as seguintes imagens na pasta Pictures do seu jogo, com o nome de barrage e rageiconback, respectivamente:(http://img196.imageshack.us/img196/9325/barraged.png)
(http://img10.imageshack.us/img10/3307/rageiconback.png)
Depois, cole o script acima de Main. Não esqueça de ler as intruções contidas no script.#==============================================================
# * MRM - Comunidade RPG Maker!
# www.mundorpgmaker.com
# * GRM - Comunidade RPG Maker!
# www.galaxiarpgmaker.com.br
#
# [TSDA] Barrinha de GOW
# -->Versão 1.0
# Última atualização: 11/12/2010
# ----Créditos
# thiago_d_d - por fazer o TSDA script.
# Zero - por corrigir bugs e adicionar coisas.
#
#--------------------------------------------------------------
# * Características
#--------------------------------------------------------------
# Adiciona um sistema simples de raiva, semelhante ao
# do jogo God of War. Ao encher a barrinha de raiva,
# o personagem aprende uma habilidade. Pode ser útil
# quando se usa um ABS.
#--------------------------------------------------------------
# * Instalação
#--------------------------------------------------------------
# Cole o script acima de Main e delete os saves do seu game.
# Coloque as duas imagens fornecidas na pasta Pictures do seu
# projeto.
#--------------------------------------------------------------
# * Configuração
#--------------------------------------------------------------
# -> Antes do jogo
# Edite as linhas 43 a 54
#
# -> Com eventos duarnte o jogo
# Use comandos de script com os seguintes códigos:
#
# $game_rage_data = valor
# muda valor da raiva
#
# $game_rage_data.rage -= valor ou $game_rage_data.rage += valor
# subtrai/soma tal valor a raiva
#
# $game_rage_data.rage_activated = true ou false
# ativa/desativa sistema de raiva
#==============================================================
module TSDA
#Módulo de raiva ativado no início?
ACTIVATE_RAGE = true
# Direção do contador, true ou false
# True : Irá contar verticalmente
# False: Irá contar horizontalmente
TYPE_COUNT = false
# Esquecer a habilidade quando o medidor de raiva estiver em 0?
LOST_SKILL = true
# Esvaziar automaticamente quando o medidor de raiva estiver
# no máximo?
EMPTY_AUTO = true
#Aumentar raiva automaticamente
AUTO_UP_RAGE = true
#Se true logo acima, em quanto irá aumentar a cada frame?
AUTO_UP_RAGE_N = 1
#Raiva máxima
MAX_RAGE = 500
#Habilidade que será aprendida
RAGE_SKILL = 1
#Posições da HUD de raiva
RAGE_HUD_X = 0
RAGE_HUD_Y = 0
end
# Fim da configuração
# Game_System
class Game_System
alias rage_update update
def update
rage_update
for i in $game_party.actors[0].skills
if i == TSDA::RAGE_SKILL
@perf = TSDA::MAX_RAGE / 100
$game_rage_data.rage -= @perf.to_i if TSDA::EMPTY_AUTO
end
end
end
end
# RageData
class RageData
include TSDA
attr_reader :rage
attr_accessor :rage_activated
def initialize
@rage = 0
@rage_activated = ACTIVATE_RAGE
end
def rage=(value)
if value > MAX_RAGE
@rage = MAX_RAGE
return
end
if value < 0
@rage = 0
return
end
@rage = value
end
end
class Scene_Title
alias rou_menu_command_new_game command_new_game
def command_new_game
rou_menu_command_new_game
$game_rage_data = RageData.new
end
end
class Scene_Save
alias rou_menu_write_save_data write_save_data
def write_save_data(file)
rou_menu_write_save_data(file)
Marshal.dump($game_rage_data, file)
end
end
class Scene_Load
alias rou_menu_read_save_data read_save_data
def read_save_data(file)
rou_menu_read_save_data(file)
$game_rage_data = Marshal.load(file)
end
end
class Scene_Map
alias old_main main
def main
@rage_window = Window_RageOfTitans.new
old_main
@rage_window.dispose
end
alias old_update update
def update
@rage_window.update
old_update
end
end
class Window_RageOfTitans < Window_Base
include TSDA
def initialize
super(RAGE_HUD_X, RAGE_HUD_Y, 100, 104)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = $fontface
self.contents.font.size = $fontsize
self.opacity = 0
self.back_opacity = 0
refresh
end
def update
super
self.visible = $game_rage_data.rage_activated
if self.visible
if AUTO_UP_RAGE
$game_rage_data.rage += AUTO_UP_RAGE_N
end
if @rage != $game_rage_data.rage
refresh
if @rage == MAX_RAGE
$game_party.actors[0].learn_skill(RAGE_SKILL)
end
if @rage < 2
$game_party.actors[0].forget_skill(RAGE_SKILL) if TSDA::LOST_SKILL
end
end
end
end
def refresh
self.contents.clear
@rage = $game_rage_data.rage
bitmap = RPG::Cache.picture("barraged")
bitmap2 = RPG::Cache.picture("rageiconback")
if TYPE_COUNT
src_rect = Rect.new(0, 0, 58, @rage * 36 / MAX_RAGE)
else
src_rect = Rect.new(0, 0, @rage * 70 / MAX_RAGE, 50)
end
src_rect2 = Rect.new(0, 0, 68, 72)
self.contents.blt(0, 0, bitmap2, src_rect2)
self.contents.blt(5, 10, bitmap, src_rect)
end
end
[box class=catbg2]
[/box]
Não há necessidade de Demo.Screens:(http://img695.imageshack.us/img695/6905/ragescreen.png)
[box class=catbg2]
[/box]
- thiago_d_d por fazer o script
- Zero(Cross) por corrigir o script e adicionar coisas