VX 스크립트

사용예

스크립트 실행 후 액터ID가 들어갈 변수는 49번입니다. (스크립트 디폴트입니다. 실제로 쓸 때는 본문을 수정해 주십시오.)

스크립트 수정법은 스크립트 내부에 자세히 기입되어 있습니다.

 

이벤트스크립트커맨드 $scene = Scene_ActorChoice.new 는 액터선택지간편화스크립트를 호출하는 것입니다.

스크립트를 호출할 때에는 반드시 전후에 약간의 웨이트를 주시기 바랍니다. 안 그러면 오동작합니다.



1. 이벤트를 만듭니다. 이 이벤트는 현재 파티원 중 누가 강의를 할 것인가를 선택합니다.

학교에서 임시 강사로 강의를 한다는 내용이지요.



2. 이벤트커맨드 스크립트를 사용해 액터초이스간편화 스크립트 Scene을 불러옵니다.

이 윈도우는 Window_MenuStatus로서 메뉴화면상의 것을 그대로 사용합니다.

때문에 제가 올린 스크립은 놔두고 원래 Window_MenuStatus를 수정하면 그것을 그대로 반영할 수 있습니다.

다만 완전커스텀된 Window_MenuStatus(MOG메뉴 등의)와는 어떠한 충돌이 있을지도 모릅니다.

그것은 제가 MOG메뉴를 사용해보지 않아서 모르겠습니다.

 

여하간 Window_MenuStatus를 그대로 사용하기 때문에 현재 파티원, 그들의 정렬상태, 캐릭터 상태 등이

딱 현상황에 맞게 표시됩니다.

만약 지금 캐릭터 배치 순서가 라피스-루시아-세이-도미니크-리프 순으로 되어 있다면 이 윈도우에서도

그렇게 표시된다는 것입니다.

또한 이 때 액터 ID는 DB상의 고유 액터ID를 그대로 입력받지만 선택시 인덱스는 캐릭터 배치순서가 바뀌면

함께 바뀝니다. 즉 현재 배치순서의 고유값이 인덱스가 됩니다.




3. 변수값 조건분기로 이벤트의 처리를 작성하면 됩니다.



본 스크립트는 파티내 액터의 구성이나 배열이 불특정할 때,
액터를 선택지로 골라야 하는 경우의 제작의 편의성과 인터페이스 개선을 위해 만들어졌습니다.

B버튼으로 강제취소를 하면 꼬일 염려가 있기도 합니다. 이것을 해소하기 위해서는
액터 선택의 갱신 부분에 있는
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      $game_party.last_actor_index = @status_windows.index
      # n번 변수에 선택한 캐릭터의 선택시 인덱스(-1)를 대입한다. (초기값 48, 수정가능)
      $game_variables[48] = @status_windows.index
      # n번 변수에 선택한 캐릭터의 액터ID를 대입한다. (초기값 49, 수정가능)
      $game_variables[49] = $game_party.members[@status_windows.index].id
      Sound.play_decision
      $scene = Scene_Map.new
    end
부분을
    if Input.trigger?(Input::C)
      $game_party.last_actor_index = @status_windows.index
      # n번 변수에 선택한 캐릭터의 선택시 인덱스(-1)를 대입한다. (초기값 48, 수정가능)
      $game_variables[48] = @status_windows.index
      # n번 변수에 선택한 캐릭터의 액터ID를 대입한다. (초기값 49, 수정가능)
      $game_variables[49] = $game_party.members[@status_windows.index].id
      Sound.play_decision
      $scene = Scene_Map.new
    end
이렇게 수정해 주시면 간단합니다.








▽아래부터 복사
#==============================================================================
# ■ Scene_ActorChoice
#------------------------------------------------------------------------------
# 액터의 선택 후 선택한 액터의 ID, 선택시 인덱스를 각각 변수에 대입합니다.
#
# [사용방법]
# 이벤트커맨드 스크립트에서 $scene = Scene_ActorChoice 를 입력.
# 사용시의 윈도우는 Window_MenuStatus 를 이용했습니다.
# 변수에 액터 ID나 선택시 인덱스를 대입한 후에는 조건분기로 사용해 주십시오.
# 주의할 것은 선택시 인덱스는 실제 선택한 것이 몇 번째이든 -1을 해야 한다는 점입니다.
# 예) 선택화면에서 세 번째 캐릭터를 선택했을 때 인덱스 : 2
#
# [커스터마이즈]
# 66, 68행
# $game_variables[n]의 n 부분에 대입할 변수 ID를 기입해 주십시오.
#
# ※ 본 스크립트의 기본 베이스는 Scene_Menu를 사용했습니다.
#
#==============================================================================

class Scene_ActorChoice < Scene_Base
  #--------------------------------------------------------------------------
  # ● 오브젝트 초기화
  #     menu_index : 커멘드의 커서 초기 위치
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @status_window_index = menu_index
  end
  #--------------------------------------------------------------------------
  # ● 개시 처리
  #--------------------------------------------------------------------------
  def start
    super
    create_menu_background
    @status_windows = Window_MenuStatus.new(0, 0)
    @status_windows.active = true
    @status_windows.index = @status_window_index
  end
  #--------------------------------------------------------------------------
  # ● 종료 처리
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_menu_background
    @status_windows.dispose
  end
  #--------------------------------------------------------------------------
  # ● 업데이트
  #-------------------------------------------------------------------------- 
  def update
    super
    update_menu_background
    @status_windows.update
    update_actor_selection_achoice
  end
  #--------------------------------------------------------------------------
  # ● 액터 선택의 갱신
  #--------------------------------------------------------------------------
  def update_actor_selection_achoice
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      $game_party.last_actor_index = @status_windows.index
      # n번 변수에 선택한 캐릭터의 선택시 인덱스(-1)를 대입한다. (초기값 48, 수정가능)
      $game_variables[48] = @status_windows.index
      # n번 변수에 선택한 캐릭터의 액터ID를 대입한다. (초기값 49, 수정가능)
      $game_variables[49] = $game_party.members[@status_windows.index].id
      Sound.play_decision
      $scene = Scene_Map.new
    end
  end
end

 

########################################################
# 제작 : dest21c (창조도시 및 아방스 Evangelista)                                      #
########################################################

Comment '7'
  • ?
    꿀꿀이 2009.02.26 14:54
    멋진데요? 말그대로 강의 같은거에 사용하면 좋을듯 ㅋㅋ
  • ?
    배군 2009.02.28 15:56
    어!!!!!
    세크라멘토스 제작자 에반님이네.....
    재미있게 했어요!!
    그런데 Gloria Tibi는 어캐된거죠?
  • ?
    션사임 2009.02.28 19:36
    대단 하시다.. 학교에 써먹으면 좋을듯~~
  • ?
    zx5024 2009.02.28 23:23
    ;ㅅ; 자꾸 윈도우스킨에 눈이가잉 ㅠㅠ ㅋ
  • profile
    可わいい 2009.03.01 21:05
    저 케릭터칩우스이의 會라는 일본홈페이지가면 있는걸로 알고있는
  • ?
    배군 2009.03.08 15:54
    이제 거의 모르는사람 없을듯......
    나도쓰는중이라능 완전 구버전껄로사용중 ㅋㅋ
  • ?
    루이14세 2009.03.08 08:18
    실용화는 있겠군요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5408
297 상점 상점 할인 스크립트(변수를 이용한 물건 가격 조정) 9 달표범 2009.09.04 3185
296 스킬 발상의전환 : 스킬과 아이템의 공격횟수를 동시에 증가시키기 14 star211 2010.02.16 3179
295 그래픽 KGC_BitmapExtension : 비트맵 클래스 확장 8 file soleone 2010.07.18 3176
294 기타 디스크 체인져 VX!! (업데이트..) 30 file Tofuman 2008.12.02 3168
293 기타 요리 시스템을 도입하는 스크립트입니다. 9 file 스페나로츠 2011.08.18 3145
292 스킬 hp소모스킬 31 file DH Games 2010.02.14 3141
291 기타 커스텀 페이지 스크립트 9 file 달표범 2009.09.07 3140
290 메뉴 YERD - 시스템 옵션 5 file 훈덕 2009.11.08 3136
289 전투 전투후렙업시나오는상세창 11 작은샛별 2010.03.07 3128
288 커서 애니메이션 12 file RPGbooster 2008.10.11 3127
287 전투 Animated Battlers VX 3.4 by DerVVulfman 5 file Alkaid 2010.09.10 3117
286 전투 RPG tankentai에서의 치명적 문제점을 보완한 스크립트 2 file 톰소여동생 2010.11.03 3117
285 장비 KGC 확장 장비 화면 2009/02/15 13 시트르산 2010.09.25 3113
284 전투 Animated Battlers VX 3.5 by DerVVulfman 2 Alkaid 2011.11.02 3101
283 기타 Crissaegrim Farm BETA 1.0.0 10 Man... 2008.11.22 3094
282 기타 경험치 백분율 계산 2 허걱 2009.06.30 3093
281 기타 여러스크립트(목적은 포인트) 12 file 인생은 힘들다. 2011.08.26 3088
280 장비 남성 / 여성전용 장비 스크립트 (수정 v1.1) 16 Evangelista 2009.11.15 3070
279 전투 Actor Battler Graphics 13 아방스 2008.03.07 3065
278 타이틀/게임오버 메인 화면을 건너뛰고 시작하는 스크립트 14 아방스 2008.02.01 3064
Board Pagination Prev 1 ... 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 ... 32 Next
/ 32