Near�s Dynamic Maps script.  You will need this is your going to use Wachunga�s random map generator.  Put this in a class above all of your other custom scripts, but under the anti-lag script if you are using that, called Dynamic Maps, then put this into it.
#================================
# ? Dynamic Maps
#================================
# ?By: Near Fantastica
# Date: 05.09.05
# Version: 1
#================================

module Map
#--------------------------------------------------------------
@map_data = {}
#--------------------------------------------------------------------------
def Map.set_map(map, map_id)
@map_data[map_id] = map
end
#--------------------------------------------------------------------------
def Map.data(map_id)
return @map_data[map_id]
end
end

class Map_Data
#--------------------------------------------------------------
attr_accessor :map_id
attr_accessor :map
attr_accessor :tileset_name
attr_accessor :autotile_names
attr_accessor :panorama_name
attr_accessor :panorama_hue
attr_accessor :fog_name
attr_accessor :fog_hue
attr_accessor :fog_opacity
attr_accessor :fog_blend_type
attr_accessor :fog_zoom
attr_accessor :fog_sx
attr_accessor :fog_sy
attr_accessor :battleback_name
attr_accessor :passages
attr_accessor :priorities
attr_accessor :terrain_tags
attr_accessor :display_x
attr_accessor :display_y
attr_accessor :need_refresh
attr_accessor :events
attr_accessor :common_events
attr_accessor :fog_ox
attr_accessor :fog_oy
attr_accessor :fog_tone
attr_accessor :fog_tone_target
attr_accessor :fog_tone_duration
attr_accessor :fog_opacity_duration
attr_accessor :fog_opacity_target
attr_accessor :scroll_direction
attr_accessor :scroll_rest
attr_accessor :scroll_speed
attr_accessor :fow_on
attr_accessor :fow_grid
attr_accessor :fow_range
#-------------------------------------------------------------
def initialize
@map_id = 0
@map = 0
@tileset_name = 0
@autotile_names = 0
@panorama_name = 0
@panorama_hue = 0
@fog_name = 0
@fog_hue = 0
@fog_opacity = 0
@fog_blend_type = 0
@fog_zoom = 0
@fog_sx = 0
@fog_sy = 0
@battleback_name = 0
@passages = 0
@priorities = 0
@terrain_tags = 0
@display_x = 0
@display_y = 0
@need_refresh = 0
@events = 0
@common_events = 0
@fog_ox = 0
@fog_oy = 0
@fog_tone = 0
@fog_tone_target = 0
@fog_tone_duration = 0
@fog_opacity_duration = 0
@fog_opacity_target = 0
@scroll_direction = 0
@scroll_rest = 0
@scroll_speed = 0
@fow_on = 0 # FOW
@fow_grid = 0 # FOW
@fow_range = 0 # FOW
end
end

class Game_Map




#--------------------------------------------------------------
def setup(map_id)
save_map(@map_id)
if Map.data(map_id) == nil
setup_map(map_id)
else
load_map(map_id)
end
end
#--------------------------------------------------------------
def setup_map(map_id)
@map_id = map_id
@map = load_data(sprintf("Data/Map%03d.rxdata", @map_id))
tileset = $data_tilesets[@map.tileset_id]
@tileset_name = tileset.tileset_name
@autotile_names = tileset.autotile_names
@panorama_name = tileset.panorama_name
@panorama_hue = tileset.panorama_hue
@fog_name = tileset.fog_name
@fog_hue = tileset.fog_hue
@fog_opacity = tileset.fog_opacity
@fog_blend_type = tileset.fog_blend_type
@fog_zoom = tileset.fog_zoom
@fog_sx = tileset.fog_sx
@fog_sy = tileset.fog_sy
@battleback_name = tileset.battleback_name
@passages = tileset.passages
@priorities = tileset.priorities
@terrain_tags = tileset.terrain_tags
@display_x = 0
@display_y = 0
@need_refresh = false
@events = {}
for i in @map.events.keys
@events[i] = Game_Event.new(@map_id, @map.events[i])
end
@common_events = {}
for i in 1...$data_common_events.size
@common_events[i] = Game_CommonEvent.new(i)
end
@fog_ox = 0
@fog_oy = 0
@fog_tone = Tone.new(0, 0, 0, 0)
@fog_tone_target = Tone.new(0, 0, 0, 0)
@fog_tone_duration = 0
@fog_opacity_duration = 0
@fog_opacity_target = 0
@scroll_direction = 2
@scroll_rest = 0
@scroll_speed = 4
end
#-----------------------------------------------------------
def load_map(map_id)
map_data = Map.data(map_id)
@map_id = map_data.map_id
@map = map_data.map
@tileset_name = map_data.tileset_name
@autotile_names = map_data.autotile_names
@panorama_name = map_data.panorama_name
@panorama_hue = map_data.panorama_hue
@fog_name = map_data.fog_name
@fog_hue = map_data.fog_hue
@fog_opacity = map_data.fog_opacity
@fog_blend_type = map_data.fog_blend_type
@fog_zoom = map_data.fog_zoom
@fog_sx = map_data.fog_sx
@fog_sy = map_data.fog_sy
@battleback_name = map_data.battleback_name
@passages = map_data.passages
@priorities = map_data.priorities
@terrain_tags = map_data.terrain_tags
@display_x = map_data.display_x
@display_y = map_data.display_y
@need_refresh = map_data.need_refresh
@events = map_data.events
@common_events = map_data.common_events
@fog_ox = map_data.fog_ox
@fog_oy = map_data.fog_oy
@fog_tone = map_data.fog_tone
@fog_tone_target = map_data.fog_tone_target
@fog_tone_duration = map_data.fog_tone_duration
@fog_opacity_duration = map_data.fog_opacity_duration
@fog_opacity_target = map_data.fog_opacity_target
@scroll_direction = map_data.scroll_direction
@scroll_rest = map_data.scroll_rest
@scroll_speed = map_data.scroll_speed
@fow_on = map_data.fow_on # FOW
@fow_grid = map_data.fow_grid # FOW
@fow_range = map_data.fow_range # FOW
end
#--------------------------------------------------------------
def save_map(map_id)
return if map_id == 0
map_data = Map_Data.new
map_data.map_id = map_id
map_data.map = @map
map_data.tileset_name = @tileset_name
map_data.autotile_names = @autotile_names
map_data.panorama_name = @panorama_name
map_data.panorama_hue = @panorama_hue
map_data.fog_name = @fog_name
map_data.fog_hue = @fog_hue
map_data.fog_opacity = @fog_opacity
map_data.fog_blend_type = @fog_blend_type
map_data.fog_zoom = @fog_zoom
map_data.fog_sx = @fog_sx
map_data.fog_sy = @fog_sy
map_data.battleback_name = @battleback_name
map_data.passages = @passages
map_data.priorities = @priorities
map_data.terrain_tags = @terrain_tags
map_data.display_x = @display_x
map_data.display_y = @display_y
map_data.need_refresh = @need_refresh
map_data.events = @events
map_data.common_events = @common_events
map_data.fog_ox = @fog_ox
map_data.fog_oy = @fog_oy
map_data.fog_tone = @fog_tone
map_data.fog_tone_target = @fog_tone_target
map_data.fog_tone_duration = @fog_tone_duration
map_data.fog_opacity_duration = @fog_opacity_duration
map_data.fog_opacity_target = @fog_opacity_target
map_data.scroll_direction = @scroll_direction
map_data.scroll_rest = @scroll_rest
map_data.scroll_speed = @scroll_speed
map_data.fow_on = @fow_on # FOW
map_data.fow_grid = @fow_grid # FOW
map_data.fow_range = @fow_range # FOW
Map.set_map(map_data, map_id)
end
end
Hosted by www.Geocities.ws

1