Mr. Mo Hud - Adaptação
2 participantes
Brasil G4mes :: Scripts :: Scripts RGSS1
Página 1 de 1
Mr. Mo Hud - Adaptação
Mr. Mo Hud - Adaptação
por Mr.Mo "Muhammet Sivri" & Axerax
Introdução
É um script bem interessante, pois ele dá novas possibilidades a velha HUD do Mr. Mo ABS.
O sistema de reputação implantado na Hud é muito bom, realmente muito bom. Faz com que o jogo fique um pouco mais corrido, pois geralmente o sistema de reputação é colocado no menu de pause, o que com isso priva o jogador dessa pausa momentânea no jogo.
Já o nome do Clan é perfeito para jogos em que o jogador pode seguir por diferentes locais.
Screen
Imagens necessárias
*Colocadas na pasta "icons" do projeto
Script
Introdução
É um script bem interessante, pois ele dá novas possibilidades a velha HUD do Mr. Mo ABS.
O sistema de reputação implantado na Hud é muito bom, realmente muito bom. Faz com que o jogo fique um pouco mais corrido, pois geralmente o sistema de reputação é colocado no menu de pause, o que com isso priva o jogador dessa pausa momentânea no jogo.
Já o nome do Clan é perfeito para jogos em que o jogador pode seguir por diferentes locais.
Screen
Imagens necessárias
*Colocadas na pasta "icons" do projeto
Script
- Spoiler:
- Código:
#==============================================================================
#
** HUD
#------------------------------------------------------------------------------
#
Mr.Mo "Muhammet Sivri" & Axerax
# Version 1.8
# 10.01.06
#
Credit: Prexus for the Original Background. Axerax for edited HUD
Background.
# Axerax for HUD Display,Mini-Map Backdrop HUD, and
Hotkeys HUD.
# Notes: Be sure you have the Selwyn Passability
Mini-Map before trying to use
# this version of the HUD. As well
follow steps provided by Selwyn in his script
# to display the
Mini-Map itself, my HUD will not display it for you, it is only
# a
backdrop that displays the name of the map you are currently on.
#==============================================================================
#-------------------------------------------------------------------------------
#
Begin SDK Enabled Check
#-------------------------------------------------------------------------------
if
SDK.state("Mr.Mo's ABS")
#--------------------------------------------------------------------------
#
* Constants - MAKE YOUR EDITS HERE
#--------------------------------------------------------------------------
HP_X
= 54 # X POS of the HP Bar
HP_Y = 3 # Y POS
of the HP Bar
HP_WIDTH = 55 # WIDTH of the HP Bar
HP_HEIGHT
= 5 # Height of the HP Bar
#--------------------------------------------------------------------------
SP_X
= 54 # X POS of the SP Bar
SP_Y = 22 # Y POS
of the SP Bar
SP_WIDTH = 55 # WIDTH of the SP Bar
SP_HEIGHT
= 5 # Height of the SP Bar
#--------------------------------------------------------------------------
EXP_X
= 55 # X POS of the EXP Bar
EXP_Y = 42 # Y POS
of the EXP Bar
EXP_WIDTH = 60 # WIDTH of the EXP Bar
EXP_HEIGHT
= 5 # Height of the EXP Bar
#--------------------------------------------------------------------------
STATES_SHOW
= true # Show states?
STATES_X = 170 # States X display
STATES_Y
= 430 # States Y display
#--------------------------------------------------------------------------
HOTKEYS_SHOW
= true #Show hotkeys?
HOTKEYS_X = 180 #Hotkeys X Display
HOTKEYS_Y
= 440 #Hotkeys Y Display
#--------------------------------------------------------------------------
SHOW_DASH
= true # Show dash bar?
DASH_X = 95 # X POS of the
DASH Bar
DASH_Y = 430 # Y POS of the DASH Bar
DASH_WIDTH =
55 # WIDTH of the DASH Bar
DASH_HEIGHT = 5 # Height of the
DASH Bar
DASH_BAR = "018-Simple03" # The file used for gradient
#--------------------------------------------------------------------------
SHOW_SNEAK
= true # Show SNEAK bar?
SNEAK_X = 95 # X POS of the
SNEAK Bar
SNEAK_Y = 445 # Y POS of the SNEAK Bar
SNEAK_WIDTH
= 55 # WIDTH of the SNEAK Bar
SNEAK_HEIGHT = 5 # Height of
the SNEAK Bar
SNEAK_BAR = "019-Simple04" # The file used for
gradient
#--------------------------------------------------------------------------
LOW_HP
= 150 # What HP should the low HP icon be shown?
#--------------------------------------------------------------------------
HP_ITEMID
= 1 # POTION ITEM ID
SP_ITEMID = 4 # SP Increase
Item ID
#--------------------------------------------------------------------------
CAN_TOGGLE
= true
TOGGLE_KEY = Input::Letters["E"]
#--------------------------------------------------------------------------
MINI_MAP
= true # Display Mini-Map?
#--------------------------------------------------------------------------
REPVAR_FRIENDS_N
= 26 #Variable number that will save as many players as he has on the
friends list
REPVAR_IGRFRIENDS_N = 76 #Variable number that will save
as many players as he has ignored the list of friends
REPVAR_PARTYS_N
= 28 #Variable number that will save many partys he has participated
REPVAR_INCLAN_N
= 29 #Variable number that will save you're in a clan
REPVAR_CLANSBUNED_N
= 30 #Variable number that will save on how many clan he was banished
#----------
----------------------------------------------------------------
CLAN_NAME_VAR
= 31 #Variable that Will Keep Name Clan
#---------------------------------------------------------------------------
class
Window_MrMo_HUD < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
super(-16, -16, 700, 700)
#Record Old Data
@actor = $game_party.actors[0]
@old_hp = @actor.hp
@old_sp = @actor.sp
@old_exp = @actor.exp
@level =
@actor.level
@hp_n = $game_party.item_number(HP_ITEMID)
@sp_n = $game_party.item_number(SP_ITEMID)
@gold_n =
$game_party.gold
@states = @actor.states.to_s
@dash =
$ABS.dash_min
@sneak = $ABS.sneak_min
#Create Bitmap
self.contents = Bitmap.new(width - 32, height - 32)
#Hide Window
self.opacity = 0
#Refresh
refresh
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color =
system_color
self.contents.font.color = normal_color
self.contents.font.size = 12
#Record new data
@actor =
$game_party.actors[0]
@old_hp = @actor.hp
@old_sp =
@actor.sp
@old_exp = @actor.exp
@level = @actor.level
@hp_n = $game_party.item_number(HP_ITEMID)
@sp_n =
$game_party.item_number(SP_ITEMID)
@gold_n = $game_party.gold
@states = @actor.states.to_s
@dash = $ABS.dash_min
@sneak = $ABS.sneak_min
@time = game_time
@time =
$kts.time.to_s if $kts != nil
#Show the Pictures
bitmap =
RPG::Cache.picture("HUD Graphic")
self.contents.blt(0, 0, bitmap,
Rect.new(0, 10, 175, 175))
bitmap = RPG::Cache.picture("HUD
Display")
self.contents.blt(15, 380, bitmap, Rect.new(0, 0, 175,
175))
bitmap = RPG::Cache.picture("HUD Time Display")
self.contents.blt(553.5, 338.5, bitmap, Rect.new(0, 0, 175, 175))
bitmap = RPG::Cache.picture("Hotkeys HUD")
self.contents.blt(250, -10, bitmap, Rect.new(0, 0, 400, 80))
if
MINI_MAP
bitmap = RPG::Cache.picture("Mini-Map HUD")
self.contents.blt(493, 362.5, bitmap, Rect.new(0, 0, 175, 175))
#Show Map Name
map_infos = load_data("Data/MapInfos.rxdata")
name = map_infos[$game_map.map_id].name.to_s
self.contents.draw_text(520, 455, 400, 32, name.to_s)
end
#Show the HP Symbol
bitmap = RPG::Cache.icon("HP Symbol")
self.contents.blt(0, -2, bitmap, Rect.new(0, 0, 24, 24))
self.contents.draw_text(35, -9, 640, 32, "HP")
#Draw the HP BAR
draw_gradient_bar(HP_X, HP_Y, @actor.hp, @actor.maxhp, HP_BAR,
HP_WIDTH, HP_HEIGHT)
#Show the SP Symbol
bitmap =
RPG::Cache.icon("SP Symbol")
self.contents.blt(0, 18, bitmap,
Rect.new(0, 0, 24, 24))
self.contents.draw_text(35, 11, 640, 32,
"SP")
#Draw the SP Bar
draw_gradient_bar(SP_X, SP_Y,
@actor.sp, @actor.maxsp, SP_BAR, SP_WIDTH, SP_HEIGHT)
#Show the
EXP Symbol
bitmap = RPG::Cache.icon("EXP Symbol")
self.contents.blt(0, 37, bitmap, Rect.new(0, 0, 24, 24))
self.contents.draw_text(35, 30, 640, 32, "EXP")
#Draw the EXP Bar
min = @actor.level == 99 ? 1 : @actor.now_exp
max =
@actor.level == 99 ? 1 : @actor.next_exp
draw_gradient_bar(EXP_X,
EXP_Y, min, max, EXP_BAR, EXP_WIDTH, EXP_HEIGHT)
#Show Hero Icon
bitmap = RPG::Cache.icon("Hero")
self.contents.blt(2, 59,
bitmap, Rect.new(0, 0, 24, 24))
self.contents.draw_text(35, 49,
640, 32, "Hero:")
self.contents.draw_text(30, 59, 640, 32,
@actor.name.to_s)
#Show Level Icon
bitmap =
RPG::Cache.icon("Level")
self.contents.blt(2, 81, bitmap,
Rect.new(0, 0, 24, 24))
self.contents.draw_text(33, 72, 640, 32,
"Level:")
self.contents.draw_text(43, 82, 640, 32,
@actor.level.to_s)
#Show Gold Icon
bitmap =
RPG::Cache.icon("Gold")
self.contents.blt(35, 390, bitmap,
Rect.new(0, 0, 24, 24))
self.contents.draw_text(30, 400, 640, 32,
$game_party.gold.to_s)
#Show Rep Icon
bitmap =
RPG::Cache.icon("Rept")
rep_na = @actor.exp / @actor.level * 2
rep_nb = $game_variables[REPVAR_FRIENDS_N] -
$game_variables[REPVAR_IGRFRIENDS_N]
rep_nc =
$game_variables[REPVAR_PARTYS_N] * 2
rep_nd =
$game_variables[REPVAR_INCLAN_N] * 10
rep_ne =
$game_variables[REPVAR_CLANSBUNED_N]
rep_n = rep_na + rep_nb +
rep_nc + rep_nd - rep_ne
self.contents.blt(45, 410, bitmap,
Rect.new(0, 0, 24, 24))
self.contents.draw_text(40, 420, 640, 32,
rep_n.to_s)
#Show Clan Name
bitmap =
RPG::Cache.icon("ClanIco")
if $game_variables[CLAN_NAME_VAR] == 0
clan_n = "Sem Clan"
elsif $game_variables[CLAN_NAME_VAR] == 1
clan_n = "Fenix Club"
elsif $game_variables[CLAN_NAME_VAR]
== 2
clan_n = "Aqua Club"
end
self.contents.blt(2, 105, bitmap, Rect.new(0, 0, 24, 24))
self.contents.draw_text(35, 110, 640, 32, clan_n.to_s)
#Show
Clock
self.contents.font.color = system_color
self.contents.font.color = normal_color
self.contents.font.size =
14
self.contents.draw_text(570, 270, 175, 175, @time.to_s)
#If the HP is too low
if @actor.hp.to_i <= LOW_HP
bitmap = RPG::Cache.icon("Skull")
self.contents.blt(130, 0,
bitmap, Rect.new(0, 0, 24, 24))
end
#If the SP Item is
more then 0
if $game_party.item_number(SP_ITEMID) > 0
bitmap = RPG::Cache.icon("SP Potion")
self.contents.blt(110,
20, bitmap, Rect.new(0, 0, 24, 24))
end
#if the HP Item is
more then 0
if $game_party.item_number(HP_ITEMID) > 0
bitmap = RPG::Cache.icon("HP Potion")
self.contents.blt(110,
0, bitmap, Rect.new(0, 0, 24, 24))
end
if STATES_SHOW
begin
#Draw States Background
n = -2
for id in @actor.states
state = $data_states[id]
next if state == nil
bitmap =
RPG::Cache.picture("States Display")
x = (n*40) + 185
self.contents.blt(x, 50, bitmap, Rect.new(0, 0, 49, 58))
n += 1
end
#Draw States
n = -2
for id in @actor.states
state = $data_states[id]
next if state == nil
bitmap =
RPG::Cache.icon(state.name+"_Icon")
x = (n*40) + +195
self.contents.blt(x, 65, bitmap, Rect.new(0, 0, 24, 24))
self.contents.draw_text(x, 66.5, 49, 58, state.name.to_s)
n += 1
end
rescue
print "#{$!} - Don't
ask Mr.Mo for it!!!"
end
end
if HOTKEYS_SHOW
#Draw Hotkeys
count = 0
#Make a loop to get all
the ideas that are Hotkeyed
for id in $ABS.skill_keys.values
#Skip NIL values
next if id == nil
#Get
skill
skill = $data_skills[id]
#Skip NIL values
next if skill == nil
#Get Icon
icon =
RPG::Cache.icon(skill.icon_name)
x = (count*32) + 280
self.contents.blt(x, 27, icon, Rect.new(0, 0, 200, 100))
self.contents.draw_text(x, 33, 49, 58, skill.name.to_s)
#Increase Count
count += 1
end
end
#Change font size
self.contents.font.size = 20
#Dash Bar
self.contents.draw_text(DASH_X - 40, DASH_Y-10, 40, 32, "") if
SHOW_DASH
draw_gradient_bar(DASH_X, DASH_Y, $ABS.dash_min,
$ABS.dash_max, DASH_BAR, DASH_WIDTH, DASH_HEIGHT) if SHOW_DASH
#SNEAK Bar
self.contents.draw_text(SNEAK_X - 40, SNEAK_Y-10, 40,
32, "") if SHOW_SNEAK
draw_gradient_bar(SNEAK_X, SNEAK_Y,
$ABS.sneak_min, $ABS.sneak_max, SNEAK_BAR, SNEAK_WIDTH, SNEAK_HEIGHT) if
SHOW_SNEAK
end
#--------------------------------------------------------------------------
# * Update
#--------------------------------------------------------------------------
def update
refresh if something_changed?
end
#--------------------------------------------------------------------------
# * Something Changed?
#--------------------------------------------------------------------------
def something_changed?
return false if Graphics.frame_count % 30
!= 0
return true if @actor != $game_party.actors[0]
return true if @old_hp != @actor.hp or @old_sp != @actor.sp or @old_exp
!= @actor.exp
return true if @level != @actor.level
return
true if @hp_n != $game_party.item_number(HP_ITEMID) or @sp_n !=
$game_party.item_number(SP_ITEMID)
return true if @gold_n !=
$game_party.gold
return true if @states.to_s !=
@actor.states.to_s
return true if @dash != $ABS.dash_min or
@sneak != $ABS.sneak_min
return true if $kts != nil and @time !=
$kts.time.to_s
return true if $kts == nil and @time != game_time
return false
end
#--------------------------------------------------------------------------
# * Game Time
#--------------------------------------------------------------------------
def game_time
total_sec = Graphics.frame_count /
Graphics.frame_rate
hour = total_sec / 60 / 60
min =
total_sec / 60 % 60
sec = total_sec % 60
text =
sprintf("%02d:%02d:%02d", hour, min, sec)
return text
end
#--------------------------------------------------------------------------
def CAN_TOGGLE
return CAN_TOGGLE
end
#--------------------------------------------------------------------------
def TOGGLE_KEY
return TOGGLE_KEY
end
end
#==============================================================================
#
* Scene_Map
#==============================================================================
class
Scene_Map
#--------------------------------------------------------------------------
alias mrmo_hud_main_draw main_draw
alias mrmo_hud_main_dispose
main_dispose
alias mrmo_hud_update_graphics update_graphics
alias mrmo_keyhud_update update
#--------------------------------------------------------------------------
# * Main Draw
#--------------------------------------------------------------------------
def main_draw
@mrmo_hud = Window_MrMo_HUD.new
mrmo_hud_main_draw
end
#--------------------------------------------------------------------------
# * Turn HUD Show
#--------------------------------------------------------------------------
def hud_show
@mrmo_hud.visible = true
end
#--------------------------------------------------------------------------
# * Turn HUD Hide
#--------------------------------------------------------------------------
def hud_hide
@mrmo_hud.visible = false
end
#--------------------------------------------------------------------------
# * Main Dispose
#--------------------------------------------------------------------------
def main_dispose
@mrmo_hud.dispose
mrmo_hud_main_dispose
end
#--------------------------------------------------------------------------
# * Update Graphics
#--------------------------------------------------------------------------
def update_graphics
mrmo_hud_update_graphics
@mrmo_hud.update
end
#--------------------------------------------------------------------------
# * Update
#--------------------------------------------------------------------------
def update
mrmo_keyhud_update
if @mrmo_hud.CAN_TOGGLE and
Input.trigger?(@mrmo_hud.TOGGLE_KEY)
return @mrmo_hud.visible =
true if !@mrmo_hud.visible
return @mrmo_hud.visible = false if
@mrmo_hud.visible
end
end
end
#--------------------------------------------------------------------------
#
* SDK End
#--------------------------------------------------------------------------
end
class
Game_Actor
#--------------------------------------------------------------------------
# * Get the current EXP
#--------------------------------------------------------------------------
def now_exp
return @exp - @exp_list[@level]
end
#--------------------------------------------------------------------------
# * Get the next level's EXP
#--------------------------------------------------------------------------
def next_exp
exp = @exp_list[@level+1] > 0 ?
@exp_list[@level+1] - @exp_list[@level] : 0
return exp
end
end
Re: Mr. Mo Hud - Adaptação
não me dou muito bem com os abs do xp.. rsrsrs
mas legal a hud! + fama por disponibilizar
mas legal a hud! + fama por disponibilizar
Knuckles- Administrador
- Mensagens : 1420
Fama : 60
Brasil G4mes :: Scripts :: Scripts RGSS1
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos