이동 및 탈것

대쉬금지의 변경

by rukan posted Jul 02, 2009
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

 

※ 이 스크립트를 사용하기 위해서는 『주석을 활용한 이벤트 커맨드 확장』스크립트가 필요합니다.※

 

스크립트 설명채로 번역해서 올립니다.

 

보통 대쉬금지의 설정은 맵 자체에 설정할수밖에 없습니다.

그러나 이 스크립트를 사용하시면, 맵의 설정에 관계없이 이벤트로 대쉬를 허용, 금지 할수 있게 됩니다.

예를 들어, 사다리등, 어딘가를 올라갈때에는 대쉬를 할수 없다던가 할때에 도움이 될것입니다.

 

         [이벤트의 설정방법]

『이벤트 커맨드』 → 『주석』에 다음과 같이 입력

대쉬금지   ←  대쉬를 할 수 없게 된다.

대쉬가능   ←  대쉬를 할 수 있게 된다.

 

맵이 바뀌면 대쉬금지의 설정이 맵설정의 것으로 변하게 됩니다.

맵이동후에도 대쉬금지 상태를 유지 하시려면, 맵이동 직후 대쉬금지 설정을 해주시면 됩니다.

 

출처 : http://mdc-light.jpn.org/TYPE74RX-T/index.html

 

아래부터 스크립트

 

#
#    대쉬금지의 변경(RGSS2)
#  (C)2008 TYPE74RX-T
#

#==============================================================================
# ■ Game_Map
#------------------------------------------------------------------------------
#  맵을 취급하는 클래스입니다. 스크롤이나 통행가능 판정등의 기능을 가지고 있습니다.
# 이 클래스의 인스턴스는 $game_map 에서 참조 됬습니다。
#==============================================================================

class Game_Map
  #--------------------------------------------------------------------------
  # ★ 대쉬허가
  #--------------------------------------------------------------------------
  def rx_enable_dash
    @map.disable_dashing = false
  end
  #--------------------------------------------------------------------------
  # ★ 대쉬금지
  #--------------------------------------------------------------------------
  def rx_disable_dash
    @map.disable_dashing = true
  end
end

#==============================================================================
# ■ Interpreter
#------------------------------------------------------------------------------
#  이벤트커맨드를 실행하는 Interpreter 입니다. 이 클래스는 Game_System 클래스와
#   Game_Event 클래스의 내부에서 사용됩니다.
#==============================================================================

class Game_Interpreter
  #--------------------------------------------------------------------------
  # ★ 주석
  #--------------------------------------------------------------------------
  alias rx_rgss2c1_command_108 command_108
  def command_108
    # 대쉬금지를 한다
    if @parameters[0].include?("대쉬금지")
      # 대쉬금지를 한다
      $game_map.rx_disable_dash
      # 항상(경합대책)
      return true
    end
    # 메모를 전부 소거한다
    if @parameters[0].include?("대쉬가능")
      # 대쉬를 허가한다
      $game_map.rx_enable_dash
      # 항상(경합대책)
      return true
    end
    # method를 돌려놓는다.
    rx_rgss2c1_command_108
  end
end