DarkflameServer/dScripts/ai/PETS/HydrantSmashable.cpp

22 lines
641 B
C++
Raw Normal View History

#include "HydrantSmashable.h"
#include "EntityManager.h"
#include "EntityInfo.h"
#include "GeneralUtils.h"
2022-07-28 13:39:57 +00:00
void HydrantSmashable::OnDie(Entity* self, Entity* killer) {
const auto hydrantName = self->GetVar<std::u16string>(u"hydrant");
2022-07-28 13:39:57 +00:00
LDFBaseData* data = new LDFData<std::string>(u"hydrant", GeneralUtils::UTF16ToWTF8(hydrantName));
2022-07-28 13:39:57 +00:00
EntityInfo info{};
info.lot = HYDRANT_BROKEN;
info.pos = self->GetPosition();
info.rot = self->GetRotation();
info.settings = { data };
info.spawnerID = self->GetSpawnerID();
2022-07-28 13:39:57 +00:00
auto* hydrant = EntityManager::Instance()->CreateEntity(info);
2022-07-28 13:39:57 +00:00
EntityManager::Instance()->ConstructEntity(hydrant);
}