HUD ekwipunku na mapie - Pomocy - MgGame97 - 13-07-15 04:50
Proszę o pomoc z dostowaniem HUDa wyświetlającego ekwipunek postaci.
Pragnę go ustawić tak, by pokazywał on aktualnie dobraną broń i był widoczny jedynie podczas gry na mapie. Jest on jednak widoczny również w walce i menu.
Czy może mnie ktoś poratować pomocą?
Z góry dziękuję.
Tutaj wstawiam obrazek, który należy umieścić w folderze Graphics/Pictures/ pod nazwą Equip2 : http://imageshack.com/a/img905/6638/4frG8R.png
Kod:
module Rafidelis_Equipamentos
#==============================================================================|
# S T A R T O F C O N F I G U R A T I O N S |
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
# Leave at True to show the icon Equipment | False not to Show |
MOSTRAR_ARMA = true
# Leave at True to show the icon of the Shield | False not to Show |
MOSTRAR_ESCUDO = false
# Leave at True to show the icon of the helmet | False not to Show |
MOSTRAR_ELMO = false
# Leave at True to show the icon of Armor | False not to Show |
MOSTRAR_ARMADURA = false
# Usar Imagem de fundo?
# Leave at True to show the icon of Acessories| False not to Show |
MOSTRAR_ACESSORIO = false
# Opacity of Windows that will show the icons of Equipment
OPACIDADE = 0
# Use background image?
USAR_IMG = true
# If above is true, what is the name of the image being used?
IMG_NOME = "Equip2"
#==============================================================================|
# D I S P L A Y T Y P E |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
# 1 to display the icons horizontally on top of the SCREEN |
#------------------------------------------------- -----------------------------|
# 2 To view the icons at the left corner of VERTICAL SCREEN |
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
# 3 To view the icons horizontally in the bottom of the SCREEN |
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
# IF YOU ARE NOT USING A number 1 or 2 or 3 The script will generate an error
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
TIPO = 3
end
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
class Rafidelis_Equip_Window < Window_Base
def initialize(x,y,n)
@n = n
@x = x
@y = y
super(x,y,560,560)
refresh
end
end
#==============================================================================|
# R E F R E S H
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
def refresh
self.contents.clear
@actor = $game_party.members[0]
draw_item_name(@actor.equips[@n], 0, 0)
end
#==============================================================================|
# S T A R T O F C L A S S S C E N E M A P |
#------------------------------------------------------------------------------|
class Scene_Map
include Rafidelis_Equipamentos
alias rafidelis_start start
alias rafidelis_terminate terminate
alias rafidelis_update update
def start
#-------------------------------------------------------------------------------
@Window_Equip = nil
if TIPO == 1
@Window_Equip = Rafidelis_Equip_Window.new(0,0,0)
elsif TIPO == 2
@Window_Equip = Rafidelis_Equip_Window.new(0,0,0)
elsif TIPO == 3
@Window_Equip = Rafidelis_Equip_Window.new(0,360,0)
end
if MOSTRAR_ARMA == true
@Window_Equip.visible = true
else
@Window_Equip.visible = false
end
@Window_Equip.opacity = OPACIDADE
#-------------------------------------------------------------------------------
@Window_Equip2 = nil
if TIPO == 1
@Window_Equip2 = Rafidelis_Equip_Window.new(56,0,1)
elsif TIPO == 2
@Window_Equip2 = Rafidelis_Equip_Window.new(0,56,1)
elsif TIPO == 3
@Window_Equip2 = Rafidelis_Equip_Window.new(56,360,1)
end
if MOSTRAR_ESCUDO == true
@Window_Equip2.visible = true
else
@Window_Equip2.visible = false
end
@Window_Equip2.opacity = OPACIDADE
#-------------------------------------------------------------------------------
@Window_Equip3 = nil
if TIPO == 1
@Window_Equip3 = Rafidelis_Equip_Window.new(56*2,0,2)
elsif TIPO == 2
@Window_Equip3 = Rafidelis_Equip_Window.new(0,56*2,2)
elsif TIPO == 3
@Window_Equip3 = Rafidelis_Equip_Window.new(56*2,360,2)
end
if MOSTRAR_ELMO == true
@Window_Equip3.visible = true
else
@Window_Equip3.visible = false
end
@Window_Equip3.opacity = OPACIDADE
#-------------------------------------------------------------------------------
@Window_Equip4 = nil
if TIPO == 1
@Window_Equip4 = Rafidelis_Equip_Window.new(56*3,0,3)
elsif TIPO == 2
@Window_Equip4 = Rafidelis_Equip_Window.new(0,56*3,3)
elsif TIPO == 3
@Window_Equip4 = Rafidelis_Equip_Window.new(56*3,360,3)
end
if MOSTRAR_ARMADURA == true
@Window_Equip4.visible = true
else
@Window_Equip4.visible = false
end
@Window_Equip4.opacity = OPACIDADE
#-------------------------------------------------------------------------------
@Window_Equip5 = nil
if TIPO == 1
@Window_Equip5 = Rafidelis_Equip_Window.new(56*4,0,4)
elsif TIPO == 2
@Window_Equip5 = Rafidelis_Equip_Window.new(0,56*4,4)
elsif TIPO == 3
@Window_Equip5 = Rafidelis_Equip_Window.new(56*4,360,4)
end
if MOSTRAR_ACESSORIO == true
@Window_Equip5.visible = true
else
@Window_Equip5.visible = false
end
@Window_Equip5.opacity = OPACIDADE
if USAR_IMG
if TIPO == 1
@bg = Sprite.new
@bg.bitmap = Cache.picture(IMG_NOME)
@bg.x = 1
@bg.y = 1
end
end
if TIPO == 2
@bg = Sprite.new
@bg.bitmap = Cache.picture(IMG_NOME)
@bg.x = 54
@bg.y = 1
@bg.angle = 270.5
end
if TIPO == 3
@bg = Sprite.new
@bg.bitmap = Cache.picture(IMG_NOME)
@bg.x = 3
@bg.y = 360
end
#-------------------------------------------------------------------------------
rafidelis_start
end
def terminate
@Window_Equip.dispose
@Window_Equip2.dispose
@Window_Equip3.dispose
@Window_Equip4.dispose
@Window_Equip5.dispose
rafidelis_terminate
end
def update
@Window_Equip.update
@Window_Equip2.update
@Window_Equip3.update
@Window_Equip4.update
@Window_Equip5.update
rafidelis_update
end
end
#=================================================================
# www.ReinoRpg.com
#=================================================================
RE: HUD ekwipunku na mapie - Pomocy - Mateusz SSJ8 - 13-07-15 08:50
Częsty błąd gotowych skryptów.
Będziesz musiał wywołać "dispose" dla całego HUDa, żeby zniknął. Jeśli tej funkcji nie ma, musisz ją wywołać 1 raz na każdy element HUDa. Ale zazwyczaj elementy oparte na grafice mają już tę funkcję.
RE: HUD ekwipunku na mapie - Pomocy - MgGame97 - 13-07-15 11:59
Wiem, że to głupio zabrzmi, ale jestem totalnym newbie jeśli chodzi o skrypty.
Gdzie mam wywoływać te dispose i... na dobrą sprawę jak? : (
Jeśli istnieje możliwie najprostsza metoda, to jak po prostu zablokować wyświetlanie huda, podczas menu, walki itp. Wyświetla on się nawet podczas ekranu Game Over. :/
RE: HUD ekwipunku na mapie - Pomocy - Ayene - 13-07-15 12:32
Znajdź linijkę (ok. 173):
Kod:
@Window_Equip5.dispose
i dodaj pod nią:
Kod:
@bg.bitmap.dispose
@bg.dispose
RE: HUD ekwipunku na mapie - Pomocy - MgGame97 - 13-07-15 13:20
Dziękuję ślicznie :)
Daję "pomogli"
Do zamknięcia :)
|