Ogłoszenie 

Uwaga! To forum jest w trybie offline.
Wszelką pomoc uzyskasz pod adresem
forum.ultimateam.pl


Administracja Forum


Poprzedni temat «» Następny temat
Zamknięty przez: Angius
Sro 09 Lis, 2011 15:00
Skrypt HUD
Autor Wiadomość
Avara 





Pomogła: 32 razy
Dołączyła: 15 Gru 2010
Posty: 331
Skąd: Łódź
Wysłany: 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 ;-)
________________________


Drakensang - przeglądarkowa gra RPG online
Spoiler:

 
 
 
Michu_1999 




Preferowany:
RPG Maker VX

Dołączył: 02 Paź 2010
Posty: 43
Wysłany: 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 





Pomogła: 32 razy
Dołączyła: 15 Gru 2010
Posty: 331
Skąd: Łódź
Wysłany: 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


class HUD_WoW < Window_Base
 
  def initialize(x = - 12, y = - 14, width = 231, height = 112)
    super(x,y,width,height)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.size = 16
    self.opacity = 0
    @bohater = $game_party.members[0]
    @color1 = text_color(21)
    @color2 = text_color(14)
    ukryj
    refresh
  end
 
  alias oldupdate update
  def update   
    refresh
    oldupdate
  end
 
  def refresh
    self.contents.clear
    ukryj
    img = Cache.system("hud.png")
    p_hp = Cache.system("pasek_zycia.png")
    p_mp = Cache.system("pasek_many.png")
    hp = @bohater.hp
    maxhp = @bohater.base_maxhp
    mp = @bohater.mp
    maxmp = @bohater.base_maxmp
    zycie = p_hp.width * hp / maxhp
    mana = p_mp.width * mp / maxmp
    self.contents.blt(0, 2, img, Rect.new(0, 0, img.width, img.height), 255)
    self.contents.blt(73, 36, p_hp, Rect.new(0, 0, zycie, img.height), 255)
    self.contents.blt(73, 47, p_mp, Rect.new(0, 0, mana, img.height), 255)
    self.contents.draw_text(73, 14, 123, 17, @bohater.name, 1)
    self.contents.draw_text(5, 51, 18, 17, @bohater.level, 1)
    draw_actor_exp_ring(@bohater, 36, 36, 34, 3, 305, 70)
  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 cogwheel_fill_ring(x, y, gw, radius, height, gc1, gc2, amount = 360, start = 0, reverse = false)
    # Kolory obramówki paska
    color1 = Color.new(0, 0, 0, 192)              # Zewnętrzne
    color2 = Color.new(0, 0, 0, 192)   # Wewnętrzne
  # Wypełnienie pustego paska
    color3 = Color.new(0, 0, 0, 255)           # Połowa ceinowania
    color4 = Color.new(64, 0, 0, 255)
    fill_ring(x-2, y-2, radius, height+4, color1, amount, start, reverse)
    fill_ring(x-1, y-1, radius, height+2, color2, amount, start, reverse)
    if amount >= 220
      gradient_fill_ring(x, y, radius, height, color3, color4, [amount/2, 180].min, start, reverse)
      gradient_fill_ring(x, y, radius, height, color4, color3, [amount/2, 180].min, start+(amount/2), reverse)
    else
      gradient_fill_ring(x, y, radius, height, color3, color4, [amount, 360].min, start, reverse)
    end
    if gw >= 220
      gw1 = amount/2; gw2 = gw / 2
      gradient_fill_ring(x, y, radius, height, gc1, gc2, gw1, start, reverse)
      gradient_fill_ring(x, y, radius, height, gc2, gc1, gw2, start +(amount/2), reverse)
    else
      gradient_fill_ring(x, y, radius, height, gc1, gc2, gw, start, reverse)
    end
  end
 
  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ł.
________________________


Drakensang - przeglądarkowa gra RPG online
Spoiler:

 
 
 
Michu_1999 




Preferowany:
RPG Maker VX

Dołączył: 02 Paź 2010
Posty: 43
Wysłany: 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 




Preferowany:
RPG Maker VXAce

Pomógł: 26 razy
Dołączył: 25 Wrz 2011
Posty: 236
Skąd: ty się tu wziąłeś?
Wysłany: Sro 09 Lis, 2011 14:35
Pod odpowiedzią danego użytkownika,który ci pomógł,klikasz przycisk "Pomógł" i potwierdzasz.
________________________
Pomogłem daj "Pomógł",BIJAAACZ!



 
 
Angius 

Nie wkurzać



Preferowany:
RPG Maker VX

Pomógł: 104 razy
Dołączył: 30 Paź 2010
Posty: 1276
Skąd: wROCK
Wysłany: Sro 09 Lis, 2011 15:00
Rozwiązane zamykam więc. Chyba sam użyję tego skryptu u siebie :mrgreen:
________________________
"Na trolla pewne są tylko dwie pewne metody, jedna samopowtarzalna i druga, wymagająca przeładowania ręcznego."


 
 
Wyświetl posty z ostatnich:   
Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi
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
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group | Template Klam by Ayene