dCinema improvements

* Visiblity and effect records
* Recorder will catch effects from behaviors
* Documentation for setting up a scene to play automatically.
* Documentation for server-side preconditions.
This commit is contained in:
wincent
2023-10-29 17:37:26 +01:00
parent e4320d3e63
commit cdc9dda3c4
14 changed files with 418 additions and 25 deletions

View File

@@ -76,6 +76,7 @@
#include "CheatDetection.h"
#include "ServerPreconditions.hpp"
#include "Scene.h"
namespace Game {
Logger* logger = nullptr;
@@ -257,8 +258,6 @@ int main(int argc, char** argv) {
PerformanceManager::SelectProfile(zoneID);
ServerPreconditions::LoadPreconditions("vanity/preconditions.xml");
Game::entityManager = new EntityManager();
Game::zoneManager = new dZoneManager();
//Load our level:
@@ -312,6 +311,16 @@ int main(int argc, char** argv) {
LOG("FDB Checksum calculated as: %s", databaseChecksum.c_str());
}
// Load server-side preconditions if they exist
const auto& preconditionsPath = Game::config->GetValue("server_preconditions_path");
if (!preconditionsPath.empty()) {
ServerPreconditions::LoadPreconditions(preconditionsPath);
}
// Load scenes for the zone
Cinema::Scene::AutoLoadScenesForZone(zoneID);
uint32_t currentFrameDelta = highFrameDelta;
// These values are adjust them selves to the current framerate should it update.
uint32_t logFlushTime = 15 * currentFramerate; // 15 seconds in frames