mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2025-08-04 09:44:10 +00:00
Public release of the DLU server code!
Have fun!
This commit is contained in:
59
dScripts/BaseRandomServer.h
Normal file
59
dScripts/BaseRandomServer.h
Normal file
@@ -0,0 +1,59 @@
|
||||
#pragma once
|
||||
#include "CppScripts.h"
|
||||
#include "Entity.h"
|
||||
#include "dCommonVars.h"
|
||||
|
||||
class BaseRandomServer
|
||||
{
|
||||
public:
|
||||
struct ZoneEntry
|
||||
{
|
||||
LOT lot;
|
||||
int32_t num;
|
||||
std::string name;
|
||||
};
|
||||
|
||||
struct Zone
|
||||
{
|
||||
std::vector<BaseRandomServer::ZoneEntry> entries;
|
||||
int32_t iChance;
|
||||
};
|
||||
|
||||
void BaseStartup(Entity* self);
|
||||
void CheckEvents(Entity* self);
|
||||
void SpawnMapZones(Entity* self);
|
||||
void SpawnSection(Entity* self, const std::string& sectionName, float iMultiplier);
|
||||
void SetSpawnerNetwork(Entity* self, const std::string& spawnerName, int32_t spawnNum, LOT spawnLOT);
|
||||
BaseRandomServer::Zone* GetRandomLoad(Entity* self, const std::string& sectionName);
|
||||
void SpawnersUp(Entity* self);
|
||||
void SpawnersDown(Entity* self);
|
||||
void BaseOnTimerDone(Entity* self, const std::string& timerName);
|
||||
|
||||
void NotifySpawnerOfDeath(Entity* self, Spawner* spawner);
|
||||
void NamedEnemyDeath(Entity* self, Spawner* spawner);
|
||||
|
||||
void SpawnNamedEnemy(Entity* self);
|
||||
|
||||
void NamedTimerDone(Entity* self, const std::string& timerName);
|
||||
|
||||
protected:
|
||||
std::vector<int32_t> namedMobs = {
|
||||
11988, // Ronin
|
||||
11984, // Spiderling
|
||||
12654, // Horsemen
|
||||
11986, // Admiral
|
||||
11983, // Mech
|
||||
11982, // Stromling
|
||||
11985 // Pirate
|
||||
};
|
||||
std::map<std::string, float> sectionMultipliers = {};
|
||||
int32_t mobDeathResetNumber = 30;
|
||||
std::string zonePrefix = "em";
|
||||
int32_t zoneNameConst = 2;
|
||||
int32_t sectionIDConst = 3;
|
||||
std::string zoneName = "fin";
|
||||
std::vector<Zone> zones = {};
|
||||
int32_t changeNum = 15;
|
||||
int32_t respawnTime = 80;
|
||||
std::vector<Spawner*> spawnersWatched;
|
||||
};
|
Reference in New Issue
Block a user