Views 896 Votes 0 Comment 0
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
출처 : http://www.hbgames.org/forums/viewtopic.php?f=11&t=75877

사용법은 다들 아시리라 생각됩니다.
아래 빨간색 부분을 스크립트에 붙여주시면 됩니다.


#==============================================================================
# ** Damage Popup
#------------------------------------------------------------------------------
# © Dargor, 2011
# 01/12/11
# Version 1.0
#------------------------------------------------------------------------------
# VERSION HISTORY:
# - 1.0 (01/12/11), Initial release
#------------------------------------------------------------------------------
# INSTRUCTIONS:
# - Paste this above main
# - Edit the constants in Damage_Popup module
#==============================================================================

#==============================================================================
# ** Damage Popup Customization Module
#==============================================================================

module Damage_Popup
HP_Damage_Color = Color.new(255,255,255)
MP_Damage_Color = Color.new(172,0,234)
TP_Damage_Color = Color.new(253,157,62)
HP_Recover_Color = Color.new(0,255,0)
MP_Recover_Color = Color.new(48,192,255)
TP_Recover_Color = Color.new(255,242,0)
end

#==============================================================================
# ** Sprite_Battler
#------------------------------------------------------------------------------
# This sprite is used to display battlers. It observes a instance of the
# Game_Battler class and automatically changes sprite conditions.
#==============================================================================

class Sprite_Battler < Sprite_Base
#--------------------------------------------------------------------------
# * Alias Listing
#--------------------------------------------------------------------------
alias dargor_ace_dmgpopup_sprite_battler_initialize initialize
alias dargor_ace_dmgpopup_sprite_battler_setup_new_effect setup_new_effect
alias dargor_ace_dmgpopup_sprite_battler_start_effect start_effect
alias dargor_ace_dmgpopup_sprite_battler_update_effect update_effect
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize(viewport, battler = nil)
# The Usual
dargor_ace_dmgpopup_sprite_battler_initialize(viewport, battler)
# Create damage sprite
@damage_sprite = Sprite_Base.new(viewport)
@damage_sprite.bitmap = Bitmap.new(160,48)
@damage_sprite.bitmap.font.bold = true
@damage_sprite.bitmap.font.outline = true
@damage_sprite.bitmap.font.size = 32
@damage_sprite.visible = false
@damage_duration = 0
@damage_effect = nil
end
#--------------------------------------------------------------------------
# * Setup New Effect
#--------------------------------------------------------------------------
def setup_new_effect
# The Usual
dargor_ace_dmgpopup_sprite_battler_setup_new_effect
# Check for HP Damage
if display_damage_sprite? && @battler.result.hp_damage > 0
start_damage(:hp_damage)
# Check for MP Damage
elsif display_damage_sprite? && @battler.result.mp_damage > 0
start_damage(:mp_damage)
# Check for TP Damage
elsif display_damage_sprite? && @battler.result.tp_damage > 0
start_damage(:tp_damage)
# Check for HP Recover
elsif display_damage_sprite? && @battler.result.hp_damage < 0
start_damage(:hp_recover)
# Check for MP Recover
elsif display_damage_sprite? && @battler.result.mp_damage < 0
start_damage(:mp_recover)
# Check for TP Recover
elsif display_damage_sprite? && @battler.result.tp_damage < 0
start_damage(:tp_recover)
end
end
#--------------------------------------------------------------------------
# * Damage Display Test
#--------------------------------------------------------------------------
def display_damage_sprite?
return (@battler.result.success && @damage_duration == 0)
end
#--------------------------------------------------------------------------
# * Start Damage Effect
#--------------------------------------------------------------------------
def start_damage(effect_type)
@damage_effect = effect_type
@damage_duration = 60
case @damage_effect
when :hp_damage
@damage_sprite.bitmap.font.color = Damage_Popup::HP_Damage_Color
when :mp_damage
@damage_sprite.bitmap.font.color = Damage_Popup::MP_Damage_Color
when :tp_damage
@damage_sprite.bitmap.font.color = Damage_Popup::TP_Damage_Color
when :hp_recover
@damage_sprite.bitmap.font.color = Damage_Popup::HP_Recover_Color
when :mp_recover
@damage_sprite.bitmap.font.color = Damage_Popup::MP_Recover_Color
when :tp_recover
@damage_sprite.bitmap.font.color = Damage_Popup::TP_Recover_Color
end
update_damage_popup_position
update_damage_popup_text
@damage_sprite.visible = true
@damage_sprite.opacity = 255
end
#--------------------------------------------------------------------------
# * Update Effects
#--------------------------------------------------------------------------
def update_effect
# Update effects
if @damage_duration > 0
@damage_duration -= 1
update_damage
if @damage_duration == 0
@damage_sprite.visible = false
@damage_type = nil
@battler.result.clear_hit_flags
end
end
# The Usual
dargor_ace_dmgpopup_sprite_battler_update_effect
end
#--------------------------------------------------------------------------
# * Update Damage Sprite Potision
#--------------------------------------------------------------------------
def update_damage_popup_position
if @battler && @battler.use_sprite?
@damage_sprite.x = @battler.screen_x
@damage_sprite.y = @battler.screen_y - 48
@damage_sprite.z = @battler.screen_z + 10
end
end
#--------------------------------------------------------------------------
# * Update Damage Sprite Text
#--------------------------------------------------------------------------
def update_damage_popup_text
case @damage_effect
when :hp_damage, :hp_recover
string = @battler.result.hp_damage.abs.to_s
when :mp_damage, :mp_recover
string = @battler.result.mp_damage.abs.to_s
when :tp_damage, :tp_recover
string = @battler.result.tp_damage.abs.to_s
end
rect = @damage_sprite.bitmap.text_size(string)
@damage_sprite.bitmap.clear
@damage_sprite.bitmap.draw_text(rect, string, 1)
end
#--------------------------------------------------------------------------
# * Update Damage
#--------------------------------------------------------------------------
def update_damage
case @damage_duration
when 58..59
@damage_sprite.y -= 4
when 56..57
@damage_sprite.y -= 2
when 54..55
@damage_sprite.y += 2
when 48..53
@damage_sprite.y += 4
end
if @damage_duration <= 20
@damage_sprite.opacity = @damage_duration * 11
end
end
end
?

  1. VXA에서 XBOX360 컨트롤러 사용 여부 체크

    Date2018.07.15 CategoryRPGVX Ace script By러닝은빛 Views1053 Votes0
    Read More
  2. LuD Script Package

    Date2017.08.16 CategoryRPGVX Ace script ByLuD Views1822 Votes0
    Read More
  3. [VXAce] 레이어 맵 <layer> 시스템

    Date2017.08.07 CategoryRPGVX Ace script ByLuD Views1478 Votes0
    Read More
  4. VX Ace 용 8방향 이동 스크립트

    Date2016.03.17 CategoryRPGVX Ace script By도라지power Views1946 Votes0
    Read More
  5. 지속데미지 스크립트(MBS)

    Date2016.02.14 CategoryRPGVX Ace script By天下太平 Views1823 Votes0
    Read More
  6. 타이틀 메뉴 위치 바꾸기 vx 및 vx ace

    Date2015.09.21 CategoryRPGVX Ace script By여줄가리 Views2412 Votes0
    Read More
  7. Mog Hunter 스페셜

    Date2015.03.26 CategoryRPGVX Ace script By철창노틸 Views1009 Votes1
    Read More
  8. 추천 스크립트 모음

    Date2015.03.26 CategoryRPGVX Ace script By철창노틸 Views6114 Votes1
    Read More
  9. Random Dungeon Generator - Random Room

    Date2014.10.11 CategoryRPGVX Ace script ByJunkMan Views1210 Votes0
    Read More
  10. Random Dungeon Generator - Random Cave

    Date2014.10.08 CategoryRPGVX Ace script ByJunkMan Views923 Votes0
    Read More
  11. RPG Maker VX Lite Maze(미로) 만들기 (DFS 사용)

    Date2014.10.06 CategoryRPGVX Ace script ByJunkMan Views1231 Votes2
    Read More
  12. Ace로 만든 습작 랜덤 위치로 지형변환.

    Date2014.10.04 CategoryRPGVX Ace script ByJunkMan Views766 Votes0
    Read More
  13. VX Ace 스크립트 사이트

    Date2014.08.07 CategoryRPGVX Ace script By제피 Views2935 Votes0
    Read More
  14. RPG Maker VX Ace용 640*480 리사이징 스크립트

    Date2014.08.04 CategoryRPGVX Ace script ByHUR Views1520 Votes0
    Read More
  15. RPG Maker VX Ace용 로고 스크립트

    Date2014.08.04 CategoryRPGVX Ace script ByHUR Views1442 Votes0
    Read More
  16. Rpg Vx Ace 에서 이벤트 이름 팝업

    Date2014.01.17 CategoryRPGVX Ace script By빙냥이 Views2128 Votes0
    Read More
  17. 텍스트 파일생성

    Date2013.09.30 CategoryRPGVX Ace script By휴리드 Views879 Votes0
    Read More
  18. 파일 존재의 유무 체크

    Date2013.09.30 CategoryRPGVX Ace script By휴리드 Views857 Votes0
    Read More
  19. Custom Icon Sheets (커스텀 아이콘 적용 스크립트)

    Date2016.01.10 CategoryRPGVX Ace script Byplam Views1357 Votes0
    Read More
  20. Damage Popup by Dargor (데미지 수치 팝업하는 스크립트)

    Date2016.01.10 CategoryRPGVX Ace script Byplam Views896 Votes0
    Read More
Board Pagination Prev 1 2 Next
/ 2


[privacy statements] | [Terms of Use] | [Contact us] | [Sponsorship] | [Indiside History]

Copyright © 1999 - 2016 INdiSide.com/CL3D Co., Ltd. All Rights Reserved.
Owner : Chunmu(Jiseon Lee) | kernys(Wonbae Kim) | Sasinji(Byungkook Kim)