ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
#=================================================
# ■ 아이디를 띄우기 (스프라이트 구현)
#-------------------------------------------------
# Author: Bimilist(비밀소년)
# Desc: 머리위에 아이디를 띄웁니다
# NPC아이디 이름을 [ID(아이디)] <--로 해주세요
# RPG만들기 클랜 http://cafe.naver.com/rpgvx
#=================================================
class Game_Character
attr_accessor :sprite_id
end
class Sprite_Character < Sprite_Character
def create_id_sprite(text)
bitmap = Bitmap.new(160, 16)
bitmap.font.name = "굴림"
bitmap.font.size = 14
bitmap.font.color.set(0, 0, 0)
bitmap.draw_text(+1, +1, 160, 16, text, 1)
bitmap.font.color.set(255, 255, 255)
bitmap.draw_text(0, 0, 160, 16, text, 1)
@_id_sprite = Sprite.new(self.viewport)
@_id_sprite.bitmap = bitmap
@_id_sprite.ox = 80
@_id_sprite.oy = 14
@_id_sprite.x = self.x
@_id_sprite.y = self.y - self.oy / 2
@_id_sprite.z = 3000
@_id_sprite_visible = true
end
def dispose_id_sprite
@_id_sprite.dispose
@_id_sprite_visible = false
end
def update_id_sprite
if @character.sprite_id != nil
if not @_id_sprite_visible
create_id_sprite(@character.sprite_id)
end
@_id_sprite.x = self.x
@_id_sprite.y = self.y - self.oy
else
if @_id_sprite_visible
dispose_id_sprite
end
end
end
def update
super
update_id_sprite
end
end
#=================================================
# ■ 아이디를 띄우기 (사용 방법 정의)
#-------------------------------------------------
# Author: Bimilist(비밀소년)
# Desc: 머리위에 아이디를 띄웁니다
# Usage: 이벤트 아이디의 이름: [ID(아이디)]
# 주인공은 그딴거 할필요 없음
# RPG만들기클랜
#
#=================================================
class Game_Event < Game_Event
def refresh
super
text = @event.name.dup
text.gsub!(/[[Ii][Dd](.+?)]/) do#<요거
#스쿠아님인가 테나드님인가그분이 올리신건 <이게 2개있습니다.그치만 1개여야합니다.
@sprite_id = $1
end
@sprite_id = nil if @erased
@sprite_id = nil if @character_name == ""
end
end
class Game_Player < Game_Player
def refresh
super
if $game_party.actors.size > 0
@sprite_id = $game_party.actors[0].name
end
end
end
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
위에 빨간색 가로줄 사이에 있는 부분 전체가 이름표시 스크립트 입니다.
주인공의 이름은 자동으로 표시되고 NPC의 이름은 [ID이름]에서 이름 부분만 표시됩니다.
그런데 오프닝 부분 등에서 일시적으로 이름이 안보이게 하고 싶은데 도저히 방법을 알 수가 없네요..
이벤트에 스크립트를 넣어서 조작도 해보고.. 주인공의 이름을 바꿔도 보고, 주인공의 멤버 교체를 해보기도 하고...
별 짓을 다해봤지만 안되네요.. 스크립트 자체가 단순(?)해서 무조건 멤버 중에서 001에 있는 멤버의 이름만,
그것도 처음 데이터 베이스에 표기된 것만 (그래서 이후에 바꿔도 안되는 듯합니다.) 표시를 해주는 것 같네요..
어쨌든 다른 스크립트를 사용해도 되니 일시적으로 주인공의 이름을 안보이게 했다가 다시 보일 수 있는 방법 좀
알려주시면 감사하겠습니다..