por FFogomax Sáb Fev 04, 2012 11:15 am
"Botoes de classe retirados" não é um sistema.
São só umas linhas de scripts que foram apagadas.
Uma boa HUD eu não tenho, pois não sei nem instalar. -qn
Por isso não posso fazer uma avaliação pra vc.
Mas tá aqui umas:
Essa é simples, só funciona em jogos online.
- Código:
#------------------------------------------------------------------------------
# * SDK Log Script
#------------------------------------------------------------------------------
SDK.log('My HUD', 'Icedmetal57', "1.0", '8/1/2006')
#------------------------------------------------------------------------------
# * Begin SDK Enable Test
#------------------------------------------------------------------------------
if SDK.state('My HUD') == true
#==============================================================================
# ** Window_Base
#------------------------------------------------------------------------------
# This class is for all in-game windows.
#==============================================================================
class Window_Base < Window
#=====================================
#Gradient Bars with customizable lengths, thicknesses, types and Colors
#By AcedentProne
#=====================================
def draw_normal_barz(x, y, type, length, thick, e1, e2, c1 = Color.new(153,238,153,255), c2 = Color.new(0,0,0,255))
if type == "horizontal"
width = length
height = thick
self.contents.fill_rect(x-1, y - 1, width+2, height + 3, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width, height + 1, Color.new(0, 0, 0, 255))
w = width * e1 / e2
for i in 0..height
r = c1.red + (c2.red - c1.red) * (height -i)/height + 0 * i/height
g = c1.green + (c2.green - c1.green) * (height -i)/height + 0 * i/height
b = c1.blue + (c2.blue - c1.blue) * (height -i)/height + 0 * i/height
a = c1.alpha + (c2.alpha - c1.alpha)* (height -i)/height + 255 * i/height
self.contents.fill_rect(x, y+i, w, 1, Color.new(r, g, b, a))
end
elsif type == "vertical"
width = thick
height = length
self.contents.fill_rect(x-1, y - 1, width+3, height + 2, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width+1, height , Color.new(0, 0, 0, 255))
h = height * e1 / e2
for i in 0..width
r = c1.red + (c2.red - c1.red) * (width -i)/width + 0 * i/width
g = c1.green + (c2.green - c1.green) * (width -i)/width + 0 * i/width
b = c1.blue + (c2.blue - c1.blue) * (width -i)/width + 0 * i/width
a = c1.alpha + (c2.alpha - c1.alpha)* (width -i)/width + 255 * i/width
self.contents.fill_rect(x+i, y, 1, h, Color.new(r, g, b, a))
end
end
end
def draw_actor_barz(actor,x, y, type, length, thick, e1, e2, c1 = Color.new(255,0,0,255), c2 = Color.new(0,0,0,255))
if type == "horizontal"
width = length
height = thick
self.contents.fill_rect(x-1, y - 1, width+2, height + 3, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width, height + 1, Color.new(0, 0, 0, 255))
w = width * e1 / e2
for i in 0..height
r = c1.red + (c2.red - c1.red) * (height -i)/height + 0 * i/height
g = c1.green + (c2.green - c1.green) * (height -i)/height + 0 * i/height
b = c1.blue + (c2.blue - c1.blue) * (height -i)/height + 0 * i/height
a = c1.alpha + (c2.alpha - c1.alpha)* (height -i)/height + 255 * i/height
self.contents.fill_rect(x, y+i, w, 1, Color.new(r, g, b, a))
end
elsif type == "vertical"
width = thick
height = length
self.contents.fill_rect(x-1, y - 1, width+3, height + 2, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width+1, height , Color.new(0, 0, 0, 255))
h = height * e1 / e2
for i in 0..width
r = c1.red + (c2.red - c1.red) * (width -i)/width + 0 * i/width
g = c1.green + (c2.green - c1.green) * (width -i)/width + 0 * i/width
b = c1.blue + (c2.blue - c1.blue) * (width -i)/width + 0 * i/width
a = c1.alpha + (c2.alpha - c1.alpha)* (width -i)/width + 255 * i/width
self.contents.fill_rect(x+i, y, 1, h, Color.new(r, g, b, a))
end
end
end
#--------------------------------------------------------------------------
# * Draw EXP
# actor : actor
# x : draw spot x-coordinate
# y : draw spot y-coordinate
#--------------------------------------------------------------------------
def draw_actor_exp(actor, x, y)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 24, 32, "Exp")
self.contents.font.color = normal_color
self.contents.draw_text(x + 10, y, 84, 32, actor.exp_s, 2)
self.contents.draw_text(x + 100, y, 12, 32, "/", 1)
self.contents.draw_text(x + 112, y, 84, 32, actor.next_exp_s)
end
end
#============================================
# Window_Map
# Originally by Destined, edited by Darklord and Icedmetal57
#============================================
class Window_HUD < Window_Base
def initialize
super(0, 0, 240, 165) #360
$game_actors[1].name = Network::Main.name
self.contents = Bitmap.new(width - 32, height - 32)
self.opacity = 0
refresh
end
def refresh
self.contents.clear
self.contents.font.color = normal_color
self.contents.font.size = 16
self.contents.draw_text(36, 0, 640, 32, $game_actors[1].name.to_s)
self.contents.font.color = normal_color
chatc = RPG::Cache.icon("033-Item02")
chat_rect = Rect.new(0, 0, chatc.width, chatc.height)
self.contents.blt(120, 78, chatc, chat_rect) if $game_temp.chat_refresh
draw_normal_barz(36, 27, "horizontal", 150, 10, $game_actors[1].hp.to_i, $game_actors[1].maxhp.to_i, Color.new (225, 0, 0, 225))
draw_normal_barz(36, 42, "horizontal", 150, 10, $game_actors[1].sp.to_i, $game_actors[1].maxsp.to_i, Color.new (0,0,255,255))
draw_normal_barz(36, 57, "horizontal", 150, 10, $game_actors[1].exp_s.to_i, $game_actors[1].next_exp_s.to_i, Color.new (0, 255, 0, 225))
draw_actor_graphic($game_actors[1], 15, 63)
draw_actor_level($game_actors[1], 128, 0)
draw_actor_hp($game_actors[1], 42, 17)
draw_actor_sp($game_actors[1], 42, 32)
draw_actor_exp($game_actors[1], 42, 47)
end
# def update
# refresh
# end
end
#============================================
# Scene_Map
# Edits the scene Scene_Map
#============================================
class Scene_Map
def initialize_hud
@hud = Window_HUD.new
@hud.opacity = 0 #the opacity for the window. 0=completely transparent, 255=completely visible
@player_hp = $game_actors[1].hp
@player_sp = $game_actors[1].sp
@player_exp = $game_actors[1].exp
@player_gold = $game_party.gold
@player_sprite = $game_actors[1].character_name
end
alias old_main main
def main
initialize_hud
old_main
end
def dispose
@hud.dispose
end
alias old_update update
def update
@hud.refresh if @player_hp != $game_actors[1].hp or @player_sp != $game_actors[1].sp or @player_exp != $game_actors[1].exp or @player_gold != $game_party.gold or @player_sprite != $game_actors[1].character_name or $game_temp.chat_refresh
old_update
end
end
#------------------------------------------------------------------------------
# * End SDK Enable Test
#------------------------------------------------------------------------------
end
Se você não gostou dessa, aqui vai mais uma:
- Código:
class Window_1 < Window_Base
def initialize
super(0, 380, 448, 100)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.size = 18
self.contents.font.name = "Tahoma"
self.opacity = 0
refresh
end
def refresh
self.contents.clear
self.contents.draw_text(0, 0, 200, 32, "HP: " + $game_party.actors[0].hp.to_s + "/" + $game_party.actors[0].maxhp.to_s)
self.contents.draw_text(0, 20, 200, 32, "SP: " + $game_party.actors[0].sp.to_s + "/" + $game_party.actors[0].maxsp.to_s)
self.contents.draw_text(150, 0, 200, 32, "Exp to next: " + $game_party.actors[0].next_rest_exp_s)
self.contents.draw_text(150, 20, 200, 32, "Gold: " + $game_party.gold.to_s)
self.contents.draw_text(300, 20, 200, 32, "Level " + $game_party.actors[0].level.to_s)
self.contents.draw_text(150, 40, 200, 32, $game_party.actors[0].name.to_s)
self.contents.draw_text(300, 0, 200, 32, Network::Main.name)
# self.contents.draw_text(0, 40, 200, 32, "Darkensoul") if $game_variables[3] == 1
# self.contents.draw_text(0, 40, 200, 32, "Light Knights") if $game_variables[3] == 2
# self.contents.draw_text(0, 40, 200, 32, "Reverance") if $game_variables[3] == 3
# self.contents.draw_text(0, 40, 200, 32, "No Guild") if $game_variables[3] == 0
draw_actor_class($game_party.actors[0], 300, 40)
end
def update
refresh
end
end
class Window_2 < Window_Base
def initialize
super(0, 380, 448, 100)
self.opacity = 127
end
end
class Window_3 < Window_Base
def initialize
super(448, 430, 64, 50)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.size = 12
self.opacity = 127
self.contents.font.name = "Tahoma"
refresh
end
def refresh
self.contents.clear
self.contents.draw_text(0, -7, 200, 32, "Items")
if mouse_over?(self) and Input.pressed?(Input::Mouse_Left) == true
$scene = Scene_Item.new
end
end
def update
refresh
end
def mouse_over?(window)
if $mouse.x > window.x and $mouse.x < window.x + window.width and
$mouse.y > window.y and $mouse.y < window.y + window.height
return true
end
return false
end
end
class Window_4 < Window_Base
def initialize
super(448, 380, 64, 50)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.size = 12
self.opacity = 127
self.contents.font.name = "Tahoma"
refresh
end
def refresh
self.contents.clear
self.contents.draw_text(0, -7, 200, 32, "Skills")
if mouse_over?(self) and Input.pressed?(Input::Mouse_Left) == true
$scene = Scene_Skill.new
end
end
def update
refresh
end
def mouse_over?(window)
if $mouse.x > window.x and $mouse.x < window.x + window.width and
$mouse.y > window.y and $mouse.y < window.y + window.height
return true
end
return false
end
end
class Window_5 < Window_Base
def initialize
super(512, 430, 64, 50)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.size = 12
self.opacity = 127
self.contents.font.name = "Tahoma"
refresh
end
def refresh
self.contents.clear
self.contents.draw_text(0, -7, 200, 32, "Equip")
if mouse_over?(self) and Input.pressed?(Input::Mouse_Left) == true
$scene = Scene_Equip.new
end
end
def update
refresh
end
def mouse_over?(window)
if $mouse.x > window.x and $mouse.x < window.x + window.width and
$mouse.y > window.y and $mouse.y < window.y + window.height
return true
end
return false
end
end
class Window_6 < Window_Base
def initialize
super(512, 380, 64, 50)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.size = 12
self.opacity = 127
self.contents.font.name = "Tahoma"
refresh
end
def refresh
self.contents.clear
self.contents.draw_text(0, -7, 200, 32, "Stats")
if mouse_over?(self) and Input.pressed?(Input::Mouse_Left) == true
$scene = Scene_Status.new
end
end
def update
refresh
end
def mouse_over?(window)
if $mouse.x > window.x and $mouse.x < window.x + window.width and
$mouse.y > window.y and $mouse.y < window.y + window.height
return true
end
return false
end
end
class Window_7 < Window_Base
def initialize
super(576, 380, 64, 50)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.size = 12
self.opacity = 127
self.contents.font.name = "Tahoma"
refresh
end
def refresh
self.contents.clear
self.contents.draw_text(0, -7, 200, 32, "Quit")
if mouse_over?(self) and Input.pressed?(Input::Mouse_Left) == true
$scene = Scene_End.new
end
end
def update
refresh
end
def mouse_over?(window)
if $mouse.x > window.x and $mouse.x < window.x + window.width and
$mouse.y > window.y and $mouse.y < window.y + window.height
return true
end
return false
end
end
class Window_8 < Window_Base
def initialize
super(576, 430, 64, 50)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.size = 12
self.opacity = 127
self.contents.font.name = "Tahoma"
refresh
end
def refresh
self.contents.clear
self.contents.draw_text(0, -7, 200, 32, "Save")
if mouse_over?(self) and Input.pressed?(Input::Mouse_Left) == true
$scene = Scene_Save.new
end
end
def update
refresh
end
def mouse_over?(window)
if $mouse.x > window.x and $mouse.x < window.x + window.width and
$mouse.y > window.y and $mouse.y < window.y + window.height
return true
end
return false
end
end
class Scene_Map
alias old_main main
alias old_update update
def init_hud
@Window = Window_1.new
@Window2 = Window_2.new
@Window3 = Window_3.new
@Window4 = Window_4.new
@Window5 = Window_5.new
@Window6 = Window_6.new
@Window7 = Window_7.new
@Window8 = Window_8.new
@Exp = $game_party.actors[0].next_rest_exp_s
@Hp = $game_party.actors[0].hp
@Sp = $game_party.actors[0].sp
@gold = $game_party.gold
@str = $game_party.actors[0].str
@dex = $game_party.actors[0].dex
@agi = $game_party.actors[0].agi
@int = $game_party.actors[0].int
@level = $game_party.actors[0].level
@Name = $game_party.actors[0].name
end
def main
init_hud
old_main
end
def dispose
old_dispose
@Window.dispose
@Window2.dispose
@Window3.dispose
@Window4.dispose
@Window5.dispose
@Window6.dispose
@Window7.dispose
@Window8.dispose
end
def update
@Window.update if @Hp != $game_party.actors[0].hp or @Sp != $game_party.actors[0].sp or @Exp != $game_party.actors[0].next_rest_exp_s or @gold != $game_party.gold or @level != $game_party.actors[0].level or @Name != $game_party.actors[0].name
@Window3.update
@Window4.update
@Window5.update
@Window6.update
@Window7.update
@Window8.update
old_update
end
end
Créditos pelas HUDs:
Evixian e IcedmetalEspero que tenha gostado.
- Spoiler:
+ Credit? xP