mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-12-23 14:03:34 +00:00
66 lines
3.0 KiB
C
66 lines
3.0 KiB
C
|
#pragma once
|
||
|
#include "CppScripts.h"
|
||
|
#include "BasePropertyServer.h"
|
||
|
|
||
|
class ZoneAgProperty : public BasePropertyServer {
|
||
|
public:
|
||
|
void SetGameVariables(Entity *self) override;
|
||
|
void OnStartup(Entity* self) override;
|
||
|
void OnPlayerLoaded(Entity* self, Entity* player) override;
|
||
|
void OnZoneLoadedInfo(Entity* self);
|
||
|
void OnZonePropertyRented(Entity* self, Entity* player) override;
|
||
|
void OnZonePropertyModelPlaced(Entity* self, Entity* player) override;
|
||
|
void OnZonePropertyModelPickedUp(Entity* self, Entity* player) override;
|
||
|
void OnZonePropertyModelRemoved(Entity* self, Entity* player) override;
|
||
|
void OnZonePropertyModelRemovedWhileEquipped(Entity* self, Entity* player) override;
|
||
|
void OnZonePropertyModelRotated(Entity* self, Entity* player) override;
|
||
|
void OnZonePropertyEditBegin(Entity* self) override;
|
||
|
void OnZonePropertyModelEquipped(Entity* self) override;
|
||
|
void OnZonePropertyEditEnd(Entity* self) override;
|
||
|
void OnPlayerExit(Entity* self);
|
||
|
void OnFireEventServerSide(Entity *self, Entity *sender, std::string args, int32_t param1, int32_t param2,
|
||
|
int32_t param3) override { BaseOnFireEventServerSide(self, sender, args); }
|
||
|
virtual void BaseOnFireEventServerSide(Entity* self, Entity* sender, std::string args);
|
||
|
void OnTimerDone(Entity* self, std::string timerName) override;
|
||
|
|
||
|
void BaseTimerDone(Entity *self, const std::string &timerName) override;
|
||
|
|
||
|
void PropGuardCheck(Entity* self, Entity* player) override;
|
||
|
void LoadInstance(Entity* self);
|
||
|
void LoadProperty(Entity* self);
|
||
|
|
||
|
void ProcessGroupObjects(Entity* self, std::string group);
|
||
|
|
||
|
void SpawnSpots(Entity* self) override;
|
||
|
void KillSpots(Entity* self) override;
|
||
|
void StartMaelstrom(Entity* self, Entity* player) override;
|
||
|
void SpawnCrashedRocket(Entity* self);
|
||
|
void KillCrashedRocket(Entity* self);
|
||
|
|
||
|
uint32_t RetrieveSpawnerId(Entity* self, const std::string& spawner);
|
||
|
|
||
|
void NotifyDie(Entity* self);
|
||
|
void RemovePlayerRef(Entity* self);
|
||
|
protected:
|
||
|
std::string destroyedCinematic = "DestroyMaelstrom";
|
||
|
std::vector<uint32_t> ROFTargetGroupIdTable {};
|
||
|
std::u16string LandTargetGroup = u"LandTargetGroup";
|
||
|
std::u16string SpiderScreamGroup = u"SpiderScreamGroup";
|
||
|
std::u16string ROFTargetsGroup = u"ROFTargetsGroup";
|
||
|
std::u16string SpiderEggsGroup = u"SpiderEggsGroup";
|
||
|
std::u16string RocksGroup = u"RocksGroup";
|
||
|
std::u16string ZoneVolumesGroup = u"ZoneVolumesGroup";
|
||
|
|
||
|
std::u16string EnemiesSpawner = u"EnemiesSpawner";
|
||
|
std::u16string BossSensorSpawner = u"BossSensorSpawner";
|
||
|
std::u16string LandTargetSpawner = u"LandTargetSpawner";
|
||
|
std::u16string SpiderScreamSpawner = u"SpiderScreamSpawner";
|
||
|
std::u16string ROFTargetsSpawner = u"ROFTargetsSpawner";
|
||
|
std::u16string SpiderEggsSpawner = u"SpiderEggsSpawner";
|
||
|
std::u16string RocksSpawner = u"RocksSpawner";
|
||
|
std::u16string SpiderRocketSpawner = u"SpiderRocketSpawner";
|
||
|
std::u16string MailboxSpawner = u"MailboxSpawner";
|
||
|
std::u16string LauncherSpawner = u"LauncherSpawner";
|
||
|
std::u16string InstancerSpawner = u"InstancerSpawner";
|
||
|
};
|