07-23-2017, 05:21 PM
This is a
BIG BUMP!
That's not really a bump
Today, I did some more work. But nothing has changed within the Big Maps script itself. Instead, this update is to reveal the first script adaptability patch.
Until now, Near Fantastica's Dynamic Maps script did not function with Big Maps. This because Near Fantastica's script read the map ID of the 'individual' map your player starts his/her game and uses it as a key when teleporting to a different map. And if you returned to a big map, you may not be using the same map ID upon return. Yeah. Sounds kinda technical, doesn't it? Needless to say, in a Big Map where you might have 9 individual maps, it may be trying to load from the wrong map ID. THAT was the problem.
Thus, the need for a new patch.
The patch takes the map_id in question, and now looks to see if it is part of a 'Big Map'. If it isn't a big map, then it's business as usual. But if it is part of a big map, then it does a bit of substitution. It will use the very first map ID in your list of Big Maps for the whole saving/loading process.
And thus, problem solved!
The patch is now in the main post of this topic, but is also visible below. Just paste it below 'Dynamic Maps' to use:
Code:
#==============================================================================
# ** BIG MAPS / Dynamic Map Patch
#------------------------------------------------------------------------------
# by DerVVulfman
# version 1.0
# 07-23-2017 (mm/dd/yyyy)
# RGSS / RPGMaker XP
#==============================================================================
#
# A simple patch that allows the Map module defined by Near Fantastica's
# dynamic maps system to recognize Big Maps. If a Big Map is recognized,
# the patch will use the 1st defined map in the Big Map as its data index.
#
# Just paste this below 'Dynamic Maps' so the Map module is replaced.
#
#==============================================================================
module Map
#--------------------------------------------------------------------------
# * Set Map
# map : map data
# map_id : Map ID
#--------------------------------------------------------------------------
def Map.set_map(map, map_id)
map_list = []
map_key = BigMaps.map_test(map_id)
unless map_key.nil?
map_list = BigMaps::Map[map_key]
map_id = map_list[1][0]
end
@map_data[map_id] = map
end
#--------------------------------------------------------------------------
# * Get Map
# map_id : Map ID
#--------------------------------------------------------------------------
def Map.data(map_id)
map_list = []
map_key = BigMaps.map_test(map_id)
unless map_key.nil?
map_list = BigMaps::Map[map_key]
map_id = map_list[1][0]
end
return @map_data[map_id]
end
end