Michu_1999 - Nie 06 Lis, 2011 16:52 Temat postu: Skrypt HUDWitajcie!Czy mógłby ktoś zrobić dla mnie taki oto podobny HUD (BEZ tych kółek pod kreskami z życiem i maną)
Życie Zielone, a Mana Niebieska.Nad Życiem Imię bohatera,a w wielkim kole jego twarz.W małym kole przy twarzy LVL. Za HUD'a dziękuje !!!Angius - Nie 06 Lis, 2011 17:17 Reino RPG HUD chyba dałoby się przerobić nieco.Michu_1999 - Nie 06 Lis, 2011 18:22 A umiałbyś??? Naprawdę potrzebuje.Angius - Nie 06 Lis, 2011 19:56 Wątpię, czy dałbym radę, bądź co bądź - RUBY-stą nie jestem, rzucam tylko pomysły...Michu_1999 - Pon 07 Lis, 2011 15:38 Umiałby ktoś. Naprawdę tego potrzebuje. Avara - Pon 07 Lis, 2011 16:03 Ten HUD nie jest trudny. Jednak jest pewien problem: jak wstawić kwadratową twarz w to koło Będzie to głupio wyglądać. Jeśli będziesz mieć dopasowany obrazek twarzy (w kształcie koła i w odpowiednim rozmiarze), to mogę spróbować to zrobić. Albo wstaw obrazek twarzy, to sama będę mogła wyciąć. Napisz też, gdzie ten HUD ma być widoczny. To postaram się Ci to zrobić, ale raczej nie na dzisiaj.tracersgta - Pon 07 Lis, 2011 16:04 Przeglądnij inne skrypty Hud-ów... Może inne spodobają ci bardziej niż ten Michu_1999 - Pon 07 Lis, 2011 19:09
Avara napisał/a:
Ten HUD nie jest trudny. Jednak jest pewien problem: jak wstawić kwadratową twarz w to koło Będzie to głupio wyglądać. Jeśli będziesz mieć dopasowany obrazek twarzy (w kształcie koła i w odpowiednim rozmiarze), to mogę spróbować to zrobić. Albo wstaw obrazek twarzy, to sama będę mogła wyciąć. Napisz też, gdzie ten HUD ma być widoczny. To postaram się Ci to zrobić, ale raczej nie na dzisiaj.
Tutaj masz obrazek . Najlepiej jak by był w górnym lewym rogu.Avara - Wto 08 Lis, 2011 10:38 Oto Twój skrypt:
Spoiler:
Wrzuć nad Main w edytorze skryptów.
Kod:
=begin
********************************************************************
* HUD WoW VX for Michu_1999 by Avara *
* Autor: Avara *
* ultimateam.pl *
**********************************************************************
Hud stworzony na zamówienie dla Michu_1999. Wrzucić nad Main w edytorze skryptów.
Grafika wzięta z gry "World of Warcraft". Należy ją umieścić w folderze
Graphics\System.
Proszę nie zapomnieć o wspomnieniu o twórcy skryptu w swoim projekcie.
Życzę miłego kożystania ;-)
=end
module HUD_WoW_by_Avara # <- nie usuwać!
# KONFIGURACJA
HUD_WOW_WIDOCZNY_START = true #czy hud ma być widoczny od samego początku gry (true/false)
HUD_WOW_WIDOCZNY = 20 #numer przełącznika, włączający/wyłączający hud
HUD_WOW_UKRYJ = true #ukryj HUD, gdy bohater znajduje się za nim
HUD_WOW_UKRYJ_NP = 100 #poziom "nieprzezroczystości" (0 - przezroczyste;
#255 - nieprzezroczyste), gdy uktywanie jest włączone
# KONIEC KONFIGURACJI
# Dalej zmieniać na własne ryzyko!
end
def ukryj
if HUD_WoW_by_Avara::HUD_WOW_UKRYJ == true
if $game_player.screen_x - 16 < 187 and $game_player.screen_y - 28 < 60
self.contents_opacity = HUD_WoW_by_Avara::HUD_WOW_UKRYJ_NP
else
self.contents_opacity = 255
end
end
end
end
class Scene_Map < Scene_Base
alias hud_wow_by_avara_st start
def start
hud_wow_by_avara_st
@hud_wow_by_avara = HUD_WoW.new
if $game_switches[HUD_WoW_by_Avara::HUD_WOW_WIDOCZNY] == false
@hud_wow_by_avara.visible = false
end
end
alias hud_wow_by_avara_term terminate
def terminate
hud_wow_by_avara_term
@hud_wow_by_avara.dispose
end
alias hud_wow_by_avara_up update
def update
hud_wow_by_avara_up
if $game_switches[HUD_WoW_by_Avara::HUD_WOW_WIDOCZNY] == true
@hud_wow_by_avara.update
@hud_wow_by_avara.visible = true
else
@hud_wow_by_avara.visible = false
end
end
end
class Scene_Title < Scene_Base
alias hud_wow_by_avara_cr_ga_ob create_game_objects
def create_game_objects
hud_wow_by_avara_cr_ga_ob
$game_switches[HUD_WoW_by_Avara::HUD_WOW_WIDOCZNY] = HUD_WoW_by_Avara::HUD_WOW_WIDOCZNY_START
end
end
@edit 13:27 : Dodałam zanikanie okna z hudem, gdy postać się za nim znajduje. Przetestuj
Nie zapomnij wspomnieć o mnie w swoim projekcie (w napisach końcowych/twórcach)
Grafikę wrzuć do folderu Graphics\System.
Spoiler:
Nieważne gdzie wrzucam, zmieniają się nazwy obrazków. Zapisz obrazki jako:
hud.png
pasek_zycia.png
pasek_many.png
Jakbyś chciał coś zmienić/dodać, to napisz w tym temacie.Michu_1999 - Wto 08 Lis, 2011 16:58 Coś nie działa Avara - Wto 08 Lis, 2011 17:14 wrzuć screena błędu, u mnie wszystko działało i nie powinno się z niczym gryźć.Michu_1999 - Wto 08 Lis, 2011 17:27 Nie ma błędu, tylko się wogóle nie pokazujeAvara - Wto 08 Lis, 2011 17:36 1. Czy w linijce 16. ustawiłeś na pewno nieużywany dotąd przełącznik
2. Jeśli włączyłeś jakiś zapis gry, to ten przełącznik najprawdopodobniej jest wyłączony. Zrób zdarzenie i zmień wybrany przełącznik na on.Michu_1999 - Wto 08 Lis, 2011 17:47 Dzięki Byłem taki głupi/Wszystko Działa!
A dałoby się aby doświadczenie było wokół Głowy Postaci (Jak w Wiedźminie) i było żółte???Angius - Wto 08 Lis, 2011 17:49 Musiałbyś użyć skryptu pozwalającego generować okrągłe paski - pierścienie. To tzw. Scripter's Tool", więc jeśli Avara zechce, moge jej podrzucić.Avara - Wto 08 Lis, 2011 17:54 Da się, tylko od razu uprzedzam, że łatwiej gra może się zacinać. Wydaje mi się jednak, że przy tylko jednym takim pasku, nie powinno być takiego problemu. I nie wiem, czy uda mi się to zrobić z obrazkiem paska. Spróbuję, ale w ostateczności będzie tylko jednolity pasek.
A teraz pytanie o szczegóły:
1. Gdzie ma się pasek zaczynać Czyli gdzie ma być "0 expa" Tam po lewo poniżej ucha
2. Gdzie koniec paska Czyli gdzie ma być punkt "max expa" Przy czole Przy szyi
//Edit:
Angius znam ten skrypt i już się z takimi paskami bawiłam. Wystarczy tylko fragment tego skryptu.
//Edit 2:
Ponownie raczej tego dzisiaj nie zrobię, ale na jutro raczej będzie Michu_1999 - Wto 08 Lis, 2011 18:51 0 exp na dole przy szyi ( po prawej od kółka z LVL), a max po lewej poniżej ucha Avara - Wto 08 Lis, 2011 20:40 Może być coś takiego
Spoiler:
Kod:
=begin
********************************************************************
* HUD WoW VX for Michu_1999 by Avara *
* Autor: Avara *
* ultimateam.pl *
**********************************************************************
Hud stworzony na zamówienie dla Michu_1999. Wrzucić nad Main w edytorze skryptów.
Skrypt zawiera fragment skryptu "Menu Bars" wersję 4.1 Syvkal'a.
Grafika wzięta z gry "World of Warcraft". Należy ją umieścić w folderze
Graphics\System.
Proszę nie zapomnieć o wspomnieniu o twórcy skryptu w swoim projekcie.
Życzę miłego kożystania ;-)
=end
module HUD_WoW_by_Avara # <- nie usuwać!
# KONFIGURACJA
HUD_WOW_WIDOCZNY_START = true #czy hud ma być widoczny od samego początku gry (true/false)
HUD_WOW_WIDOCZNY = 20 #numer przełącznika, włączający/wyłączający hud
HUD_WOW_UKRYJ = true #ukryj HUD, gdy bohater znajduje się za nim
HUD_WOW_UKRYJ_NP = 100 #poziom "nieprzezroczystości" (0 - przezroczyste;
#255 - nieprzezroczyste), gdy uktywanie jest włączone
# KONIEC KONFIGURACJI
# Dalej zmieniać na własne ryzyko!
end
# FRAGMENT SKRYPTU "Menu Bars" BY Syvkal V 4.1
def draw_actor_exp_ring(actor, x, y, radius, height, amount = 360, start = 0, reverse = false)
@rate = actor.now_exp.to_f / [actor.next_exp, 1].max
gw = amount * actor.now_exp / [actor.next_exp, 1].max
self.contents.cogwheel_fill_ring(x, y, gw, radius, height, @color1, @color2, amount, start, reverse)
end
# KONIEC FRAGMENTU
def ukryj
if HUD_WoW_by_Avara::HUD_WOW_UKRYJ == true
if $game_player.screen_x - 16 < 187 and $game_player.screen_y - 28 < 60
self.contents_opacity = HUD_WoW_by_Avara::HUD_WOW_UKRYJ_NP
else
self.contents_opacity = 255
end
end
end
end
# FRAGMENT SKRYPTU "Menu Bars" BY Syvkal V 4.1
class Bitmap
def fill_ring(ox, oy, radius, height, gc1, amount = 360, start = 0, reverse = false)
d = 2.0 * Math::PI / 360
for i in 1..[amount, 360].min
s = i + start
if reverse
x = ox + ( radius * Math.sin( d * s ) ).to_i
y = oy - ( radius * Math.cos( d * s ) ).to_i
else
x = ox - ( radius * Math.cos( d * s ) ).to_i
y = oy + ( radius * Math.sin( d * s ) ).to_i
end
fill_rect(x, y, height, height, gc1)
end
end
def gradient_fill_ring(ox, oy, radius, height, gc1, gc2, amount = 360, start = 0, reverse = false)
d = 2.0 * Math::PI / 360
for i in 1..amount
s = i + start
if reverse
x = ox + ( radius * Math.sin( d * s ) ).to_i
y = oy - ( radius * Math.cos( d * s ) ).to_i
else
x = ox - ( radius * Math.cos( d * s ) ).to_i
y = oy + ( radius * Math.sin( d * s ) ).to_i
end
color = get_gradient_pixel(gc1, gc2, amount, i)
fill_rect(x, y, height, height, color)
end
end
def get_gradient_pixel(gc1, gc2, amount, i)
red = gc1.red * (amount - i) / amount + gc2.red * i / amount
green = gc1.green * (amount - i) / amount + gc2.green * i / amount
blue = gc1.blue * (amount - i) / amount + gc2.blue * i / amount
alpha = gc1.alpha * (amount - i) / amount + gc2.alpha * i / amount
return Color.new(red, green, blue, alpha)
end
end
class Game_Actor < Game_Battler
def now_exp
return @exp - @exp_list[@level]
end
def next_exp
return @exp_list[@level+1] > 0 ? @exp_list[@level+1] - @exp_list[@level] : 0
end
end
# KONIEC FRAGMENTU
class Scene_Map < Scene_Base
alias hud_wow_by_avara_st start
def start
hud_wow_by_avara_st
@hud_wow_by_avara = HUD_WoW.new
if $game_switches[HUD_WoW_by_Avara::HUD_WOW_WIDOCZNY] == false
@hud_wow_by_avara.visible = false
end
end
alias hud_wow_by_avara_term terminate
def terminate
hud_wow_by_avara_term
@hud_wow_by_avara.dispose
end
alias hud_wow_by_avara_up update
def update
hud_wow_by_avara_up
if $game_switches[HUD_WoW_by_Avara::HUD_WOW_WIDOCZNY] == true
@hud_wow_by_avara.update
@hud_wow_by_avara.visible = true
else
@hud_wow_by_avara.visible = false
end
end
end
class Scene_Title < Scene_Base
alias hud_wow_by_avara_cr_ga_ob create_game_objects
def create_game_objects
hud_wow_by_avara_cr_ga_ob
$game_switches[HUD_WoW_by_Avara::HUD_WOW_WIDOCZNY] = HUD_WoW_by_Avara::HUD_WOW_WIDOCZNY_START
end
end
//Edit 9.11.2011 00:54 : Lvl postaci był nieco za wysoko. Już poprawiłam
Skrypt zawiera fragment skryptu "Menu Bars" wersję 4.1 Syvkal'a. Stwierdziłam, że nie ma potrzeby umieszczać całego dłuuugiego skryptu, więc wzięłam tylko to co niezbędne Info w skrypcie o tym jest. Mam nadzieję, że teraz Ci będzie odpowiadał.Michu_1999 - Sro 09 Lis, 2011 14:30 Jasne.To jest bardzo dobre.Właśnie o coś takiego mi chodziło.Miejsce w napisach końcowych gwarantowane.
PS
Jak dać pomógł??Vrona - Sro 09 Lis, 2011 14:35 Pod odpowiedzią danego użytkownika,który ci pomógł,klikasz przycisk "Pomógł" i potwierdzasz.Angius - Sro 09 Lis, 2011 15:00 Rozwiązane zamykam więc. Chyba sam użyję tego skryptu u siebie