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 6202
54 기타 [신기술 체험] 레이싱 스크립트 8 file 백호 2009.02.22 2185
53 기타 [All RGSS] 윈도우 메세지박스 스크립트 (Completed ver) 5 file Cheapmunk 2014.06.22 2186
52 기타 [신기술 체험] 솔로채팅창 17 file 백호 2009.02.22 2188
51 기타 [회복] 대기 회복 스크립트4.0 여러 오류 문제 해결 및 길이 줄임 11 file 코아 코스튬 2010.11.06 2190
50 기타 클리어 횟수 기록하기 1 file 허걱 2009.08.22 2194
49 기타 한계 돌파스크립트 8 G MAX 2009.09.03 2206
48 기타 [신기술 체험] 마우스 클릭 드래그 드롭 7 file 백호 2009.02.22 2246
47 기타 탤레포트 스크립트 3 앞잡이 2011.12.10 2260
46 기타 명령어들 6 지존!! 2010.07.24 2288
45 기타 rpgxp [체험판] 입니다. 6 file 인웅이 아부지 2010.01.12 2289
44 기타 스탯 13 file 이안 2010.01.17 2325
43 기타 거울에 캐릭 반사 20 ok하승헌 2010.02.18 2388
42 기타 레벨을 표시해주는 스크립트 5 백호 2009.02.22 2405
41 기타 쓸 용도가 없지만 마비노기 게임 만들 때 좋죠[장작스크립트] 5 백호 2009.02.22 2409
40 기타 [신기술 체험] 페스트 채팅 17 file 백호 2009.02.22 2412
39 기타 업데이트 (죽었을경우부활 )스크립트한글화 2 by향온 2011.09.27 2438
38 기타 대화 글씨가 한글자씩 나오는 스크립트 2 백호 2009.02.22 2464
37 기타 [신기술 체험] 마우스 사용 심플액션 7 file 백호 2009.02.22 2467
36 기타 맵 이동시 로딩 그림 표시 14 file 백호 2009.02.21 2479
» 기타 ABS 몬스터 HP 게이지 바 11 백호 2009.02.22 2485
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 Next
/ 13