#==============================================================================
# ++ 데미지 문자 커스터마이즈 ver. 1.01 ++
# Script by 파라개
# http://para.j-mx.com/
#------------------------------------------------------------------------------
# 데미지 표시의 폰트를 변경.
#==============================================================================
module RPG
class Sprite < ::Sprite
#----------------------------------------------------------------------------
# 데미지 표시용 폰트
DAMAGE_FONT_NAME = ["Georgia"] # 폰트명
DAMAGE_FONT_SIZE = 32 # 사이즈
DAMAGE_FONT_BOLD = false # 굵은 글씨로 할까(true/false)
DAMAGE_FONT_ITALIC = false # 이탤릭으로 할까(true/false)
FONT_COLOR_DAMAGE = Color.new(255, 255, 255) # 데미지시의 색
FONT_COLOR_HEAL = Color.new(176, 255, 144) # 회복시의 색
FONT_COLOR_D_FRAME = Color.new(0, 0, 0) # 데미지 문자의 테두리의 색
FONT_COLOR_H_FRAME = Color.new(0, 0, 0) # 회복 문자의 테두리의 색
CRITICAL_NAME = "CRITICAL" # 위기 히트시에 표시하는 문자
CRITICAL_FONT_SIZE = 20 # 위기의 문자 사이즈
#----------------------------------------------------------------------------
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, DAMAGE_FONT_SIZE*2)
bitmap.font.name = DAMAGE_FONT_NAME + ["Arial Black", "MS P고딕"]
bitmap.font.size = DAMAGE_FONT_SIZE
bitmap.font.bold = DAMAGE_FONT_BOLD
bitmap.font.italic = DAMAGE_FONT_ITALIC
if value.is_a?(Numeric) and value < 0
bitmap.font.color = FONT_COLOR_H_FRAME
else
bitmap.font.color = FONT_COLOR_D_FRAME
end
bitmap.draw_text(-1, 12-1, 160, DAMAGE_FONT_SIZE*1.2, damage_string, 1)
bitmap.draw_text(+1, 12-1, 160, DAMAGE_FONT_SIZE*1.2, damage_string, 1)
bitmap.draw_text(-1, 12+1, 160, DAMAGE_FONT_SIZE*1.2, damage_string, 1)
bitmap.draw_text(+1, 12+1, 160, DAMAGE_FONT_SIZE*1.2, damage_string, 1)
if value.is_a?(Numeric) and value < 0
bitmap.font.color = FONT_COLOR_HEAL
else
bitmap.font.color = FONT_COLOR_DAMAGE
end
bitmap.draw_text(0, 12, 160, DAMAGE_FONT_SIZE*1.2, damage_string, 1)
if critical
bitmap.font.size = CRITICAL_FONT_SIZE
bitmap.font.color = FONT_COLOR_D_FRAME
bitmap.draw_text(-1, -1, 160, CRITICAL_FONT_SIZE, CRITICAL_NAME, 1)
bitmap.draw_text(+1, -1, 160, CRITICAL_FONT_SIZE, CRITICAL_NAME, 1)
bitmap.draw_text(-1, +1, 160, CRITICAL_FONT_SIZE, CRITICAL_NAME, 1)
bitmap.draw_text(+1, +1, 160, CRITICAL_FONT_SIZE, CRITICAL_NAME, 1)
bitmap.font.color = FONT_COLOR_DAMAGE
bitmap.draw_text(0, 0, 160, CRITICAL_FONT_SIZE, CRITICAL_NAME, 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
end
end
[개요]
데미지 표시의 폰트를 변경합니다.
[사양]
지정한 폰트가 인스톨 되어 있지 않은 경우,
표준 폰트( 「Arial Black」또는 「MS P고딕」)를 사용합니다.
# ++ 데미지 문자 커스터마이즈 ver. 1.01 ++
# Script by 파라개
# http://para.j-mx.com/
#------------------------------------------------------------------------------
# 데미지 표시의 폰트를 변경.
#==============================================================================
module RPG
class Sprite < ::Sprite
#----------------------------------------------------------------------------
# 데미지 표시용 폰트
DAMAGE_FONT_NAME = ["Georgia"] # 폰트명
DAMAGE_FONT_SIZE = 32 # 사이즈
DAMAGE_FONT_BOLD = false # 굵은 글씨로 할까(true/false)
DAMAGE_FONT_ITALIC = false # 이탤릭으로 할까(true/false)
FONT_COLOR_DAMAGE = Color.new(255, 255, 255) # 데미지시의 색
FONT_COLOR_HEAL = Color.new(176, 255, 144) # 회복시의 색
FONT_COLOR_D_FRAME = Color.new(0, 0, 0) # 데미지 문자의 테두리의 색
FONT_COLOR_H_FRAME = Color.new(0, 0, 0) # 회복 문자의 테두리의 색
CRITICAL_NAME = "CRITICAL" # 위기 히트시에 표시하는 문자
CRITICAL_FONT_SIZE = 20 # 위기의 문자 사이즈
#----------------------------------------------------------------------------
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, DAMAGE_FONT_SIZE*2)
bitmap.font.name = DAMAGE_FONT_NAME + ["Arial Black", "MS P고딕"]
bitmap.font.size = DAMAGE_FONT_SIZE
bitmap.font.bold = DAMAGE_FONT_BOLD
bitmap.font.italic = DAMAGE_FONT_ITALIC
if value.is_a?(Numeric) and value < 0
bitmap.font.color = FONT_COLOR_H_FRAME
else
bitmap.font.color = FONT_COLOR_D_FRAME
end
bitmap.draw_text(-1, 12-1, 160, DAMAGE_FONT_SIZE*1.2, damage_string, 1)
bitmap.draw_text(+1, 12-1, 160, DAMAGE_FONT_SIZE*1.2, damage_string, 1)
bitmap.draw_text(-1, 12+1, 160, DAMAGE_FONT_SIZE*1.2, damage_string, 1)
bitmap.draw_text(+1, 12+1, 160, DAMAGE_FONT_SIZE*1.2, damage_string, 1)
if value.is_a?(Numeric) and value < 0
bitmap.font.color = FONT_COLOR_HEAL
else
bitmap.font.color = FONT_COLOR_DAMAGE
end
bitmap.draw_text(0, 12, 160, DAMAGE_FONT_SIZE*1.2, damage_string, 1)
if critical
bitmap.font.size = CRITICAL_FONT_SIZE
bitmap.font.color = FONT_COLOR_D_FRAME
bitmap.draw_text(-1, -1, 160, CRITICAL_FONT_SIZE, CRITICAL_NAME, 1)
bitmap.draw_text(+1, -1, 160, CRITICAL_FONT_SIZE, CRITICAL_NAME, 1)
bitmap.draw_text(-1, +1, 160, CRITICAL_FONT_SIZE, CRITICAL_NAME, 1)
bitmap.draw_text(+1, +1, 160, CRITICAL_FONT_SIZE, CRITICAL_NAME, 1)
bitmap.font.color = FONT_COLOR_DAMAGE
bitmap.draw_text(0, 0, 160, CRITICAL_FONT_SIZE, CRITICAL_NAME, 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
end
end
[개요]
데미지 표시의 폰트를 변경합니다.
[사양]
지정한 폰트가 인스톨 되어 있지 않은 경우,
표준 폰트( 「Arial Black」또는 「MS P고딕」)를 사용합니다.