Damage Text Hitskin_logo Hitskin.com

Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o temaVoltar para a ficha do tema

Aldeia RPG
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Damage Text

2 participantes

Ir para baixo

Damage Text Empty Damage Text

Mensagem por Kies Qui Jul 30, 2015 11:24 pm

Essa é uma modificação do damage text que eu e meus colegas fizemos só na zueira mesmo e ficou lindo segue o cód

Código:
module RPG
  class Sprite < ::Sprite

    def damage(value, critical)
      dispose_damage
      if value.is_a?(Numeric)
        damage_string = value.abs.to_s
      else
        damage_string = value.to_s
      end
      bitmap = Bitmap.new(160, 48)
      bitmap.font.name = "Segoe UI"
      bitmap.font.size = 24
      if value.is_a?(Numeric) and value < 0
        bitmap.font.color.set(0, 96, 0)
      elsif value.is_a?(Numeric) and value > 0
        bitmap.font.color.set(96, 0, 0)
      else
        bitmap.font.color.set(0, 0, 96)
      end
      bitmap.draw_text(-1, 12-1, 160, 36, damage_string, 1)
      bitmap.draw_text(+1, 12-1, 160, 36, damage_string, 1)
      bitmap.draw_text(-1, 12+1, 160, 36, damage_string, 1)
      bitmap.draw_text(+1, 12+1, 160, 36, damage_string, 1)
      if value.is_a?(Numeric) and value < 0
        bitmap.font.color.set(0, 255, 0)
      elsif value.is_a?(Numeric) and value > 0
        bitmap.font.color.set(255, 0, 0)
      else
        bitmap.font.color.set(0, 0, 255)
      end
      bitmap.draw_text(0, 12, 160, 36, damage_string, 1)
      if critical
        bitmap.font.color.set(96, 96, 0)
        bitmap.draw_text(-1, 5-1, 160, 20, "Critical", 1)
        bitmap.draw_text(+1, 5-1, 160, 20, "Critical", 1)
        bitmap.draw_text(-1, 5+1, 160, 20, "Critical", 1)
        bitmap.draw_text(+1, 5+1, 160, 20, "Critical", 1)
        bitmap.font.color.set(255, 255, 0)
        bitmap.draw_text(0, 5, 160, 20, "Critical", 1)
      end
      @_damage_sprite = ::Sprite.new(self.viewport)
      @_damage_sprite.bitmap = bitmap
      @_damage_sprite.ox = 80
      @_damage_sprite.oy = 20
      @_damage_sprite.x = self.x
      @_damage_sprite.y = self.y - self.oy / 2 - 60
      @_damage_sprite.z += 99999
      @_damage_duration = 40
    end

    def show_text(string, size=16, color=0)
      dispose_damage
      damage_string = string
      if string.is_a?(Array)
        array = true
      else
        array = false
      end
      bitmap = Bitmap.new(160, 48)
      bitmap.font.name = "Segoe UI"
      bitmap.font.size = size
      if array
        for i in 0..string.size
          next if damage_string[i] == nil
          bitmap.font.color.set(96, 96-20, 0) if color == 0
          bitmap.font.color.set(0, 0, 0) if color != 0
          bitmap.draw_text(-1, (12+(16*i)-1)-16, 160, 36, damage_string[i], 1)
          bitmap.draw_text(+1, (12+(16*i)-1)-16, 160, 36, damage_string[i], 1)
          bitmap.draw_text(-1, (12+(16*i)+1)-16, 160, 36, damage_string[i], 1)
          bitmap.draw_text(+1, (12+(16*i)+1)-16, 160, 36, damage_string[i], 1)
          bitmap.font.color.set(255, 200, 0) if color == 0
          bitmap.font.color.set(0, 255, 200) if color == 1
          bitmap.font.color.set(200, 0, 255)if color == 2
          bitmap.font.color.set(50, 255, 50)if color == 3
          bitmap.draw_text(0, (12+(16*i))-16, 160, 36, damage_string[i], 1)
        end
      else
        bitmap.font.color.set(96, 96-20, 0) if color == 0
        bitmap.font.color.set(0, 0, 0) if color != 0
        bitmap.draw_text(-1, 12-1, 160, 36, damage_string, 1)
        bitmap.draw_text(+1, 12-1, 160, 36, damage_string, 1)
        bitmap.draw_text(-1, 12+1, 160, 36, damage_string, 1)
        bitmap.draw_text(+1, 12+1, 160, 36, damage_string, 1)
        bitmap.font.color.set(255, 200, 0) if color == 0
        bitmap.font.color.set(0, 255, 200) if color == 1
        bitmap.font.color.set(200, 0, 255)if color == 2
        bitmap.font.color.set(50, 255, 50)if color == 3
        bitmap.draw_text(0, 12, 160, 36, damage_string, 1)
      end
      @_damage_sprite = ::Sprite.new(self.viewport)
      @_damage_sprite.bitmap = bitmap
      @_damage_sprite.ox = 80
      @_damage_sprite.oy = 20
      @_damage_sprite.x = self.x
      @_damage_sprite.y = self.y - self.oy / 2
      @_damage_sprite.z = 3000
      @_damage_duration = 40
    end
    #--------------------------------------------------------------------------
    # * Balão do Chat
    #--------------------------------------------------------------------------
    def show_chat(text)
      dispose_damage
      damage_string = text.to_s
      line = 1
      for i in 0..text.size-1
        line += 1
      end
      bitmap = Bitmap.new(160, 16*line + 32)
      bitmap.font.name = Font.default_name
      bitmap.font.size = 15
      bitmap.font.bold = false
      bitmap.font.italic = false
      msg1 = text[0].to_s
      msg2 = ""
      b = Bitmap.new(1,1)
      w1 = b.text_size(msg1).width
      bitmap = Bitmap.new([w1].max+8, (msg2 == "" ? (22*line) : 48))
      bitmap.fill_rect(1, 1, bitmap.width-2, (23*line)-(9*(line+1)), Color.new(255,255,255,200))
      bitmap.fill_rect(1, 0, bitmap.width-2, 1, Color.new(255,255,255,200))
      bitmap.fill_rect(0, 1, 1, (24*line)-(10*(line+1)), Color.new(255,255,255,200))
      bitmap.fill_rect(bitmap.width-1, 1, 1, (24*line)-(10*(line+1)), Color.new(255,255,255,200))
      # Não tire o parêntese
      center = (bitmap.width-8)/2
      bitmap.fill_rect(center,  (22*line)-(8*(line+1)), 1, 8, Color.new(255,255,255,200))
      bitmap.fill_rect(center+1, (22*line)-(8*(line+1)), 1, 7, Color.new(255,255,255,200))
      bitmap.fill_rect(center+2, (22*line)-(8*(line+1)), 1, 6, Color.new(255,255,255,200))
      bitmap.fill_rect(center+3, (22*line)-(8*(line+1)), 1, 5, Color.new(255,255,255,200))
      bitmap.fill_rect(center+4, (22*line)-(8*(line+1)), 1, 4, Color.new(255,255,255,200))
      bitmap.fill_rect(center+5, (22*line)-(8*(line+1)), 1, 3, Color.new(255,255,255,200))
      bitmap.fill_rect(center+6, (22*line)-(8*(line+1)), 1, 2, Color.new(255,255,255,200))
      bitmap.fill_rect(center+7, (22*line)-(8*(line+1)), 1, 1, Color.new(255,255,255,200))
      for i in 0..text.size-1
        bitmap.draw_text(2, 16*i + 1, bitmap.width-4, 16, text[i], 1)
      end
      @_damage_sprite = ::Sprite.new(self.viewport)
      @_damage_sprite.bitmap = bitmap
      @_damage_sprite.ox = bitmap.width/2
      @_damage_sprite.oy = 16*line + 52
      @_damage_sprite.opacity = 255
      @_damage_sprite.x = self.x
      @_damage_sprite.y = self.y
      @_damage_sprite.z += 99999
      @_damage_duration = 200
    end


    alias oldupdate_spriteme update
    def update
      if @_damage_duration > 0
        @_damage_sprite.x = self.x
        ymin = 0 if ymin == nil
        case @_damage_duration
        when 38..39
          ymin -= 4
        when 36..37
          ymin -= 2
        when 34..35
          ymin -= 1
        when 28..33
          ymin -= 0
        end
        @_damage_sprite.y = self.y - self.oy / 2 + ymin
      end
      oldupdate_spriteme
    end

   
   
  end
 
 
 
end

Lembrando que é do master e para fazer funcionar basta substituir o RPG Sprite Damage/Text
por esse novo.


Créd ao:

Valentine
Kaitro
Kizuki
RD12
Kies
Kies
Diva
Diva

Mensagens : 1154
Créditos : 124

Ficha do personagem
Nível: 1
Experiência:
Damage Text Left_bar_bleue0/0Damage Text Empty_bar_bleue  (0/0)
Vida:
Damage Text Left_bar_bleue30/30Damage Text Empty_bar_bleue  (30/30)

Ir para o topo Ir para baixo

Damage Text Empty Re: Damage Text

Mensagem por Kaitro Sex Jul 31, 2015 1:27 am

Então vc fez Um novo?
Ta massa mas não está Lindo lindo como vc diz...Exclamation

Enfim Boa...

_________________
Damage Text 992yoi
Kaitro
Kaitro
Membro Ativo
Membro Ativo

Mensagens : 292
Créditos : 28

Ficha do personagem
Nível: 1
Experiência:
Damage Text Left_bar_bleue0/0Damage Text Empty_bar_bleue  (0/0)
Vida:
Damage Text Left_bar_bleue30/30Damage Text Empty_bar_bleue  (30/30)

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos