XP 스크립트

#--------------------------------------------------------------------------
#HP bars for all ABS enemies
#By Takanuva Hagah
#--------------------------------------------------------------------------
class Window_Enemy < Window_Base
def initialize
super(-16, -16, 672, 640)
self.contents = Bitmap.new(width-32, height-32)
self.opacity = 0
self.contents.font.size = 14
@old_enemy = $ABS.enemies.size
for i in 0...$ABS.enemies.size
event_z = $ABS.enemies.values[i].event_id
@old_x = $game_map.events[event_z].real_x
@old_y = $game_map.events[event_z].real_y
@old_hp = $ABS.enemies.values[i].hp
end
@player_x = $game_player.real_x
@player_y = $game_player.real_y
refresh
end
def refresh
self.contents.clear
self.contents.font.color = system_color
self.contents.draw_text(6, 28, 32, 14, "")
self.contents.font.color = normal_color
for i in 0...$ABS.enemies.size
event_z = $ABS.enemies.values[i].event_id
x = ($game_map.events[event_z].real_x - $game_map.display_x) / 4
y = ($game_map.events[event_z].real_y - $game_map.display_y) / 4
data_id = $ABS.enemies.values[i].id
e2 = $data_enemies[data_id].maxhp
e1 = $ABS.enemies.values[i].hp
self.contents.draw_text(x-10, y-50, 73, 14, $ABS.enemies.values[i].name)
draw_enemy_bar("", x, y+40, 30, 5, Color.new(255, 255, 0), Color.new(204, 204, 0), e1, e2)
end
end
def update
super
if @old_enemy != $ABS.enemies.size
refresh
@old_enemy = $ABS.enemies.size
end
if @player_x != $game_player.real_x or
@player_y != $game_player.real_y
refresh
@player_x = $game_player.real_x
@player_y = $game_player.real_y
end
for i in 0...$ABS.enemies.size
event_z = $ABS.enemies.values[i].event_id
if @old_x != $game_map.events[event_z].real_x or
@old_y != $game_map.events[event_z].real_y or
@old_hp[i] != $ABS.enemies.values[i].hp
refresh
event_z = $ABS.enemies.values[i].event_id
@old_x = $game_map.events[event_z].real_x
@old_y = $game_map.events[event_z].real_y
@old_hp = $ABS.enemies.values[i].hp
end
end
end
def draw_enemy_bar(actor, x, y, length, thick, c1, c2, e1, e2)
width = length
height = thick
self.contents.fill_rect(x-1, y - 1, width+2, height + 3, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x, y, width, height + 1, Color.new(0, 0, 0, 255))
w = width * e1 / e2
for i in 0..height
r = c1.red + (c2.red - c1.red) * (height -i)/height + 0 * i/height
g = c1.green + (c2.green - c1.green) * (height -i)/height + 0 * i/height
b = c1.blue + (c2.blue - c1.blue) * (height -i)/height + 0 * i/height
a = c1.alpha + (c2.alpha - c1.alpha)* (height -i)/height + 255 * i/height
self.contents.fill_rect(x, y+i, w, 1, Color.new(r, g, b, a))
end
end
end
class Scene_Map
alias enemy_scene_map_main main
alias enemy_scene_map_update update
def main
@enemy = Window_Enemy.new
enemy_scene_map_main
@enemy.dispose
end
def update
@enemy.update
enemy_scene_map_update
end
end

Who's 백호

?

이상혁입니다.

http://elab.kr

Comment '11'

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 6153
721 메뉴 링메뉴 스크립트 file 백호 2009.02.21 1391
720 기타 게이지 3 백호 2009.02.21 1394
719 텔로포트 스크립트 8 WMN 2008.03.17 1397
718 저장 Woratana's Neo Save System for RMXP by LiTTleDRAgo 5 Alkaid 2013.01.19 1398
717 메뉴 콤보 스크립트 백호 2009.02.22 1399
716 영상 berka's Video Script II Reloaded 1.2 2 Alkaid 2010.10.08 1399
715 기타 마법반사스크립트 4 *ps인간 2009.01.26 1403
714 저장 오류 수정한 자동세이브 2 백호 2009.02.22 1403
713 기타 Multiple Languages v2 by SephirothSpawn (SDK호환) file 백호 2009.02.22 1404
712 전투 KGC_PreempAttack(선제공격) file 백호 2009.02.22 1405
711 기타 필요 경험치 직접 정하기 9 백호 2009.02.21 1407
710 기타 풀스크린 스크립트 2 백호 2009.02.22 1407
709 이동 및 탈것 KGC_SetAttackElement (공격속성설정) file 백호 2009.02.22 1407
708 전투 숙력도 시스템 스크립트 2 백호 2009.02.21 1408
707 타이틀/게임오버 타이틀음악 백호 2009.02.22 1410
706 메뉴 링메뉴에 돈(G)표시하기 백호 2009.02.21 1413
705 기타 비밀소년님의 경험치 표시 스크립트 백호 2009.02.22 1419
704 저장 [신기술 체험] 데이터 저장 6 file 백호 2009.02.22 1420
703 키입력 전체 키 사용 스크립트 1 백호 2009.02.21 1423
702 전투 마법검 스크립트 1 백호 2009.02.22 1425
Board Pagination Prev 1 ... 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ... 52 Next
/ 52