#pragma once #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 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"; };