Não precisaria e 4 classes para deixar em linha reta, mas como vc ta aprendendo então é só melhorar nas próximas.
5 participantes
Script De Hud Do grupo
rafaelgrg- Semi-Experiente
- Mensagens : 84
Créditos : 11
- Mensagem nº12
Re: Script De Hud Do grupo
Nanzin veja como ficou eu acho que e assim como vc disse veja a imagem:
Se quisr o script ta aqui:
E coloque essa imagem na pasta windowskin:
Creditos a nanzin por me ajudar e com a windowskin
Se quisr o script ta aqui:
- Código:
#------------------------------------------------------------------------------------
#----------------------- Hud De Personagem Do grupo ---------------------------------
#----------------------- Criador por: Rafaelgrga -------------------------------------
# Para mostrar o hp do outro personagem Mude o 0 para 1 ou outros
# Exemplo: $game_party.actors[6].hp
#------------------------------------------------------------------------------------
class Window_Hud < Window_Base
def initialize
super(0,0,115,105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
self.z = 9999999
self.back_opacity = 250
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[0].hp or
@sp != $game_party.actors[0].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[0].hp
@sp = $game_party.actors[0].sp
self.contents.clear
self.contents.draw_text( x, y, 100, 20, "Char: Ash " , 0)
self.contents.draw_text( x, y, 100, 75, "Hp " + $game_party.actors[0].hp.to_s, 0)
self.contents.draw_text( x, y+40, 180, 50, "Sp " + $game_party.actors[0].sp.to_s, 0)
end
end
class Scene_Map
alias scene_map_main main
alias grg_update update
def main
@hud = Window_Hud.new
scene_map_main
end
def update
@hud.refresh
grg_update
end
end
class Window_Hud2 < Window_Base
def initialize
super( 150, -2, 115, 105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[1].hp or
@sp != $game_party.actors[1].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[1].hp
@sp = $game_party.actors[1].sp
self.contents.clear
self.contents.draw_text( 1, 15, 100, 19, "Char: Trevor " , 0)
self.contents.draw_text( 1, 15, 100, 65, "Hp " + $game_party.actors[1].hp.to_s, 0)
self.contents.draw_text( 1, 15+25, 180, 50, "Sp " + $game_party.actors[1].sp.to_s, 0)
end
end
class Scene_Map
alias scene_main main
alias gr_update update
def main
@hud = Window_Hud2.new
scene_main
end
def update
@hud.refresh
gr_update
end
end
class Window_Hud3 < Window_Base
def initialize
super( 335, 0, 115, 105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[2].hp or
@sp != $game_party.actors[2].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[2].hp
@sp = $game_party.actors[2].sp
self.contents.clear
self.contents.draw_text( 1, 10, 100, 19, "Char: Baker " , 0)
self.contents.draw_text( 15, 15, 100, 65, "Hp " + $game_party.actors[2].hp.to_s, 0)
self.contents.draw_text( 15, 15+25, 180, 50, "Sp " + $game_party.actors[2].sp.to_s, 0)
end
end
class Scene_Map
alias scene_main2 main
alias grga_update update
def main
@hud = Window_Hud3.new
scene_main2
end
def update
@hud.refresh
grga_update
end
end
class Window_Hud4 < Window_Base
def initialize
super( 525, 0, 115, 105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[3].hp or
@sp != $game_party.actors[3].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[3].hp
@sp = $game_party.actors[3].sp
self.contents.clear
self.contents.draw_text( -2, 10, 100, 19, "Char:Lucy " , 0)
self.contents.draw_text( 1, 15, 100, 65, "Hp " + $game_party.actors[3].hp.to_s, 0)
self.contents.draw_text( 1, 15+25, 180, 50, "Sp " + $game_party.actors[3].sp.to_s, 0)
end
end
class Scene_Map
alias scene_main3 main
alias grg11_update update
def main
@hud = Window_Hud4.new
scene_main3
end
def update
@hud.refresh
grg11_update
end
end
E coloque essa imagem na pasta windowskin:
Creditos a nanzin por me ajudar e com a windowskin
Nanzin- Membro de Honra
- Mensagens : 1550
Créditos : 252
- Mensagem nº13
Re: Script De Hud Do grupo
mais uma coisa, voce criou uma classe para cada janela da hud, sendo que voce pode criar uma classe apenas chamada de HUD , e intancia-la em 4 objetos na Scene_Map.
sendo assim , diminuindo e optimizando seu código.
sendo assim , diminuindo e optimizando seu código.
_________________
Para Aqueles que gostam de Min e de meu Trabalho;
Upem Meu Pet nao custa nda!!
- Pet:
rafaelgrg- Semi-Experiente
- Mensagens : 84
Créditos : 11
- Mensagem nº14
Re: Script De Hud Do grupo
Para criar uma janela para colocar os 4 juntos?
Nanzin- Membro de Honra
- Mensagens : 1550
Créditos : 252
- Mensagem nº15
Re: Script De Hud Do grupo
entenda, o ruby trabalha com objetos.
tudo no ruby é um objeto, inclusive um numero .
voce pode criar instancias de um objeto colocando-as em um "container" mais conhecidas como variaveis.
e manipula-las de forma que uma não altere a outra (afinal são objetos diferente na memória).
sendo assim crie 4 variaveis dentro da Scene_Map
ficaria +/- assim:
obviamente voce deve criar a classe Hud para aceitar os 5 parametros que estou passando ao declara-la às váriaveis.
se ficou muito confuso me avise que eu crio o código e posto aqui pra voce entender melhor :)
tudo no ruby é um objeto, inclusive um numero .
voce pode criar instancias de um objeto colocando-as em um "container" mais conhecidas como variaveis.
e manipula-las de forma que uma não altere a outra (afinal são objetos diferente na memória).
sendo assim crie 4 variaveis dentro da Scene_Map
ficaria +/- assim:
- Código:
@hud1 = Hud.new(x,y,width,height,actor1)
@hud2 = Hud.new(x,y,width,height,actor2)
@hud3 = Hud.new(x,y,width,height,actor3)
@hud4 = Hud.new(x,y,width,height,actor4)
obviamente voce deve criar a classe Hud para aceitar os 5 parametros que estou passando ao declara-la às váriaveis.
se ficou muito confuso me avise que eu crio o código e posto aqui pra voce entender melhor :)
_________________
Para Aqueles que gostam de Min e de meu Trabalho;
Upem Meu Pet nao custa nda!!
- Pet:
rafaelgrg- Semi-Experiente
- Mensagens : 84
Créditos : 11
- Mensagem nº16
Re: Script De Hud Do grupo
Obrigado nanzin +1 Cred
rafaelgrg- Semi-Experiente
- Mensagens : 84
Créditos : 11
- Mensagem nº17
Re: Script De Hud Do grupo
Desculpa pelo double post mas, nanzin agora coloquei uma nova funçao:mostrar/esconder a HUD
Z serve para desaparecer a hud e shift serve para mostrar a hud
Creditos: a kyo panda
rafaelgrga
nanzin
- Código:
#------------------------------------------------------------------------------------
#----------------------- Hud De Personagem Do grupo ---------------------------------
#----------------------- Criador por: Rafaelgrga -------------------------------------
# Para mostrar o hp do outro personagem Mude o 0 para 1 ou outros
# Exemplo: $game_party.actors[6].hp
#------------------------------------------------------------------------------------
class Window_Hud < Window_Base
def initialize
super(0,0,115,105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
self.z = 9999999
self.back_opacity = 250
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[0].hp or
@sp != $game_party.actors[0].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[0].hp
@sp = $game_party.actors[0].sp
self.contents.clear
self.contents.draw_text( x, y, 100, 20, "" + $game_party.actors[0].name.to_s , 0)
self.contents.draw_text( x, y, 100, 75, "Hp " + $game_party.actors[0].hp.to_s, 0)
self.contents.draw_text( x, y+40, 180, 50, "Sp " + $game_party.actors[0].sp.to_s, 0)
end
end
class Scene_Map
alias scene_map_main main
alias grg_update update
def main
@hud1 = Window_Hud.new
scene_map_main
end
def update
@hud2.refresh
grg_update
end
end
class Window_Hud2 < Window_Base
def initialize
super( 150, -2, 115, 105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[1].hp or
@sp != $game_party.actors[1].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[1].hp
@sp = $game_party.actors[1].sp
self.contents.clear
self.contents.draw_text( 1, 15, 100, 19, "" + $game_party.actors[1].name.to_s , 0)
self.contents.draw_text( 1, 15, 100, 65, "Hp " + $game_party.actors[1].hp.to_s, 0)
self.contents.draw_text( 1, 15+25, 180, 50, "Sp " + $game_party.actors[1].sp.to_s, 0)
end
end
class Scene_Map
alias scene_main main
alias gr_update update
def main
@hud2 = Window_Hud2.new
scene_main
end
def update
@hud2.refresh
gr_update
end
end
class Window_Hud3 < Window_Base
def initialize
super( 335, 0, 115, 105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[2].hp or
@sp != $game_party.actors[2].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[2].hp
@sp = $game_party.actors[2].sp
self.contents.clear
self.contents.draw_text( 1, 10, 100, 19, "" + $game_party.actors[2].name.to_s , 0)
self.contents.draw_text( 15, 15, 100, 65, "Hp " + $game_party.actors[2].hp.to_s, 0)
self.contents.draw_text( 15, 15+25, 180, 50, "Sp " + $game_party.actors[2].sp.to_s, 0)
end
end
class Scene_Map
alias scene_main2 main
alias grga_update update
def main
@hud3 = Window_Hud3.new
scene_main2
end
def update
@hud3.refresh
grga_update
end
end
class Window_Hud4 < Window_Base
def initialize
super( 525, 0, 115, 105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[3].hp or
@sp != $game_party.actors[3].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[3].hp
@sp = $game_party.actors[3].sp
self.contents.clear
self.contents.draw_text( -2, 10, 100, 19, "" + $game_party.actors[3].name.to_s , 0)
self.contents.draw_text( 1, 15, 100, 65, "Hp " + $game_party.actors[3].hp.to_s, 0)
self.contents.draw_text( 1, 15+25, 180, 50, "Sp " + $game_party.actors[3].sp.to_s, 0)
end
end
class Scene_Map
alias scene_main3 main
alias grg11_update update
def main
@hud4 = Window_Hud4.new
scene_main3
end
def update
@hud4.refresh
grg11_update
if Input.trigger?(Input::A)
@hud1.visible = false
@hud2.visible = false
@hud3.visible = false
@hud4.visible = false
if Input.trigger?(Input::SHIFT)
@hud1.visible = true
@hud2.visible = true
@hud3.visible = true
@hud4.visible = true
end
end
end
end
Z serve para desaparecer a hud e shift serve para mostrar a hud
Creditos: a kyo panda
rafaelgrga
nanzin
Duel- Aldeia Friend
- Mensagens : 1375
Créditos : 107
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
- Mensagem nº18
Re: Script De Hud Do grupo
Nossa incrivel Rafael +4 Creds xD
Aparecer,desaparecer,4 janelas em um script xD Demais cara parabens!
Aparecer,desaparecer,4 janelas em um script xD Demais cara parabens!
_________________
- Jack:
LeonM²- Lenda
- Mensagens : 1802
Créditos : 153
- Mensagem nº19
Re: Script De Hud Do grupo
- Código:
#------------------------------------------------------------------------------------
#----------------------- Hud De Personagem Do grupo ---------------------------------
#----------------------- Criador por: Rafaelgrga -------------------------------------
# Para mostrar o hp do outro personagem Mude o 0 para 1 ou outros
# Exemplo: $game_party.actors[6].hp
#------------------------------------------------------------------------------------
class Window_Hud < Window_Base
def initialize
super(0,0,115,105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
self.z = 9999999
self.back_opacity = 250
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[0].hp or
@sp != $game_party.actors[0].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[0].hp
@sp = $game_party.actors[0].sp
self.contents.clear
self.contents.draw_text( x, y, 100, 20, "" + $game_party.actors[0].name.to_s , 0)
self.contents.draw_text( x, y, 100, 75, "Hp " + $game_party.actors[0].hp.to_s, 0)
self.contents.draw_text( x, y+40, 180, 50, "Sp " + $game_party.actors[0].sp.to_s, 0)
end
end
class Window_Hud2 < Window_Base
def initialize
super( 150, -2, 115, 105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[1].hp or
@sp != $game_party.actors[1].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[1].hp
@sp = $game_party.actors[1].sp
self.contents.clear
self.contents.draw_text( 1, 15, 100, 19, "" + $game_party.actors[1].name.to_s , 0)
self.contents.draw_text( 1, 15, 100, 65, "Hp " + $game_party.actors[1].hp.to_s, 0)
self.contents.draw_text( 1, 15+25, 180, 50, "Sp " + $game_party.actors[1].sp.to_s, 0)
end
end
class Window_Hud3 < Window_Base
def initialize
super( 335, 0, 115, 105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[2].hp or
@sp != $game_party.actors[2].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[2].hp
@sp = $game_party.actors[2].sp
self.contents.clear
self.contents.draw_text( 1, 10, 100, 19, "" + $game_party.actors[2].name.to_s , 0)
self.contents.draw_text( 15, 15, 100, 65, "Hp " + $game_party.actors[2].hp.to_s, 0)
self.contents.draw_text( 15, 15+25, 180, 50, "Sp " + $game_party.actors[2].sp.to_s, 0)
end
end
class Window_Hud4 < Window_Base
def initialize
super( 525, 0, 115, 105)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("WindowskinC")
refresh
@hp = -1
@sp = -1
end
def refresh
if @hp != $game_party.actors[3].hp or
@sp != $game_party.actors[3].sp
redesenha
end
end
def redesenha
@hp = $game_party.actors[3].hp
@sp = $game_party.actors[3].sp
self.contents.clear
self.contents.draw_text( -2, 10, 100, 19, "" + $game_party.actors[3].name.to_s , 0)
self.contents.draw_text( 1, 15, 100, 65, "Hp " + $game_party.actors[3].hp.to_s, 0)
self.contents.draw_text( 1, 15+25, 180, 50, "Sp " + $game_party.actors[3].sp.to_s, 0)
end
end
class Scene_Map
alias grg_main_map main
alias grg_update_map update
def main
@hud1 = Window_Hud.new
@hud2 = Window_Hud2.new
@hud3 = Window_Hud3.new
@hud4 = Window_Hud4.new
grg_main_map
end
def update
@hud1.refresh
@hud2.refresh
@hud3.refresh
@hud4.refresh
grg_update_map
if Input.trigger?(Input::A)
@hud1.visible = false
@hud2.visible = false
@hud3.visible = false
@hud4.visible = false
if Input.trigger?(Input::SHIFT)
@hud1.visible = true
@hud2.visible = true
@hud3.visible = true
@hud4.visible = true
end
end
end
end
Fiz de cabeça agora portanto não sei se vai trazer alguma diferença drástica.
rafaelgrg- Semi-Experiente
- Mensagens : 84
Créditos : 11
- Mensagem nº20
Re: Script De Hud Do grupo
Obrigado a vcs e que bom que gostou do script
» [Dúvida] Como elevar o nível do herói e do grupo por script?
» [Resolvido] Alguem pode criar um script ou um sistema de funfar mais de um usuário no grupo do jogador (4 -> 6)
» [Pedido script]Script velocidade de ataque baseado na agilidade
» [Script] Ocultando Menu,Hud,Hotkeys, Chat [Script]
» Grupo do MSN
» [Resolvido] Alguem pode criar um script ou um sistema de funfar mais de um usuário no grupo do jogador (4 -> 6)
» [Pedido script]Script velocidade de ataque baseado na agilidade
» [Script] Ocultando Menu,Hud,Hotkeys, Chat [Script]
» Grupo do MSN