Avangs

  • 게임 정보
    • 게임 소개
    • 게임 리뷰
    • 게임 실황
    • 게임 공략
    • 모바일 테스트
  • 게임 작품new
    • 완성작 게임
    • 체험판 게임
    • 한글판 게임new
    • 온라인 게임
    • 추천작 제작자 저장소
  • 투표선정 작품
    • 아방스 추천작
    • 완성 기대작
    • 투표 신청
    • 투표소
    • 투표 결과
  • 강좌
    • 아방스 칼럼
    • 비주얼노벨 강좌
    • 알만툴 강좌
      • MZ 강좌
      • MV 강좌
      • VX Ace 강좌
      • VX 강좌
      • XP 강좌
      • 2003 강좌
      • 2000 강좌
    • 게임메이커 강좌
    • 울프툴 강좌
    • 3D 게임제작 강좌
    • 2D 게임제작 강좌
    • 그래픽 제작 강좌
    • 기타 강좌
  • 질문과 답변
    • 자주 묻는 질문
    • 질문과 답변
    • 제작의뢰
  • 커뮤니티
    • 구인·구직·외주
    • 테스트 요청
    • 자유게시판
    • 게임계 소식
    • 유머&정보
    • 사이트링크
    • 이벤트&대회
  • 창작
    • 게임 기획
    • 맵배치
    • 글쓰기
    • 그리기
    • 음악
  • 자료실
    • 게임제작툴
    • 예제 및 샘플
    • 그래픽 소재
      • 오리지널 소재
      • 이차창작 소재
      • 수정·개조 소재
      • 외부 소재
    • 사운드 소재
    • 확장·플러그인·스크립트
      • MZ 플러그인
      • MV 플러그인
      • Ace 스크립트
      • VX 스크립트
      • XP 스크립트
      • 2k3 플러그인
      • VN 플러그인·확장
    • 외부 소재사이트
    • 기타 자료
      • 한글화툴
      • 무료 폰트
      • 유틸리티
    • 디자인 참고자료
  • 고객센터
    • 공지사항
    • 건의 및 신고
    • 핫 이슈
로그인 회원가입
Avangs
  • 게임 정보
    • 게임 소개
    • 게임 리뷰
    • 게임 실황
    • 게임 공략
    • 모바일 테스트
  • 게임 작품new
    • 완성작 게임
    • 체험판 게임
    • 한글판 게임new
    • 온라인 게임
    • 추천작 제작자 저장소
  • 투표선정 작품
    • 아방스 추천작
    • 완성 기대작
    • 투표 신청
    • 투표소
    • 투표 결과
  • 강좌
    • 아방스 칼럼
    • 비주얼노벨 강좌
    • 알만툴 강좌
      • MZ 강좌
      • MV 강좌
      • VX Ace 강좌
      • VX 강좌
      • XP 강좌
      • 2003 강좌
      • 2000 강좌
    • 게임메이커 강좌
    • 울프툴 강좌
    • 3D 게임제작 강좌
    • 2D 게임제작 강좌
    • 그래픽 제작 강좌
    • 기타 강좌
  • 질문과 답변
    • 자주 묻는 질문
    • 질문과 답변
    • 제작의뢰
  • 커뮤니티
    • 구인·구직·외주
    • 테스트 요청
    • 자유게시판
    • 게임계 소식
    • 유머&정보
    • 사이트링크
    • 이벤트&대회
  • 창작
    • 게임 기획
    • 맵배치
    • 글쓰기
    • 그리기
    • 음악
  • 자료실
    • 게임제작툴
    • 예제 및 샘플
    • 그래픽 소재
      • 오리지널 소재
      • 이차창작 소재
      • 수정·개조 소재
      • 외부 소재
    • 사운드 소재
    • 확장·플러그인·스크립트
      • MZ 플러그인
      • MV 플러그인
      • Ace 스크립트
      • VX 스크립트
      • XP 스크립트
      • 2k3 플러그인
      • VN 플러그인·확장
    • 외부 소재사이트
    • 기타 자료
      • 한글화툴
      • 무료 폰트
      • 유틸리티
    • 디자인 참고자료
  • 고객센터
    • 공지사항
    • 건의 및 신고
    • 핫 이슈
로그인 회원가입

NOTICE

공지사항
더보기
  • 서버 안정성 및 보안 강화 조치 04.20

Recently Added Games

최근 등록 게임
  • 어드벤쳐 고철에 파묻힌 데모나 (屑鉄まとうデモナ) newfile 08.19
  • 어드벤쳐 비올레 저택의 시온 : 꽃눈의 저택|RPG Maker MZ 단편 심리공포 어드벤처 file 08.17
  • 기타 (똥 주의)그저 똥을 누러 가는 게임 Re:Boot updatefile 08.16
  • 롤플레잉 SACCHARINE SYNC (DEMO) 배포 file 08.12
  • 기타 (완성작) 야구장에 가자4 file 2 07.07
종류
  • 기본툴 사용법
  • 이벤트 작성
  • 퀘스트 작성
  • 액션 전투
  • 턴제 전투
  • 맵배치
  • 스크립트 작성
  • 스크립트 사용
  • 스크립트 추천
  • 플러그인 생성
  • 플러그인 사용
  • 플러그인 추천
  • 에러 해결
  • 제작툴 구매
  • 한글 패치
  • 게임 배포
  • 게임 번역
  • 라이선스
  • 기타
Home 질문과 답변 질문과 답변
RMVX
2013.04.11 13:08

세이브 메뉴에 캐릭터 페이스를 넣고 싶습니다

야나기
조회 수 897 추천 수 0 댓글 4
크게 작게 위로 아래로 댓글로 가기 인쇄
크게 작게 위로 아래로 댓글로 가기 인쇄
Extra Form

대략 밑의 그림 같은 느낌으로 만들어 졌으면 합니다.

일본쪽 사이트에서 이렇게 해주는 스크립트를 찾긴 했는데 뭔가 꼬인건지 적용이 안되더라구요;;

 해결 부탁드립니다!^^;;

대략 밑의 그림 같은 느낌으로 만들어 졌으면 합니다.

일본쪽 사이트에서 이렇게 해주는 스크립트를 찾긴 했는데 뭔가 꼬인건지 적용이 안되더라구요;;

サンプル

이하 사용해본 스크립트입니다

#==============================================================================
# ■ VX-RGSS-26 ファイル画面-改 [Ver.1.0.0]            by Claimh
#------------------------------------------------------------------------------
# ファイル画面を改変します。
#【変更点】
# ・ファイル構成変更(FileHader化)
# ・現在位置表示追加
# ・顔グラフィック描画追加
#==============================================================================

module SaveEx
  # 顔グラフィックで表示
  USE_FACE = true

  # 現在地の表示
  MAP_NAME = true
  # ツリーの親のマップ名を使用する
  BASE_NAME = true
end

#==============================================================================
# ■ Game_Map 拡張メソッド
#==============================================================================
class Game_Map
  #--------------------------------------------------------------------------
  # ● マップ名取得
  #--------------------------------------------------------------------------
  def map_name
    mapInfo = load_data(sprintf("Data/MapInfos.rvdata"))
    return mapInfo[@map_id].name
  end
  #--------------------------------------------------------------------------
  # ● 親マップID取得
  #--------------------------------------------------------------------------
  def parent_id
    mapInfo = load_data(sprintf("Data/MapInfos.rvdata"))
    return mapInfo[@map_id].parent_id
  end
  #--------------------------------------------------------------------------
  # ● 大元の親マップID取得
  #--------------------------------------------------------------------------
  def base_parent_id
    mapInfo = load_data(sprintf("Data/MapInfos.rvdata"))
    return search_parent_id(mapInfo)
  end
  def search_parent_id(mapInfo)
    m_id = @map_id
    loop do
      p_id = mapInfo[m_id].parent_id
      return m_id if p_id == 0
      m_id = p_id
    end
  end
  #--------------------------------------------------------------------------
  # ● 大元の親マップ名取得
  #--------------------------------------------------------------------------
  def base_map_name
    mapInfo = load_data(sprintf("Data/MapInfos.rvdata"))
    return mapInfo[search_parent_id(mapInfo)].name
  end
end


#==============================================================================
# ■ FileHeader  : セーブファイルヘッダ
#==============================================================================
class FileHeader
  attr_reader :characters       # キャラクター
  attr_reader :faces            # 顔グラフィック
  attr_reader :map_name         # マップ名
  #--------------------------------------------------------------------------
  # ● オブジェクト初期化
  #--------------------------------------------------------------------------
  def initialize
    @characters = []
    @faces = []
    for actor in $game_party.members
      @characters.push([actor.character_name, actor.character_index])
      @faces.push([actor.face_name, actor.face_index])
    end
    @map_name = SaveEx::BASE_NAME ? $game_map.base_map_name : $game_map.map_name
  end
end

#==============================================================================
# ■ Window_SaveFile
#==============================================================================
class Window_SaveFile < Window_Base
  #--------------------------------------------------------------------------
  # ● 公開インスタンス変数
  #--------------------------------------------------------------------------
  attr_reader   :filename                 # ファイル名
  attr_reader   :file_exist               # ファイル存在フラグ
  attr_reader   :time_stamp               # タイムスタンプ
  attr_reader   :selected                 # 選択状態
  #--------------------------------------------------------------------------
  # ● オブジェクト初期化
  #     file_index : セーブファイルのインデックス (0~3)
  #     filename   : ファイル名
  #--------------------------------------------------------------------------
  def initialize(file_index, filename)
    super(0, 56 + file_index % 4 * 90, 544, 90)
    @file_index = file_index
    @filename = filename
    load_gamedata
    refresh
    @selected = false
  end
  #--------------------------------------------------------------------------
  # ● ゲームデータの一部をロード
  #    スイッチや変数はデフォルトでは未使用 (地名表示などの拡張用) 。
  #--------------------------------------------------------------------------
  def load_gamedata
    @time_stamp = Time.at(0)
    @file_exist = FileTest.exist?(@filename)
    if @file_exist
      file = File.open(@filename, "r")
      @time_stamp = file.mtime
      begin
        @header         = Marshal.load(file)
        @frame_count    = Marshal.load(file)
        @last_bgm       = Marshal.load(file)
        @last_bgs       = Marshal.load(file)
        @game_system    = Marshal.load(file)
        @game_message   = Marshal.load(file)
        @game_switches  = Marshal.load(file)
        @game_variables = Marshal.load(file)
        @total_sec = @frame_count / Graphics.frame_rate
      rescue
        @file_exist = false
      ensure
        file.close
      end
    end
  end
  #--------------------------------------------------------------------------
  # ● リフレッシュ
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.contents.font.color = normal_color
    name = Vocab::File + " #{@file_index + 1}"
    self.contents.draw_text(4, 0, 200, WLH, name)
    @name_width = contents.text_size(name).width
    if @file_exist
      SaveEx::USE_FACE ? draw_party_faces(100, -10) : draw_party_characters(152, 58)
      self.contents.draw_text(320-16, 0, 200, WLH, @header.map_name, 2) if SaveEx::MAP_NAME
      draw_playtime(0, 34, contents.width - 4, 2)
    end
  end
  #--------------------------------------------------------------------------
  # ● パーティキャラの描画
  #     x : 描画先 X 座標
  #     y : 描画先 Y 座標
  #--------------------------------------------------------------------------
  def draw_party_characters(x, y)
    for i in 0...@header.characters.size
      name = @header.characters[i][0]
      index = @header.characters[i][1]
      draw_character(name, index, x + i * 48, y)
    end
  end
  #--------------------------------------------------------------------------
  # ● パーティキャラの描画
  #     x : 描画先 X 座標
  #     y : 描画先 Y 座標
  #--------------------------------------------------------------------------
  def draw_party_faces(x, y)
    for i in 0...@header.faces.size
      name = @header.faces[i][0]
      index = @header.faces[i][1]
      draw_face(name, index, x + i * 90, y) # 4人以上だと文字とかぶる…
    end
  end
end


#==============================================================================
# ■ Scene_File
#==============================================================================
class Scene_File < Scene_Base
  #--------------------------------------------------------------------------
  # ● オブジェクト初期化
  #     saving     : セーブフラグ (false ならロード画面)
  #     from_title : タイトルの「コンティニュー」で呼び出されたフラグ
  #     from_event : イベントの「セーブ画面の呼び出し」で呼び出されたフラグ
  #--------------------------------------------------------------------------
  def initialize(saving, from_title, from_event, menu_index=4)
    @saving = saving
    @from_title = from_title
    @from_event = from_event
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # ● 元の画面へ戻る
  #--------------------------------------------------------------------------
  def return_scene
    if @from_title
      $scene = Scene_Title.new
    elsif @from_event
      $scene = Scene_Map.new
    else
      $scene = Scene_Menu.new(@menu_index)
    end
  end
  #--------------------------------------------------------------------------
  # ● セーブデータの書き込み
  #     file : 書き込み用ファイルオブジェクト (オープン済み)
  #--------------------------------------------------------------------------
  def write_save_data(file)
    header = FileHeader.new
    $game_system.save_count += 1
    $game_system.version_id = $data_system.version_id
    @last_bgm = RPG::BGM::last
    @last_bgs = RPG::BGS::last
    Marshal.dump(header,               file)
    Marshal.dump(Graphics.frame_count, file)
    Marshal.dump(@last_bgm,            file)
    Marshal.dump(@last_bgs,            file)
    Marshal.dump($game_system,         file)
    Marshal.dump($game_message,        file)
    Marshal.dump($game_switches,       file)
    Marshal.dump($game_variables,      file)
    Marshal.dump($game_self_switches,  file)
    Marshal.dump($game_actors,         file)
    Marshal.dump($game_party,          file)
    Marshal.dump($game_troop,          file)
    Marshal.dump($game_map,            file)
    Marshal.dump($game_player,         file)
  end
  #--------------------------------------------------------------------------
  # ● セーブデータの読み込み
  #     file : 読み込み用ファイルオブジェクト (オープン済み)
  #--------------------------------------------------------------------------
  def read_save_data(file)
    header               = Marshal.load(file)
    Graphics.frame_count = Marshal.load(file)
    @last_bgm            = Marshal.load(file)
    @last_bgs            = Marshal.load(file)
    $game_system         = Marshal.load(file)
    $game_message        = Marshal.load(file)
    $game_switches       = Marshal.load(file)
    $game_variables      = Marshal.load(file)
    $game_self_switches  = Marshal.load(file)
    $game_actors         = Marshal.load(file)
    $game_party          = Marshal.load(file)
    $game_troop          = Marshal.load(file)
    $game_map            = Marshal.load(file)
    $game_player         = Marshal.load(file)
    if $game_system.version_id != $data_system.version_id
      $game_map.setup($game_map.map_id)
      $game_player.center($game_player.x, $game_player.y)
    end
  end
end

 

이걸 사용해서 타이틀 메뉴의 이어하기를 누르면

Script 'save' line 169: NoMethodError occured

undefind method 'faces' for # <Array :0x189d308>

위의 경고문이 뜨며 에러가 납니다

 

으윽...좀 도와주세요..

스크립트에서 어디가 에러 났는지, 혹은 아예 그냥 페이스를 넣는 법을 새로 가르쳐주시면 감사하겠습니다..

 

 

 

0 추천 0 비추천
Facebook Twitter Google Pinterest KakaoStory Band
위로 아래로 댓글로 가기 인쇄
에디터 선택하기
✔ 텍스트 모드 ✔ 에디터 모드
?
댓글 쓰기 권한이 없습니다. 로그인 하시겠습니까?
Comment '4'
  • profile
    습작 2013.04.11 13:19

    답변자에 입장에서 다소 많이 부족한 질문이 아닌가 싶습니다. 일단 그 구하셨다는 스크립트가 어떤 것인지 알 수 없으며, 그 스크립트를 어떻게 답변자가 구해서 살펴봐야 할지도 알수 없고, 문제가 생긴 질문자님의 프로젝트 상태가 어떻길래 멀쩡한 스크립트가 제대로 작동하지 않는 것인지도 알 수 없습니다.


    1. 사용하신 스크립트 이름

    2. 사용하신 스크립트

    3. 문제가 생긴 프로젝트


    위 세가지에 대해서 보다 추가적인 설명과 자료를 추가하시길 권장합니다.^^

    댓글
  • ?
    야나기 2013.04.11 13:26
    아...그렇군요. 저는 꼭 그 스크립트를 고쳐달라는 뜻이 아니라 그 스크립트가 안되니까 어떤식으로 페이스를 넣으면 되는가가 질문의 요지 였는데 말이죠;; 질문을 너무 간단하게 하여 제 문장 전달력이 딸렸던 것 같습니다; 일단 스크립트와 어떤 식으로 오류가 나는지 올려두기는 하겠습니다
    댓글
  • profile
    습작 2013.04.11 14:01
    올려주신 그 스크립트... 잘 작동하네요. 멀쩡한 스크립트입니다. 혹시나 다른 스크립트들과의 사이에서 문제가 생긴 것일 수도 있습니다. 본인의 프로젝트를 살펴보시길 권장합니다.
    댓글
  • ?
    야나기 2013.04.11 19:58
    아, 문제 해결했습니다. 원래 있던 세이브 파일과 충돌해서 그렇더군요...원래 있던 세이브 파일 지우고 넣어 봤더니 되었습니다. 감사합니다;;
    댓글

Category
  • 공지
  • 사이트 이용
  • 툴선택
  • 게임찾기
  • GM
  • ClickTeam
  • RM2k
  • RM2k3
  • RMXP
  • RMVX
  • RMVXA
  • RMMV
  • RMMZ
  • AGM
  • Visual Novel
  • 기타
List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 65022
RMXP xp 특정 물건 위치 옮겨서 이벤트 발생시키기 질문이요(사진有) 4 file 호러게이므 2013.04.11 922
RMVX 세이브 메뉴에 캐릭터 페이스를 넣고 싶습니다 4 야나기 2013.04.11 897
RMVX 이벤트를 한번 처리 한걸 삭제 시키고 싶은데 어떻게 해야 하나요? 4 AQUA 2013.04.11 881
RMVXA 아이템 설명은 3줄 이상 못늘리나요? IZEN 2013.04.11 809
RMXP 상점 처리할때요, 플레이어가 특정 아이템만 팔 수 있도록 지정하는법좀.. 스크립트라도.. 1 팅코 2013.04.10 919
RMVXA 요즘 혜성 같이 나타난 RPG VX ACE 치트오메틱에 대해서입니다. 1 g223k 2013.04.10 12589
RMVXA 프로세스 인식 스크립트가 궁금합니다 mona 2013.04.08 1006
RM2k3 RPG2003을 시작하면 검은색 맵 [아무것도 없는]만 보입니다. 1 엑스트라 2013.04.08 1653
RMVX 캐릭터 배치 어떻게 하나요. 2 로렐 2013.04.07 871
RMVXA vxace 대쉬시 달리기모션.. 8 yellowcat 2013.04.07 1644
RMVXA 타이틀화면 나오기전에 동영상재생 문제질문요.. 4 윌리웡기 2013.04.06 1043
RMXP 이건..왜..저만 튕기죠... 3 file 구름인간 2013.04.05 838
RMVX 화이트 페이드인, 아웃 2 Thyella 2013.04.05 1607
RPG만들기중 테이터베이스 한글화 적용하면 캐릭터가 사라지네요; 1 짜농 2013.04.05 856
RMVXA 그림이 표시된후 사라지게 하고 싶은데... 3 IZEN 2013.04.04 985
RMXP RPGXP, F1을 누르면 이상한 언어가 나옵니다 4 file 에이미 2013.04.04 1266
RMVXA 전투 방식 2 file 빵씨 2013.04.03 1434
RMVXA 요 문장을 출력하는 메세지 바 색 어찌 바꾸나요? 1 file 타락한마왕 2013.04.03 1090
RMVXA 캐릭터를 따라가는 화면 이동.. 1 file yellowcat 2013.04.03 1206
RMVXA 커맨드 입력받아서 그림 삭제하기 2 IZEN 2013.04.02 984
쓰기
Board Pagination Prev 1 ... 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 ... 519 Next
/ 519
AVANGS

게임 제작, 창작, 자료, 강좌를 연결하는 커뮤니티

  • 개인정보 취급방침

Copyright © 2026 Avangs