게임 내에 실제 시간 표기는 많은데
게임 속의 시간 표기가 없네요 ㅠㅠ
여러 이벤트할려면 시간 개념이 있어야하는데
게임내의 시간스크립트도 못찾겠고,
시간관련 스크립트 적용해보면 실제 시간이 나오네요 ㅠㅠ
도와주십쇼
현재 쓰고 있는 스크립트 입니다
class Scene_Menu < Scene_MenuBase
def start
super
create_command_window
create_gold_window
create_timer_window
create_status_window
end
def create_gold_window
@gold_window = Window_Gold.new
end
def create_timer_window
@timer_window = Window_Timer.new
end
def create_command_window
@command_window = Window_MenuCommand.new
@command_window.set_handler(:item, method(:command_item))
@command_window.set_handler(:skill, method(:command_personal))
@command_window.set_handler(:equip, method(:command_personal))
@command_window.set_handler(:status, method(:command_personal))
@command_window.set_handler(:formation, method(:command_formation))
@command_window.set_handler(:save, method(:command_save))
@command_window.set_handler(:game_end, method(:command_game_end))
@command_window.set_handler(:cancel, method(:return_scene))
end
def create_status_window
@status_window = Window_MenuStatus.new(160, 0)
end
end
class Window_MenuCommand < Window_Command
def initialize
super(0, 0)
self.opacity = 255 if SceneManager.scene_is?(Scene_Menu)
select_last
end
def window_width
return 160
end
def window_height
return 192
end
def make_command_list
add_command(Vocab::item, :item, main_commands_enabled)
add_command(Vocab::skill, :skill, main_commands_enabled)
add_command(Vocab::equip, :equip, main_commands_enabled)
add_command(Vocab::status, :status, main_commands_enabled)
add_command(Vocab::formation, :formation, formation_enabled)
add_command(Vocab::save, :save, save_enabled)
add_command(Vocab::game_end, :game_end)
end
def alignment
return 0
end
end
class Window_MenuStatus < Window_Selectable
def initialize(x, y)
super(x, y, window_width, window_height)
@pending_index = -1
self.opacity = 255 if SceneManager.scene_is?(Scene_Menu)
refresh
end
def window_width
return 384
end
def window_height
return 416
end
def item_height
return (height - standard_padding * 2) / 4
end
def draw_item(index)
actor = $game_party.members[index]
enabled = $game_party.battle_members.include?(actor)
rect = item_rect(index)
draw_item_background(index)
draw_actor_face(actor, rect.x + 1, rect.y + 1, enabled)
draw_actor_simple_status(actor, rect.x, rect.y)
end
def draw_actor_simple_status(actor, x, y)
draw_actor_name(actor, x + 108, y + 12)
draw_actor_level(actor, x + 108, y + 36)
draw_actor_icons(actor, x + 108, y + 60)
draw_actor_class(actor, x + 228, y + 12)
draw_actor_hp(actor, x + 228, y + 36)
draw_actor_mp(actor, x + 228, y + 60)
end
def draw_face(face_name, face_index, x, y, enabled = true)
bitmap = Cache.face(face_name)
rect = Rect.new(face_index % 4 * 96, face_index / 4 * 96, 96, 96)
contents.blt(x, y, bitmap, rect, enabled ? 255 : translucent_alpha)
bitmap.dispose
end
def draw_actor_name(actor, x, y, width = 112)
change_color(hp_color(actor))
draw_text(x, y, width, 24, actor.name)
end
def draw_actor_level(actor, x, y)
change_color(system_color)
draw_text(x, y, 32, line_height, Vocab::level_a)
change_color(normal_color)
draw_text(x + 56 - 24, y, 24, 24, actor.level, 2)
end
def draw_actor_icons(actor, x, y, width = 96)
icons = (actor.state_icons + actor.buff_icons)[0, ((24/24)*width)/24]
icons.each_with_index {|n, i| draw_icon(n, x + 24 * (i % (width / 24)), y + 24 * (i / (width / 24))) }
end
def draw_actor_class(actor, x, y, width = 112)
change_color(normal_color)
draw_text(x, y, width, 24, actor.class.name)
end
def draw_actor_hp(actor, x, y, width = 124)
draw_gauge(x, y, width, actor.hp_rate, hp_gauge_color1, hp_gauge_color2)
change_color(system_color)
draw_text(x, y, 30, line_height, Vocab::hp_a)
draw_current_and_max_values(x, y, width, actor.hp, actor.mhp,
hp_color(actor), normal_color)
end
def draw_actor_mp(actor, x, y, width = 124)
draw_gauge(x, y, width, actor.mp_rate, mp_gauge_color1, mp_gauge_color2)
change_color(system_color)
draw_text(x, y, 30, line_height, Vocab::mp_a)
draw_current_and_max_values(x, y, width, actor.mp, actor.mmp,
mp_color(actor), normal_color)
end
end
class Window_MenuActor < Window_MenuStatus
def initialize
super(0, 0)
self.visible = false
end
def window_height
Graphics.height
end
end
class Window_Gold < Window_Base
def initialize
super(0, 368, window_width, 48)
self.opacity = 255 if SceneManager.scene_is?(Scene_Menu)
refresh
end
def window_width
return 160
end
def refresh
contents.clear
change_color(system_color)
draw_text(4, 0, contents_width - 8, line_height, '소지금')
cx = text_size(currency_unit).width
change_color(normal_color)
draw_text(4, contents_height - line_height, contents.width - 8 - cx - 2, line_height, value, 2)
change_color(system_color)
draw_text(4, contents_height - line_height, contents.width - 8, line_height, currency_unit, 2)
end
end
class Window_Timer < Window_Base
def initialize
super(0, 320, window_width, 48)
self.opacity = 255 if SceneManager.scene_is?(Scene_Menu)
refresh
end
def window_width
return 160
end
def refresh
contents.clear
change_color(system_color)
draw_text(4, 0, contents_width - 8, line_height, '시간')
change_color(normal_color)
draw_playtime(4, contents_height - line_height, contents.width - 8, 2)
end
def open
refresh
super
end
def draw_playtime(x, y, width, align)
draw_text(x, y, width, line_height, $game_system.playtime_s, align)
end
def update
refresh
end
end
- 질문할 내용이 이 게시판이나 강좌에 이미 있는지 확인합니다.
- 하나의 게시물에는 하나의 질문만 합니다.
- 제목은 질문의 핵심 내용으로 작성합니다.
- 질문 내용은 답변자가 쉽게 이해할 수 있도록 최대한 상세하게 작성합니다.
- 스크립트의 전문이 필요할 경우 txt 파일 등으로 첨부해 주시기 바랍니다.
- 답변받은 게시물은 삭제하지 않습니다.
- 답변이 완료된 경우 해당 답변해주신 분들께 감사의 댓글을 달아줍니다.
- 처음 오신 분들은 공지 게시물을 반드시 읽어주세요!
※ 미준수시 사전경고 없이 게시물을 삭제합니다.