Ogłoszenie 

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


Administracja Forum


Poprzedni temat «» Następny temat
Dragon Hud
Autor Wiadomość
rafal3386 



Pomógł: 2 razy
Dołączył: 29 Sty 2011
Posty: 39
Wysłany: Sob 24 Mar, 2012 19:31
Dragon Hud
Autor:
br_lemes

Tłumaczenie:
brak

Skrypt:
Spoiler:

Kod:
=begin
  Dragon HUD
  por br_lemes

  É permitido, livre de quaisquer ônus, usar, copiar, modificar e/ou
  distribuir cópias deste script, desde que seja mantido este aviso.
  NÃO HÁ QUALQUER GARANTIA, USE POR SUA PRÓPRIA CONTA E RISCO.
=end

################################################################################
# CONFIGURAÇÕES - modifique a vontade, mas com cuidado
################################################################################

$RMVX = $TEST != nil

$DHUD_DRAGON1 = true # mostrar dragão 1
$DHUD_DRAGON2 = true # mostrar dragão 2
 
# lista com a ID de 4 (VX) ou 6 (XP) itens a serem mostrados ou 0 para não mostrar
$DHUD_ITEMS = [1, 4, 7, 9, 12, 13]

# Estado inicial da HUD
$DHUD_DEFAULT = true # true é visível, false não é visível
$DHUD_SWITCH  = 1    # switch que ativa/desativa a HUD
 
$DHUD_OPACITY = 215 # opacidade das imagens
 
$DHUD_Y = $RMVX ? 382 : 446 # coordenada y de referência

#--------------------------------------------------------------------------
# APENAS XP - cores das barras de hp/mp/ex
# 0 = Vermelho
# 1 = Azul
# 2 = Verde
# 3 = Rosa
# 4 = Azul Claro
# 5 = Amarelo
# 6 = Branco
#--------------------------------------------------------------------------
$DHUD_HP_COLOR  = 0
$DHUD_SP_COLOR  = 1
$DHUD_EXP_COLOR = 2

################################################################################
# FIM DAS CONFIGURAÇÕES - não modifique apartir daqui
# A menos que você saiba realmente o que está fazendo
################################################################################

$dhud_eq_needrefresh = true
$dhud_it_needrefresh = true

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
  if $RMVX
    alias dhud_change_equip change_equip
    def change_equip(equip_type, item, test = false)
      dhud_change_equip(equip_type, item, test)
      $dhud_eq_needrefresh = true
    end
  else
    alias dhud_equip equip
    def equip(equip_type, item)
      dhud_equip(equip_type, item)
      $dhud_eq_needrefresh = true
    end
  end
end

class Game_Party
  alias dhud_gain_item gain_item
  def gain_item(item, n, include_equip = false)
    $RMVX ? dhud_gain_item(item, n, include_equip) : dhud_gain_item(item, n)
    $dhud_it_needrefresh = true
  end
end

class Scene_Map
  alias dhud_main main
  def main
    if $RMVX then @windowskin = Cache.system("Window") end
    @hud_checkex = -1
    @hud_back = Sprite.new
    @hud_back.z += 1
    @hud_back.opacity = $DHUD_OPACITY
    @hud_dragon1 = Sprite.new
    @hud_dragon1.z += 2
    @hud_dragon1.opacity = $DHUD_OPACITY
    @hud_dragon2 = Sprite.new
    @hud_dragon2.z += 2
    @hud_dragon2.mirror = true
    @hud_dragon2.opacity = $DHUD_OPACITY
    @hud_dragon1.visible = $DHUD_DRAGON1
    @hud_dragon2.visible = $DHUD_DRAGON2
    if $RMVX
      @hud_back.bitmap = Cache.system("backVX")
      @hud_back.y = 416 - @hud_back.height
      @hud_dragon1.bitmap = Cache.system("dragon")
      @hud_dragon1.y = 416 - @hud_dragon1.height
      @hud_dragon2.bitmap = Cache.system("dragon")
      @hud_dragon2.x = 544 - @hud_dragon2.width
      @hud_dragon2.y = 416 - @hud_dragon2.height
    else
      @hud_back.bitmap = RPG::Cache.windowskin("backXP")
      @hud_back.y = 480 - @hud_back.bitmap.height
      @hud_dragon1.bitmap = RPG::Cache.windowskin("dragon")
      @hud_dragon1.y = 480 - @hud_dragon1.bitmap.height
      @hud_dragon2.bitmap = RPG::Cache.windowskin("dragon")
      @hud_dragon2.x = 640 - @hud_dragon2.bitmap.width
      @hud_dragon2.y = 480 - @hud_dragon2.bitmap.height
    end
    @hud_hp = Sprite.new
    @hud_hp.x = 70
    @hud_hp.y = $DHUD_Y + 2
    @hud_hp.z += 2
    @hud_hp.bitmap = Bitmap.new(83, 4)
    @hud_mp = Sprite.new
    @hud_mp.x = 70
    @hud_mp.y = $DHUD_Y + 10
    @hud_mp.z += 2
    @hud_mp.bitmap = Bitmap.new(83, 4)
    @hud_ex = Sprite.new
    @hud_ex.x = 70
    @hud_ex.y = $DHUD_Y + 18
    @hud_ex.z += 2
    @hud_ex.bitmap = Bitmap.new(83, 4)
    @hud_eq = Sprite.new
    @hud_eq.x = 186
    @hud_eq.y = $DHUD_Y
    @hud_eq.z += 2
    @hud_eq.bitmap = Bitmap.new(142, 24)
    @hud_it = Sprite.new
    @hud_it.x = 360
    @hud_it.y = $DHUD_Y
    @hud_it.z += 2
    if $RMVX
      @hud_it.bitmap = Bitmap.new(114, 24)
    else
      @hud_it.bitmap = Bitmap.new(172, 24)
    end
    @hud_it.bitmap.font.size = 14
    $dhud_eq_needrefresh = true
    $dhud_it_needrefresh = true
    refresh
    dhud_main
    @hud_back.dispose
    @hud_dragon1.dispose
    @hud_dragon2.dispose
    @hud_hp.dispose
    @hud_mp.dispose
    @hud_ex.dispose
    @hud_eq.dispose
    @hud_it.dispose   
  end
  def refresh
    hudswitch = (($DHUD_DEFAULT && !$game_switches[$DHUD_SWITCH]) or (!$DHUD_DEFAULT && $game_switches[$DHUD_SWITCH]))
    @hud_back.visible = hudswitch
    if hudswitch
      @hud_dragon1.visible = $DHUD_DRAGON1
      @hud_dragon2.visible = $DHUD_DRAGON2
    else
      @hud_dragon1.visible = false
      @hud_dragon2.visible = false
    end
    @hud_hp.visible = hudswitch
    @hud_mp.visible = hudswitch
    @hud_ex.visible = hudswitch
    @hud_eq.visible = hudswitch
    @hud_it.visible = hudswitch
    draw_hp
    draw_mp
    draw_ex
    draw_eq if $dhud_eq_needrefresh
    draw_it if $dhud_it_needrefresh
  end
  if $RMVX 
    def text_color(n)
      x = 64 + (n % 8) * 8
      y = 96 + (n / 8) * 8
      return @windowskin.get_pixel(x, y)
    end
  else
    def bar_color(bitmap, x, y, w, color)
      case color
      when 0
        bitmap.fill_rect(x, y + 0, w, 1, Color.new(255, 96, 96, 255))
        bitmap.fill_rect(x, y + 1, w, 1, Color.new(255, 0, 0, 255))
        bitmap.fill_rect(x, y + 2, w, 1, Color.new(192, 0, 0, 255))
        bitmap.fill_rect(x, y + 3, w, 1, Color.new(128, 0, 0, 255))
      when 1
        bitmap.fill_rect(x, y + 0, w, 1, Color.new(96, 96, 255, 255))
        bitmap.fill_rect(x, y + 1, w, 1, Color.new(0, 0, 255, 255))
        bitmap.fill_rect(x, y + 2, w, 1, Color.new(0, 0, 192, 255))
        bitmap.fill_rect(x, y + 3, w, 1, Color.new(0, 0, 128, 255))
      when 2
        bitmap.fill_rect(x, y + 0, w, 1, Color.new(96, 255, 96, 255))
        bitmap.fill_rect(x, y + 1, w, 1, Color.new(0, 255, 0, 255))
        bitmap.fill_rect(x, y + 2, w, 1, Color.new(0, 192, 0, 255))
        bitmap.fill_rect(x, y + 3, w, 1, Color.new(0, 128, 0, 255))
      when 3
        bitmap.fill_rect(x, y + 0, w, 1, Color.new(255, 128, 255, 255))
        bitmap.fill_rect(x, y + 1, w, 1, Color.new(255, 0, 255, 255))
        bitmap.fill_rect(x, y + 2, w, 1, Color.new(192, 0, 192, 255))
        bitmap.fill_rect(x, y + 3, w, 1, Color.new(128, 0, 128, 255))
      when 4
        bitmap.fill_rect(x, y + 0, w, 1, Color.new(128, 255, 255, 255))
        bitmap.fill_rect(x, y + 1, w, 1, Color.new(0, 255, 255, 255))
        bitmap.fill_rect(x, y + 2, w, 1, Color.new(0, 192, 192, 255))
        bitmap.fill_rect(x, y + 3, w, 1, Color.new(0, 128, 128, 255))
      when 5
        bitmap.fill_rect(x, y + 0, w, 1, Color.new(255, 255, 128, 255))
        bitmap.fill_rect(x, y + 1, w, 1, Color.new(255, 255, 0, 255))
        bitmap.fill_rect(x, y + 2, w, 1, Color.new(192, 192, 0, 255))
        bitmap.fill_rect(x, y + 3, w, 1, Color.new(128, 128, 0, 255))
      when 6
        bitmap.fill_rect(x, y + 0, w, 1, Color.new(255, 255, 255, 255))
        bitmap.fill_rect(x, y + 1, w, 1, Color.new(255, 255, 255, 255))
        bitmap.fill_rect(x, y + 2, w, 1, Color.new(192, 192, 192, 255))
        bitmap.fill_rect(x, y + 3, w, 1, Color.new(128, 128, 128, 255))
      end
    end   
  end
  def draw_hp
    if $RMVX
      if @hud_checkhp == $game_party.members[0].hp then return end
      @hud_mp.bitmap.clear
      gw = 83 * $game_party.members[0].hp / $game_party.members[0].maxhp
      @hud_hp.bitmap.gradient_fill_rect(0, 0, gw, 4, text_color(20), text_color(21))
      @hud_checkhp = $game_party.members[0].hp
    else
      if @hud_checkhp == $game_party.actors[0].hp then return end
      @hud_mp.bitmap.clear
      gw = 83 * $game_party.actors[0].hp / $game_party.actors[0].maxhp
      bar_color(@hud_hp.bitmap, 0, 0, gw, $DHUD_HP_COLOR)
      @hud_checkhp = $game_party.actors[0].hp
    end
  end
  def draw_mp   
    if $RMVX
      if @hud_checkmp == $game_party.members[0].mp then return end
      @hud_mp.bitmap.clear
      gw = 83 * $game_party.members[0].mp / $game_party.members[0].maxmp
      @hud_mp.bitmap.gradient_fill_rect(0, 0, gw, 4, text_color(22), text_color(23))
      @hud_checkmp = $game_party.members[0].mp
    else
      if @hud_checkmp == $game_party.actors[0].sp then return end
      @hud_mp.bitmap.clear
      gw = 83 * $game_party.actors[0].sp / $game_party.actors[0].maxsp
      bar_color(@hud_mp.bitmap, 0, 0, gw, $DHUD_SP_COLOR)
      @hud_checkmp = $game_party.actors[0].sp
    end
  end
  def draw_ex
    if $RMVX
      if @hud_checkex == $game_party.members[0].next_exp then return end
      @hud_ex.bitmap.clear
      ex = $game_party.members[0].next_exp != 0 ? ex = $game_party.members[0].now_exp : ex = 1
      gw = 83 * ex / [$game_party.members[0].next_exp, 1].max
      @hud_ex.bitmap.gradient_fill_rect(0, 0, gw, 4, text_color(30), text_color(31))
      @hud_checkex = ex
    else
      if @hud_checkex == $game_party.actors[0].next_exp then return end
      @hud_ex.bitmap.clear
      ex = $game_party.actors[0].next_exp != 0 ? ex = $game_party.actors[0].now_exp : ex = 1
      gw = 83 * ex / [$game_party.actors[0].next_exp, 1].max
      bar_color(@hud_ex.bitmap, 0, 0, gw, $DHUD_EXP_COLOR)
      @hud_checkex = ex
    end
  end
  def draw_icon(contents, icon, x, y, enabled = true)
    if $RMVX
      bitmap = Cache.system("Iconset")
      rect = Rect.new(icon % 16 * 24, icon / 16 * 24, 24, 24)
      contents.blt(x, y, bitmap, rect, enabled ? 255 : 128)
    else
      bitmap = RPG::Cache.icon(icon)
      contents.blt(x, y, bitmap, Rect.new(0, 0, 24, 24), enabled ? 255 : 128)
    end
  end
  def draw_eq
    @hud_eq.bitmap.clear
    if $RMVX
      actor = $game_party.members[0]
      draw_icon(@hud_eq.bitmap, $data_weapons[actor.weapon_id].icon_index, 0, 0, true) if actor.weapon_id != 0
      if actor.armor1_id != 0
        if actor.two_swords_style
          draw_icon(@hud_eq.bitmap, $data_weapons[actor.armor1_id].icon_index, 29, 0, true) if actor.armor1_id != 0
        else
          draw_icon(@hud_eq.bitmap, $data_armors[actor.armor1_id].icon_index, 29, 0, true) if actor.armor1_id != 0
        end
      end
      draw_icon(@hud_eq.bitmap, $data_armors[actor.armor2_id].icon_index, 58, 0, true) if actor.armor2_id != 0
      draw_icon(@hud_eq.bitmap, $data_armors[actor.armor3_id].icon_index, 87, 0, true) if actor.armor3_id != 0
      draw_icon(@hud_eq.bitmap, $data_armors[actor.armor4_id].icon_index, 116, 0, true) if actor.armor4_id != 0
    else
      actor = $game_party.actors[0]
      draw_icon(@hud_eq.bitmap, $data_weapons[actor.weapon_id].icon_name, 0, 0, true) if actor.weapon_id != 0
      draw_icon(@hud_eq.bitmap, $data_armors[actor.armor1_id].icon_name, 29, 0, true) if actor.armor1_id != 0
      draw_icon(@hud_eq.bitmap, $data_armors[actor.armor2_id].icon_name, 58, 0, true) if actor.armor2_id != 0
      draw_icon(@hud_eq.bitmap, $data_armors[actor.armor3_id].icon_name, 87, 0, true) if actor.armor3_id != 0
      draw_icon(@hud_eq.bitmap, $data_armors[actor.armor4_id].icon_name, 116, 0, true) if actor.armor4_id != 0
    end
    $dhud_eq_needrefresh = false
  end
  def draw_it
    @hud_it.bitmap.clear
    x = 0
    n = $RMVX ? 3 : 5
    for i in 0..n
      if $DHUD_ITEMS[i] != 0
        item = $data_items[$DHUD_ITEMS[i]]
        if $RMVX
          if item and $game_party.item_number(item) != 0
            draw_icon(@hud_it.bitmap, item.icon_index, x, 0, true)
            @hud_it.bitmap.draw_text(x + 16, 10, 12, 14, $game_party.item_number(item))
          end
        else
          if item and $game_party.item_number($DHUD_ITEMS[i]) != 0
            draw_icon(@hud_it.bitmap, item.icon_name, x, 0, true)
            @hud_it.bitmap.draw_text(x + 16, 10, 12, 14, $game_party.item_number($DHUD_ITEMS[i]).to_s)
          end
        end
      end
      x += 29
    end
    $dhud_it_needrefresh = false
  end
  alias dhud_update update
  def update
    dhud_update
    refresh
    @hud_back.update
    @hud_dragon1.update
    @hud_dragon2.update
    @hud_hp.update
    @hud_mp.update
    @hud_ex.update
    @hud_eq.update
    @hud_it.update
  end
end


Screeny:
Spoiler:



Dodatkowe informacje:
Potrzebne grafiki:
http://i494.photobucket.c...tsRM/dragon.png
http://i494.photobucket.c...tsRM/backXP.png
 
 
Ultimaq 




Preferowany:
RPG Maker XP

Dołączył: 25 Mar 2012
Posty: 14
Skąd: Przemyśl
Wysłany: Pią 30 Mar, 2012 18:39
Spoko skrypcik. Polecam tym, co jeszcze nie próbowali.
 
 
 
leszekp321 




Preferowany:
RPG Maker XP

Pomógł: 1 raz
Dołączył: 16 Mar 2012
Posty: 49
Skąd: jesteś?
Wysłany: Wto 01 Maj, 2012 22:25
Fajny ,ale ja chyba sobie te smoki usunę nie że brzydkie ale mi do gry nie pasują
 
 
EzioMasterPl 



Preferowany:
RPG Maker VX

Dołączył: 17 Lut 2012
Posty: 33
Wysłany: Czw 03 Maj, 2012 11:08
A dałoby się do VX?
________________________
" Wtedy Geralt z Rivii wyciągnął swój wiedźmiński miecz srebrny i zastraszył nim strzygę. "
 
 
KunoSava 




Dołączył: 06 Maj 2012
Posty: 5
Wysłany: Nie 06 Maj, 2012 04:26
Ja sobie zrobić HUD zombie z tego ;D

 
 
Loki 




Preferowany:
RPG Maker VX

Pomógł: 12 razy
Dołączył: 25 Kwi 2012
Posty: 162
Wysłany: Sob 19 Maj, 2012 20:42
Wersja pod VX:
Skrypt ten sam co w XP
Grafiki potrzebne:

http://i494.photobucket.c...tsRM/dragon.png
http://i494.photobucket.c...tsRM/backVX.png
 
 
EzioMasterPl 



Preferowany:
RPG Maker VX

Dołączył: 17 Lut 2012
Posty: 33
Wysłany: Nie 20 Maj, 2012 21:38
igor napisał/a:
Wersja pod VX:
Skrypt ten sam co w XP
Grafiki potrzebne:

http://i494.photobucket.c...tsRM/dragon.png
http://i494.photobucket.c...tsRM/backVX.png


Wielkie dzięki
________________________
" Wtedy Geralt z Rivii wyciągnął swój wiedźmiński miecz srebrny i zastraszył nim strzygę. "
 
 
leszekp321 




Preferowany:
RPG Maker XP

Pomógł: 1 raz
Dołączył: 16 Mar 2012
Posty: 49
Skąd: jesteś?
Wysłany: Wto 29 Maj, 2012 18:05
w linijce 230 i 236 jest błąd powinno być:
@hud_hp.bitmap.clear
ten błąd nic powarzniejszego nie robi ale podczas zmiany Hp morze być z tym problem
 
 
asdasd7251@tlen.pl 



Preferowany:
RPG Maker XP

Dołączył: 30 Lip 2011
Posty: 18
Skąd: Z Polski
Wysłany: Czw 31 Maj, 2012 17:48
Jak go włączyć? Odpowiedz albo najlepiej daj demo
________________________
Ostatnio zająłem się porządną nauką RPG Makera XP. Testuję gry, poprawiam je, ulepszam. Wszelkie prośby proszę pisać na pocztę asdasd7251@tlen.pl
 
 
 
Loki 




Preferowany:
RPG Maker VX

Pomógł: 12 razy
Dołączył: 25 Kwi 2012
Posty: 162
Wysłany: Czw 31 Maj, 2012 18:45
Poprostu dodajesz ten skrypt nad main w edytorze skryptów, zapisujesz grafiki do folderu graphic/pictures i grasz.
 
 
Tomcio1997 



Preferowany:
RPG Maker XP

Dołączył: 12 Maj 2012
Posty: 2
Wysłany: Pon 02 Lip, 2012 13:21
Mam taki problem...
Otóż wkleiłem skrypt nad Main, grafiki zapisłem tam gdzie trzeba, tylko jest jeden
problem.
Gdy chodze jest wszystko ok, ale gdy atakuje potwora i zabije go HUD znika .
Gdy potwor zrespi sie znow jest wszystko normalnie.
Prosze o pomoc, co zrobic zeby po walce nie znikal?
 
 
Roki132 



Preferowany:
RPG Maker XP

Pomógł: 9 razy
Dołączył: 13 Kwi 2012
Posty: 91
Wysłany: Pon 02 Lip, 2012 13:26
Tomcio1997, przełącznik...
Ten sam przełącznik co odpowiada za resp potworka jest na widoczność HUD'u.
________________________
Spoiler:

Spoiler:

Spoiler:

Spoiler:

Spoiler:

Spoiler:

Spoiler:

Spoiler:

Spoiler:

Spoiler:

Spoiler:

Spoiler:

Piramida!

 
 
 
leszekp321 




Preferowany:
RPG Maker XP

Pomógł: 1 raz
Dołączył: 16 Mar 2012
Posty: 49
Skąd: jesteś?
Wysłany: Pią 03 Sie, 2012 18:50
Jak by co to zmieniasz przełącznik w 24 linijce ;-)
 
 
noorbert 




Preferowany:
RPG Maker XP

Dołączył: 17 Mar 2012
Posty: 71
Wysłany: Pon 06 Sie, 2012 12:13
A to jest tylko dla jednej postaci?
________________________

 
 
leszekp321 




Preferowany:
RPG Maker XP

Pomógł: 1 raz
Dołączył: 16 Mar 2012
Posty: 49
Skąd: jesteś?
Wysłany: Pon 06 Sie, 2012 13:06
Tak tylko dla jednej jak zresztą większość HUD-ów
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
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