변수/스위치

맵에 변수와 스위치 설정하기..

by 정의로운녀석 posted Jul 22, 2008
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄
#==============================================================================
# ** Spriteset_Map
#------------------------------------------------------------------------------
#  This class brings together map screen sprites, tilemaps, etc. It's used
# within the Scene_Map class.
#==============================================================================
  class Spriteset_Map
  #--------------------------------------------------------------------------
  # * Constant Variables
  #--------------------------------------------------------------------------
  MAP_VAR_SWITCH = {
    # map_id => [{var_id => var_data, }, {switch_id => switch_data, }],
    1 => [{1 => 'One', }, {1 => true, }],
    2 => [{2 => 'Two'', }, {1 => false, }],
  }
  #--------------------------------------------------------------------------
  # * Alias Methods
  #--------------------------------------------------------------------------
  alias just_variablefidget_spriteset_map_initialize initialize
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    just_variablefidget_spriteset_map_initialize
   
    # Make sure these guys exist.
    return if $game_variables.nil? || $game_switches.nil? ||
      MAP_VAR_SWITCH[$game_map.map_id].nil?
     
    MAP_VAR_SWITCH[$game_map.map_id][0].each do |var_id, var_data|
      $game_variables[var_id] = var_data
    end
     
    MAP_VAR_SWITCH[$game_map.map_id][1].each do |switch_id, switch_data|
      $game_switches[switch_id] = switch_data
    end
  end
end

맵마다 변수와 스위치를 조정합니다.


사용방법
"맵아이디 번호" => [("변수번호" => '대입수',), ("스위치번호" => true / false, )],

식으로 사용합니다.

위쪽에 예시로 적혀있는건, 맵아이디1번에는 1번의 변수에 one을 대입, 1번의 스위치를 켜고 맵아이디2번에서는 1번에 변수에 two를 대입, 1번의 스위치를 끕니다.

스크립트는 rmxp에서 개인질문으로 얻게된건데, 쓰지 않게 되버려서 홈페이지에 올려둡니다.