mirror of
https://github.com/OpenFusionProject/OpenFusion.git
synced 2024-11-05 15:00:06 +00:00
dongresource
5c1bb0acc9
The server administrator must now specify which patches they want the server to load (if deviating from the defaults). There are multiple reasons for this: * It's useful to be able to pick and choose which patches you want to boot the server with; without having to move the directories in and out of the patch directory * This way, we can have different default patches for different builds of the game (104 vs 1013) * ...ergo, it's easier to rapidly switch builds without having to rearrange your workspace to properly run them * This also allows us to remove the std::filesystem stuff, which has spotty compatibility with slightly older (but still current) versions of the compilers
28 lines
930 B
C++
28 lines
930 B
C++
#pragma once
|
|
|
|
#include <map>
|
|
|
|
#include "NPCManager.hpp"
|
|
|
|
// these are added to the NPC's static key to avoid collisions
|
|
const int NPC_ID_OFFSET = 1;
|
|
const int MOB_ID_OFFSET = 10000;
|
|
const int MOB_GROUP_ID_OFFSET = 20000;
|
|
|
|
// typedef for JSON object because I don't want to type nlohmann::json every time
|
|
typedef nlohmann::json json;
|
|
|
|
namespace TableData {
|
|
extern std::map<int32_t, std::vector<Vec3>> RunningSkywayRoutes;
|
|
extern std::map<int32_t, int> RunningNPCRotations;
|
|
extern std::map<int32_t, int> RunningNPCMapNumbers;
|
|
extern std::unordered_map<int32_t, std::pair<BaseNPC*, std::vector<BaseNPC*>>> RunningNPCPaths; // player ID -> following NPC
|
|
extern std::vector<NPCPath> FinishedNPCPaths; // NPC ID -> path
|
|
extern std::map<int32_t, BaseNPC*> RunningMobs;
|
|
extern std::map<int32_t, BaseNPC*> RunningGroups;
|
|
extern std::map<int32_t, BaseNPC*> RunningEggs;
|
|
|
|
void init();
|
|
void flush();
|
|
}
|