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 6203
94 기타 Damage Reductions by SephirothSpawn (SDK호환) 1 백호 2009.02.22 779
93 기타 비밀소년님의 경험치 표시 스크립트 백호 2009.02.22 1419
92 기타 Character Creator by Leon@Creation Asylum 2 file 백호 2009.02.22 1511
91 기타 레벨업포인트 3 백호 2009.02.22 1693
90 기타 Sized Events 0.1 by Toby@rmxp.org file 백호 2009.02.22 848
89 기타 Shift Puzzles v2 by SephirothSpawn (SDK호환) 3 file 백호 2009.02.22 1170
88 기타 레벨을 표시해주는 스크립트 5 백호 2009.02.22 2405
87 기타 경험치 퍼센트 수정 백호 2009.02.22 1212
86 기타 필드에서 체력을 출력합니다. 4 백호 2009.02.22 1740
85 기타 필드에서 마력을 출력합니다. 백호 2009.02.22 989
84 기타 Realistic Shop by MeisMe@rmxp.org 3 file 백호 2009.02.22 1295
83 기타 양손무기, 전신갑옷 스크립트 2 백호 2009.02.22 1716
82 기타 무기 회피율, 방어구 공격력 지정 스크립트 6 백호 2009.02.22 1248
81 기타 KGC - 입수 경험치&금 증가 스크립트 백호 2009.02.22 1308
80 기타 더블애니메이션 스크립트 1 백호 2009.02.22 1598
79 기타 실제시간표시스크립트입니다...[중뷁이면지성;;] 4 백호 2009.02.22 1352
78 기타 만화형태 말칸 스크립트 28 file 백호 2009.02.22 3706
77 기타 잠수방지 스크립트 12 백호 2009.02.22 1865
76 기타 Encounter Control by SephirothSpawn (SDK호환) 4 file 백호 2009.02.22 1159
75 기타 Golden_sun_intro v1 1 백호 2009.02.22 1267
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 Next
/ 13