Krótki opis:
HUD w stylu Assassin's Creed. Jest w nim dodatkowa opcja zanikania przy kontakcie z bohateem. Ten sam skrypt ale bez opcji zanikania jest dostępny na tej stronie - http://ultimasquad.manifo.com/skrypty.
Autor:
Ja - Etam
Skrypt:
Spoiler:
Kod:
#================================================#
# Etam's AC HUD (Assassin's Creed)
# Z opcją zanikania HUD'u przy kontakcie z postacią
# Autor : Etam
# Z cytatami Angiusa
#================================================#
# Umiejscowienie HUD'u
# Wpisz minus przed wartością, jeśli chcesz by HUD znajdował się po przeciwnej stronie.
Position_X = 5
Position_Y = 5
Images_folder_of_the_HUD = "Graphics/Pictures/" # Folder z grafikami
Bottom_of_the_HUD = "HUD.png" # Nazwa grafiki z HUD'em
Bar_HP = "HP.png" # Nazwa grafiki z HP
Using_transparency_in_the_entrance = true # HUD znika, gdy jest pod nim postać
Using_transparency_in_the_exit = true # FadeOut do zanikania
Speed = 3 # Prędkość zanikania
Final_Opacity = 255 # Ostateczna przeźroczystość HUDa
Opacity_Final_Element = 255 # Ostateczna przeźroczystość elementów HUDa
Character_Opacity = 150 # Przeźroczystość, gdy bohater pod HUDem
Opacity_Character_Element = 160 # Przeźroczystość elementów
Switch_Control = 1 #Przełącznik aktywujący.
# HUD jest włączony gdy przełącznik jest on.
Number_Character = 1 # ID postaci o której jest HUD
# True by wyświetlać pasek HP
HP_Show = true
HP_X = 32 # Szerokość na której ma znajdować się pasek HP
HP_Y = 12 # Wysokość na której ma znajdować się pasek HP
#==============================================================#
#========== "Koniec potężnej konfiguracji" (Angius) ==========#
#==============================================================#
#===== Poniżej nic nie edytuj bo cię znajdę i zabiję :) ======#
#===================== Tak. To groźba! ======================#
#==============================================================#
end
class Scene_Map < Scene_Base
include FAJNY_HUD_Z_AC
alias hud_start start
alias hud_update update
alias hud_terminate terminate
def start
active_hud
hud_start
end
def active_hud
$game_switches[Switch_Control] = true
@animation_hud1 = Using_transparency_in_the_entrance
@animation_hud2 = Using_transparency_in_the_entrance
@animation_hud_1 = Using_transparency_in_the_exit
@animation_hud_2 = Using_transparency_in_the_exit
@back = Sprite.new
@back.bitmap = Cache.load_bitmap(Images_folder_of_the_HUD, Bottom_of_the_HUD)
@back.opacity = 0 if @animation_hud1 == true
x = Position_X
y = Position_Y
w = @back.width
h = @back.height
x = ( x == nil ? ( 544 - w ) / 2 : ( x < 0 ? ( 544 + x - w ) : x ) )
y = ( y == nil ? ( 416 - h ) / 2 : ( y < 0 ? ( 416 + y - h ) : y ) )
@back.x = x
@back.y = y
@back.z = 190
@wind = Window_Base.new(x-16,y-16,w+32,h+32)
@wind.opacity = 0
@wind.contents_opacity = 0 if @animation_hud2 == true
@wind.z = 195
@wind.contents.font.shadow = false
@id = Number_Character-1
@info = []
@hp = Sprite.new
@hp.bitmap = Bitmap.new(32,32)
@hp.x = HP_X + x
@hp.y = HP_Y + y
@hp.z = 192
@hp.opacity = 0 if @animation_hud2 == true
real_update if status_update
end
def terminate
if @animation_hud_1 == true
@back.bitmap.dispose
@back.dispose
end
if @animation_hud_2 == true
@hp.bitmap.dispose
@hp.dispose
@wind.contents.dispose
@wind.dispose
end
hud_terminate
end
def update
if $game_switches[Switch_Control] == true
if @back != nil
if @back.opacity < Final_Opacity and @animation_hud1 == true
@back.opacity += Speed
else
@back.opacity = Final_Opacity
@animation_hud1 = false
end
if @wind.contents_opacity < Opacity_Final_Element and @animation_hud2 == true
@wind.contents_opacity += Speed
@hp.opacity += Speed
else
@wind.contents_opacity = Opacity_Final_Element
@hp.opacity = Opacity_Final_Element
@animation_hud2 = false
end
else
active_hud
end
else
if @back != nil
if @back.opacity > Speed-1 and @animation_hud_1 == true
@back.opacity -= Speed
else
@back.bitmap.dispose
@back.dispose
@back = nil
@animation_hud_1 = false
end
if @wind.contents_opacity > Speed-1 and @animation_hud_2 == true
@wind.contents_opacity -= Speed
@hp.opacity -= Speed
else
if @animation_hud_2 == true
@hp.bitmap.dispose
@hp.dispose
@hp = nil
@wind.contents.dispose
@wind.dispose
@wind = nil
@animation_hud_2 = false
end
end
end
end
if @back != nil
if $game_player.screen_x >= @back.x and $game_player.screen_x <= @back.x + @back.width and
$game_player.screen_y >= @back.y and $game_player.screen_y <= @back.y + @back.height
@back.opacity = Character_Opacity
@hp.opacity = Opacity_Character_Element
@wind.contents_opacity = Opacity_Character_Element
end
end
real_update if status_update
hud_update
end
def real_update
a = $game_party.members[@id]
@wind.contents.clear
if HP_Show
@hp.bitmap.dispose
@hp.bitmap = Cache.load_bitmap(Images_folder_of_the_HUD, Bar_HP)
@hp.bitmap.clear_rect(Rect.new((@hp.width*a.hp/a.maxhp),0,@hp.width,@hp.height))
end
end
def status_update
return false if @wind == nil
a = $game_party.members[@id]
return update_infos if a.id != @info[0]
return update_infos if a.hp != @info[1]
return false
end
def update_infos
a = $game_party.members[@id]
@info[0] = a.id
@info[1] = a.hp
return true
end
end
Screeny:
Spoiler:
Dodatkowe informacje: Potrzebne grafiki :
HUD -
Hp -
Uwaga! Dla osób które zaczynają przygodę z RPG Makerem! W trakcie importowania grafiki należy zaznaczyć żółty kolor jako przezroczysty!
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum