DarkflameServer/dScripts/MonCoreNookDoors.cpp
David Markowitz 8cdb388915
Optimize scripts for faster compilation (#597)
* Implement Precompiled Headers

* First volume of optimizations

* Scripts A-B

Gonna be doing this in alphabetical order now.

* C Scripts and remove unneeded includes from base cppscripts header

Remove the MissionComponent and Loot includes from all base scripts and place their needed includes in the respective scripts.

* D scripts

* F scripts

* F scripts 2

Finish up removing extraneous includes from scripts that start with the letter F

* G scripts

Removing extraneous includes from scripts that start with the letter G

* I scripts

Removing extraneous includes from scripts that start with the letter I

* M-Z scripts

Removing extraneous includes from scripts that start with the letter M-Z

* Revert "Implement Precompiled Headers"

This reverts commit d79d8d4991.

* Revert "Revert "Implement Precompiled Headers""

This reverts commit 0597faf308.

* Add back in PCH

Add back in PCH

* Fix CMake

Whitespace

Remove duplicate file glob

Remove newline
2022-07-04 23:00:10 -07:00

46 lines
918 B
C++

#include "MonCoreNookDoors.h"
#include "dZoneManager.h"
void MonCoreNookDoors::OnStartup(Entity* self)
{
SpawnDoor(self);
}
void MonCoreNookDoors::SpawnDoor(Entity* self)
{
const auto doorNum = self->GetVarAsString(u"number");
if (doorNum.empty())
{
return;
}
const auto spawners = dZoneManager::Instance()->GetSpawnersByName("MonCoreNookDoor0" + doorNum);
if (spawners.empty())
{
return;
}
auto* spawner = spawners[0];
spawner->Reset();
spawner->Activate();
}
void MonCoreNookDoors::OnFireEventServerSide(Entity *self, Entity *sender, std::string args, int32_t param1, int32_t param2, int32_t param3)
{
if (args == "DoorSmashed")
{
self->AddTimer("RespawnDoor", 30);
}
}
void MonCoreNookDoors::OnTimerDone(Entity* self, std::string timerName)
{
if (timerName == "RespawnDoor")
{
SpawnDoor(self);
}
}