SHARE
TWEET

Untitled

Raizen Apr 20th, 2020 639 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #===============================================================
  2. # Raizen's Damage Popup. (Raizen884)
  3. # É permitido distribuir em outros lugares contanto que não seja mudado
  4. # as linhas dos créditos.
  5. #===============================================================
  6. # Damage Popup
  7. # Descrição: O script faz a leitura da quantidade de vida do primeiro
  8. # personagem, e em qualquer mudança ele mostrará o número
  9. # de vida que o personagem recebeu ou perdeu.
  10. module Raizendmg
  11. #Switch que ativa o script, sempre que não quiser que esteja
  12. #ativado o efeito de popup, basta desligar o switch.
  13. SWITCH = 1
  14. # Tempo que o dano ou mudança de vida ficará sobre o personagem
  15. # antes de sumir.
  16. TIME = 50
  17. # Ajuste em x, aqui da para posicionar a coordenada inicial que
  18. # o item pop-up fará. Valores menores aproximam o Item popup para a direita.
  19. PX = 60
  20. # Ajuste em y, aqui da para posicionar a coordenada inicial que
  21. # o item pop-up fará. Valores menores aproximam o Item popup para baixo.
  22. PY = 100
  23. # Distancia que percorrera o damage popup, sendo que o valor 0,
  24. # desativa essa função.
  25. DISTANCE = 30
  26. end
  27. class Window_Damagepop < Window_Base
  28.   def initialize(x, y, n, jy)
  29.     super(x, y, x + 544, y + 416)
  30.     self.opacity = 0
  31.     refresh(n, x, jy)
  32.   end
  33.   def refresh(n, x , jy)
  34.     self.contents.clear
  35.     self.contents.font.size = 14
  36.     if n > 0
  37.     self.contents.font.color = text_color(3)
  38.     self.contents.draw_text(x + 0, jy, 100, 50, n, 1)
  39.     elsif n < 0
  40.     n *= -1
  41.     self.contents.font.color = text_color(2)
  42.     self.contents.draw_text(x + 0, jy, 100, 50, n, 1)
  43.     end
  44.   end
  45. end
  46.  
  47.    
  48.    
  49. class Scene_Map < Scene_Base
  50.   alias initializedamage initialize
  51.   def initialize
  52.   @jy2 = Raizendmg::DISTANCE
  53.   @dpopup.dispose if @dpopup != nil
  54.   @dpopup = Window_Damagepop.new(0, 0, 0, 0)
  55.   @hpdamage = $game_party.members[0].hp
  56.   initializedamage
  57.   end
  58.   def damage_initialize(n, jy)
  59.   @dpopup.refresh(n, $game_player.screen_x - Raizendmg::PX, $game_player.screen_y - Raizendmg::PY + jy)
  60.   @n2 = n, @jy2 = jy
  61.   end
  62. alias damage_update update
  63.   def update
  64.     damage_update
  65.     if @hpdamage != $game_party.members[0].hp and $game_switches[Raizendmg::SWITCH]
  66.     @n2 = $game_party.members[0].hp - @hpdamage
  67.     @jy2 -= 2
  68.     @contador2 = 0 if @jy2 == 0
  69.       if @jy2 >= 0
  70.       damage_initialize(@n2, @jy2)
  71.       else
  72.       @contador2 += 1
  73.         if @contador2 <= Raizendmg::TIME
  74.         damage_initialize(@n2, 0)
  75.       else
  76.         damage_initialize(0, 0)
  77.         @jy2 = Raizendmg::DISTANCE
  78.         @hpdamage = $game_party.members[0].hp
  79.         @n2 = nil
  80.         end
  81.       end
  82.     end
  83.     if @n2 != nil
  84.     if @hpdamage == $game_party.members[0].hp
  85.     damage_initialize(0, 0)
  86.     @n2 = nil
  87.     @jy2 = Raizendmg::DISTANCE
  88.     end
  89.     end
  90.   end
  91. end
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top