mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-08 05:34:58 +00:00
Merged Events and EncounterModifier into module EventHandlers
This commit is contained in:
@@ -643,27 +643,27 @@ module RandomDungeonGenerator
|
||||
end
|
||||
end
|
||||
|
||||
Events.onMapCreate += proc { |_sender, e|
|
||||
mapID = e[0]
|
||||
map = e[1]
|
||||
next if !GameData::MapMetadata.try_get(mapID)&.random_dungeon
|
||||
# this map is a randomly generated dungeon
|
||||
dungeon = RandomDungeonGenerator::Dungeon.new(map.width, map.height)
|
||||
dungeon.generate
|
||||
dungeon.generateMapInPlace(map)
|
||||
roomtiles = []
|
||||
# Reposition events
|
||||
map.events.values.each do |event|
|
||||
EventHandlers.add(:on_game_map_setup, :random_dungeon,
|
||||
proc { |map_id, map, _tileset_data|
|
||||
next if !GameData::MapMetadata.try_get(map_id)&.random_dungeon
|
||||
# this map is a randomly generated dungeon
|
||||
dungeon = RandomDungeonGenerator::Dungeon.new(map.width, map.height)
|
||||
dungeon.generate
|
||||
dungeon.generateMapInPlace(map)
|
||||
roomtiles = []
|
||||
# Reposition events
|
||||
map.events.values.each do |event|
|
||||
tile = RandomDungeonGenerator.pbRandomRoomTile(dungeon, roomtiles)
|
||||
if tile
|
||||
event.x = tile[0]
|
||||
event.y = tile[1]
|
||||
end
|
||||
end
|
||||
# Override transfer X and Y
|
||||
tile = RandomDungeonGenerator.pbRandomRoomTile(dungeon, roomtiles)
|
||||
if tile
|
||||
event.x = tile[0]
|
||||
event.y = tile[1]
|
||||
$game_temp.player_new_x = tile[0]
|
||||
$game_temp.player_new_y = tile[1]
|
||||
end
|
||||
end
|
||||
# Override transfer X and Y
|
||||
tile = RandomDungeonGenerator.pbRandomRoomTile(dungeon, roomtiles)
|
||||
if tile
|
||||
$game_temp.player_new_x = tile[0]
|
||||
$game_temp.player_new_y = tile[1]
|
||||
end
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user