질문과 답변

Extra Form

module Vocab
  def self.formation
    '대열 변경'
  end
end
class Game_Party < Game_Unit
  def swap_order(index1, index2)
    @actors[index1], @actors[index2] = @actors[index2], @actors[index1]
    $game_player.refresh
  end
end
class Window_MenuStatus < Window_Selectable
  attr_reader   :pending_index
  def initialize(x, y)
    if $scene.is_a?(Scene_Menu)
      super(x, y, 384, 416)
    else
      super(x, y, 384, Graphics.height)
    end
    @pending_index = -1
    refresh
    self.opacity = 0
    self.active = false
    self.index = -1
  end
  def refresh
    self.contents.clear
    @item_max = 4
    for i in 0...@item_max
      break if i >= $game_party.members.size
      draw_item_background(i)
        x = 0
        y = i * contents.height / @item_max
      draw_actor_face($game_party.members[i], x + 2, y + 2)
      draw_actor_name($game_party.members[i], x + 104, y + 13)
      draw_actor_class($game_party.members[i], x + 224, y + 13)
      draw_actor_level($game_party.members[i], x + 104, y + 37)
      draw_actor_state($game_party.members[i], x + 104, y + 61, 96, 24)
      draw_actor_hp($game_party.members[i], x + 224, y + 37, 120)
      draw_actor_mp($game_party.members[i], x + 224, y + 61, 120)
    end
  end
  def draw_actor_name(actor, x, y)
    self.contents.font.color = hp_color(actor)
    self.contents.draw_text(x, y, 112, 24, actor.name)
  end
  def draw_actor_class(actor, x, y)
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, 112, 24, actor.class.name)
  end
  def draw_actor_level(actor, x, y)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 32, 24, Vocab::level_a)
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 32, y, 58 - 32, 24, actor.level, 2)
  end
  def draw_actor_state(actor, x, y, width = 96, height = 24)
    count = 0
    for state in actor.states
      draw_icon(state.icon_index, x + 24 * (count % (width / 24)), y + 24 * (count / (width / 24)))
      count += 1
      break if (24 * count > width * (height/24) - 24)
    end
  end
  def draw_face(face_name, face_index, x, y, size = 96)
    bitmap = Cache.face(face_name)
    rect = Rect.new(0, 0, 0, 0)
    rect.x = face_index % 4 * 96 + (96 - 92) / 2
    rect.y = face_index / 4 * 96 + (96 - 92) / 2
    rect.width = 92
    rect.height = 92
    self.contents.blt(x, y, bitmap, rect)
    bitmap.dispose
  end
  def update_cursor
    if @index < 0
      self.cursor_rect.empty
    elsif @index < @item_max
      x = 0
      y = @index * contents.height / @item_max
      self.cursor_rect.set(x, y, contents.width, contents.height/@item_max)
    elsif @index >= 100
      x = 0
      y = (@index - 100) * contents.height/@item_max
      self.cursor_rect.set(x, y, contents.width, contents.height/@item_max)
    else
      self.cursor_rect.set(0, 0, contents.width, contents.height)
    end
  end
  def draw_item_background(index)
    if index == @pending_index
      contents.fill_rect(self.cursor_rect, pending_color)
    end
  end
  def pending_color
    windowskin.get_pixel(80, 80)
  end
  def pending_index=(index)
    last_pending_index = @pending_index
    @pending_index = index
    refresh
  end
end
class Window_MenuGold < Window_Base
  def initialize(x, y, width, height)
    super(x, y, width, height)
    refresh
  end
  def refresh
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(4, 0, self.contents.width - 8, WLH, '소지금')
    cx = contents.text_size(Vocab::gold).width
    self.contents.font.color = normal_color
    self.contents.draw_text(4, self.contents.height-WLH, self.contents.width - 8-cx-2, WLH, $game_party.gold, 2)
    self.contents.font.color = system_color
    self.contents.draw_text(4, self.contents.height-WLH, self.contents.width - 8, WLH, Vocab::gold, 2)
  end
end
class Window_Timer < Window_Base
  def initialize(x, y, width, height)
    super(x, y, width, height)
    refresh
  end
  def update
    if @total_sec != Graphics.frame_count / Graphics.frame_rate
      refresh
    end
  end
  def refresh
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(4, 0, self.contents.width - 8, WLH, '시간')
    @total_sec = Graphics.frame_count / Graphics.frame_rate
    hour = @total_sec / 60 / 60
    min = @total_sec / 60 % 60
    sec = @total_sec % 60
    time_string = sprintf('%02d:%02d:%02d', hour, min, sec)
    self.contents.font.color = normal_color
    self.contents.draw_text(4, self.contents.height-WLH, self.contents.width - 8, WLH, time_string, 2)
  end
end
class Window_Location < Window_Base
  def initialize(x, y, width, height)
    super(x, y, width, height)
    refresh
  end
  def refresh
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(4, 0, self.contents.width - 8, WLH, '위치')
    self.contents.font.color = normal_color
    map = load_data('Data/MapInfos.rvdata')
    self.contents.draw_text(4, self.contents.height-WLH, self.contents.width - 8, WLH, map[$game_map.map_id].name, 2)
  end
end
class Window_MenuCommand < Window_Command
  def draw_item(index, enabled = true)
    rect = item_rect(index)
    rect.x += 4
    rect.width -= 8
    self.contents.clear_rect(rect)
    self.contents.font.color = normal_color
    self.contents.font.color.alpha = enabled ? 255 : 128
    self.contents.draw_text(rect, @commands[index], 0)
  end
end
class Scene_Menu < Scene_Base
  def start
    super
    create_menu_background
    create_background
    create_command_window
    @gold_window = Window_MenuGold.new(384, 360, 160, 56)
    @timer_window = Window_Timer.new(384, 304, 160, 56)
    @location_window = Window_Location.new(384, 248, 160, 56)
   @status_window = Window_MenuStatus.new(0, 0)
  end
  def create_background
    @menu_background = Sprite.new
    @menu_background.bitmap = Cache.system('menu_bg')
  end
  def dispose_background
    @menu_background.bitmap.dispose
    @menu_background.dispose
  end
  def terminate
    super
    dispose_menu_background
    dispose_background
    @command_window.dispose
    @gold_window.dispose
    @timer_window.dispose
    @location_window.dispose
    @status_window.dispose
  end
  def update
    super
    update_menu_background
    @command_window.update
      @gold_window.update
      @timer_window.update
      @location_window.update
    @status_window.update
    if @command_window.active
      update_command_selection
    elsif @status_window.active
      update_actor_selection
    end
  end
  def create_command_window
   @command_window = Window_MenuCommand.new(160, [Vocab::item,Vocab::skill,Vocab::equip,Vocab::status,Vocab::formation,Vocab::save,Vocab::game_end])
   @command_window.x = 384
   @command_window.y = 0
   @command_window.height = 200
    @command_window.index = @menu_index
    if $game_party.members.size == 0
     @command_window.draw_item(0, false)
     @command_window.draw_item(1, false)
     @command_window.draw_item(2, false)
     @command_window.draw_item(3, false)
    end
    if $game_party.members.size < 2
      @command_window.draw_item(4, false)
    end
    if $game_system.save_disabled
      @command_window.draw_item(5, false)
    end
  end
  def update_command_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      if $game_party.members.size == 0 and [5,6].include?(@command_window.index)
      Sound.play_buzzer
      return
    elsif $game_system.save_disabled and @command_window.index == 5
      Sound.play_buzzer
      return
    end
      Sound.play_decision
      case @command_window.index
      when 0
          $scene = Scene_Item.new
      when 1
          start_actor_selection
      when 2
          start_actor_selection
      when 3
          start_actor_selection
      when 4
          start_actor_selection
      when 5
          $scene = Scene_File.new(true, false, false)
      when 6
          $scene = Scene_End.new
    end
    end
  end
  def update_actor_selection
    if Input.trigger?(Input::B)
      if @command_window.index == 4
        if @status_window.pending_index >= 0
          @status_window.pending_index = -1
          Sound.play_cancel
        else
          Sound.play_cancel
          end_actor_selection
        end
      else
        Sound.play_cancel
        end_actor_selection
      end
    elsif Input.trigger?(Input::C)
      $game_party.last_actor_index = @status_window.index
      Sound.play_decision
      case @command_window.index
       when 1
        $scene = Scene_Skill.new(@status_window.index)
        when 2
        $scene = Scene_Equip.new(@status_window.index)
        when 3
        $scene = Scene_Status.new(@status_window.index)
       when 4
          if @status_window.pending_index >= 0
            $game_party.swap_order(@status_window.index, @status_window.pending_index)
            @status_window.pending_index = -1
            @status_window.refresh
          else
            @status_window.pending_index = @status_window.index
          end
       end
      end
    end
  end
end
class Scene_Item < Scene_Base
  def return_scene
    $scene = Scene_Menu.new(0)
  end
end
class Scene_Skill < Scene_Base
  def return_scene
    $scene = Scene_Menu.new(1)
  end
end
class Scene_Equip < Scene_Base
  def return_scene
    $scene = Scene_Menu.new(2)
  end
end
class Scene_Status < Scene_Base
  def return_scene
    $scene = Scene_Menu.new(3)
  end
end
class Scene_End < Scene_Base
  def return_scene
    $scene = Scene_Menu.new(6)
  end
end
class Scene_File < Scene_Base
  def return_scene 
    if @from_title
      $scene = Scene_Title.new
    elsif @from_event
      $scene = Scene_Map.new
    else
      $scene = Scene_Menu.new(5)
    end
  end
end

를 했는데 계속 297번째 줄에서 syntax error가 뜨네요 뭐가 문제죠???

Comment '3'
  • profile
    습작 2015.11.01 17:34
    최근 발션된 문제 해결한다고 수정했더니 다른 곳에서 다시 문제가 생겼군요!!
    재점검하고 오류 수정되는 대로 댓글로 알려드릴게요. :)
  • profile
    습작 2015.11.01 17:50
    해당 문제되는 부분을 수정하여 버전업 하였습니다. 혹여 문제 재 발생시 피드백 부탁드립니다. :)
  • profile
    습작 2015.11.01 20:49
    새로운 버그 발견으로 인해 버전업 되었습니다. 추가적인 분제 발생시 피드백 부탁드려요. :)

List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12445
한글 패치 RMXP rpg xp 한글패치 후 글자가 나오질 않습니다 1 file 핫핑세일 2019.12.04 279
한글 패치 RMVXA RPG VX ACE 한글 패치 3 채토 2019.02.12 804
한글 패치 RM2k 스팀 알만툴 2k는 한글패치가 없나여? 2 태연천사 2019.04.01 317
한글 패치 RMVXA Translator++ invalid multibyte char (utf-8) 오류 (영어겜임) file 진영삼 2019.05.02 429
한글 패치 RMVXA VX Ace툴 스팀 버전 한글패치는 없는 건가요? 자유와바람 2019.11.07 319
한글 패치 RMVXA 지원하지 않는 조작 1 청빛날개 2020.02.04 96
한글 패치 RMXP 스팀 알만툴XP 한글패치 관련 질문입니다 으으으으으으 2020.02.25 342
한글 패치 기타 SRC나 DNML 유저팬픽시나리오MOD제작툴 한글화 하시는분은 없나요? 1 모드좋아 2020.02.27 212
한글 패치 RMVXA RPG MAKER VX ACE 한글패치 관련 문의드립니다ㅠ 2 쇠창살 2020.03.02 462
한글 패치 RMVX vx 한글패치 어떻게 해야 하나요 ㅠㅠㅠ 2 얄라셩 2020.06.05 279
한글 패치 RMXP RPG XP 스팀 한글패치 최신 버전은 없나요? 1 일리브 2020.11.14 660
한글 패치 RM2k3 2003 게임의 글자가 특수문자로 출력됩니다. 1 file 우주신유니콘 2021.03.20 301
한글 패치 RMVXA RPG Maker VX Ace 한글 출력? 1 ikmyung 2021.05.17 302
한글 패치 기타 알만툴 2k 스팀판은 한글패치가 없나요? 김기차 2023.08.28 49
한글 패치 RM2k RM2k의 스팀 한글패치 다크크리에이터 2024.01.27 24
플러그인 추천 RMMV MV 인벤토리 변경하는 플러그인이 있을까요? 2 머리큰두두 2023.09.19 62
플러그인 추천 RMMV 지도의 특정 좌표를 한번에 찾아가는 플러그인은 없을까요? 7 겐마 2020.08.22 126
플러그인 추천 RMMV npc 이동 1 코기 2020.02.09 89
플러그인 추천 RMMV MV에서 대각선이동이 가능한가요? (8방향이동) 6 믕믱이 2020.03.12 780
플러그인 추천 RMMV 이런 플러그인인데 혹시 알고있는 사람 있습니까??? 2 file 호구랑 2019.03.02 241
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 83 Next
/ 83