Ace 스크립트

울트라알파님이 올려주신 소스 보고 좋아보여서 사용하는데, 약간의 문제점이 있길래 수정하였습니다



맵을 다른곳에 갔다가 다시 돌아오면 npc케릭터(이벤트)들의 위치가 처음상태로 되돌아가는것이 어색해 보일때 사용하면

아주 유용한 스크립트 입니다.


별다른 설정은 필요없으며 이벤트위치가 저장되지 않았으면 좋겠다 싶은 이벤트만 따로 걸러줄 수 있습니다.


위치를 저장하고싶지 않은경우 :

이벤트의 가장 처음 부분에 주석 이벤트가 작성되어야 합니다.

주석 내용은

donotsave

로 입력하면 됩니다.

※ 주석에 donotsave 외에 다른 내용이 포함되어 있으면 안됩니다.

※※ 스크립트 내에 donotsave를 자신이 원하는 글자로 변경이 가능합니다. 

   예)     elsif (@list[0].parameters[0] == "nosave") 



스크립트 적용방법 :

아래의 스크립트를 main 바로 위쪽에 새로 삽입하여 봍여넣어 주세요.




#==============================================================================

# ■ Game_Event

#------------------------------------------------------------------------------

#  이벤트 처리 클래스입니다. 조건 판정에 의한 이벤트 페이지 전환 및 병렬 처리

# 이벤트 실행 등의 기능을 가지고있어 Game_Map 클래스에서 내부적으로 사용됩니다.

#==============================================================================

class Game_Event < Game_Character

  #--------------------------------------------------------------------------

  # ● 이벤트 위치의 보존여부 결정

  #--------------------------------------------------------------------------

  def save_pos?

    if (@list[0].code != 108) 

      return true

    elsif (@list[0].parameters[0] == "donotsave") 

      return false

    else

      return true

    end

  end

end

#==============================================================================

# ■ Game_Map

#------------------------------------------------------------------------------

# 맵을 다루는 클래스입니다. 스크롤 및 통행 가능 판정 등의 기능을 가지고 있습니다.

#이 클래스의 인스턴스는 $ game_map에서 참조됩니다.

#==============================================================================

class Game_Map

  #--------------------------------------------------------------------------

  # ● 초기화대상

  #--------------------------------------------------------------------------

  alias save_event_pos_initialize initialize

  def initialize

    save_event_pos_initialize

    @event_pos = {}

  end

  #--------------------------------------------------------------------------

  # ● 설치

  #--------------------------------------------------------------------------

  alias save_event_pos_setup setup

  def setup(map_id)

    save_event_pos

    save_event_pos_setup(map_id)

    load_event_pos

  end

  #--------------------------------------------------------------------------

  # ● 이벤트 위치 보존

  #--------------------------------------------------------------------------

  def save_event_pos

    return if @map_id == 0

    @event_pos[@map_id] ||= []

    @events.each{|i,e|

    if e.save_pos?

      @event_pos[@map_id][i] = [e.x,e.y]

    else

      @event_pos[@map_id][i] = nil

    end

    }

  end

  #--------------------------------------------------------------------------

  # ● 이벤트 위치 로드

  #--------------------------------------------------------------------------

  def load_event_pos

    return if @map_id == 0

    @event_pos[@map_id] ||= []

    @events.each{|i,e|

    next unless @event_pos[@map_id][i]

    e.moveto(@event_pos[@map_id][i][0],@event_pos[@map_id][i][1])

    }

  end

end 

#출처 : http://www.66rpg.com/articles/4901


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 5110
공지 RPG VX ACE 유용한 링크 모음 16 아방스 2012.01.03 28927
177 그래픽 셰이크 강화 스크립트 file 시낵스 2023.12.13 149
176 상태/속성 상태를 해제하는 상태 3 file 레미티 2013.03.07 1545
175 기타 사칙연산 게임 by 77er 1 file 77ER. 2013.08.19 1606
174 전투 사이드뷰 배틀 스크립트 (Animated Battlers By Jet10985) 6 file Rebiart 2014.05.18 4517
173 장비 사용자 장비 슬롯 1.1 27 file 아방스 2012.01.31 6615
172 온라인 브라우저 열기 스크립트 1 큔. 2018.09.09 671
171 오디오 볼륨변경 스크립트 레기우스州 2020.08.09 514
170 변수/스위치 변수/스위치 전역 저장 시스템 ( 게임이 종료 및 재시작되어도 값이 변하지 않는 변수와 스위치를 설정 ) 7 미루 2013.07.11 3169
169 미니맵 미니맵 표시 스크립트 21 file 아방스 2012.01.16 6488
168 아이템 물품 이름 컬러 변경 14 까까까 2012.01.04 5632
167 기타 메시지 표시 중에 자동으로 타이머 멈추기 1 file Bunny_Boy 2014.12.07 1026
166 메뉴 메뉴창 없애기 2 file hamin 2014.02.28 3879
165 파티 맵에서 4명 이상 대열 이동 가능수 조절하는 스크립트 5 Omegaroid 2013.10.17 1785
» 맵/타일 맵 이동시 이벤트(NPC) 위치 유지하기 (수정) 4 이브 2012.11.07 2144
163 맵/타일 레이어 맵 <layer> 기능 2 file LuD 2017.08.03 1472
162 전투 레벨업시 HP/MP 전체회복 9 쿠쿠밥솥 2012.02.05 5029
161 아이템 랜덤 아이템샵. 1 탐험가 2012.10.28 2297
160 HUD 동방프로젝트(풍신록) 맵 이름 표시 3 file 스리아씨 2013.09.24 3255
159 전투 데미지의 한계치를 정하는 스크립트 3 file 스리아씨 2013.11.07 2049
158 기타 던전 자동생성 4 Alkaid 2012.09.08 3160
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 Next
/ 11