DarkflameServer/dScripts/ai/RACING/OBJECTS/FvRaceDragonLap2.cpp
2023-12-02 21:03:17 -06:00

28 lines
1.0 KiB
C++

#include "FvRaceDragonLap2.h"
#include "RenderComponent.h"
#include "RacingControlComponent.h"
void FvRaceDragonLap2::OnCollisionPhantom(Entity* self, Entity* target) {
if (!target) return;
const auto racingControllers = Game::entityManager->GetEntitiesByComponent(eReplicaComponentType::RACING_CONTROL);
if (racingControllers.empty()) return;
const auto* racingController = racingControllers.at(0);
auto* racingControlComponent = racingController->GetComponent<RacingControlComponent>();
if (!racingControlComponent) return;
const auto* player = racingControlComponent->GetPlayerData(target->GetObjectID());
if(!player) return;
if (player->lap == 1) {
LOG("Lap2Script");
const auto dragons = Game::entityManager->GetEntitiesInGroup("dragon");
for (const auto &dragon: dragons){
if (!dragon || dragon->GetLOT() != this->m_Dragon) continue;
auto* renderComponent = dragon->GetComponent<RenderComponent>();
if (!renderComponent) continue;
renderComponent->PlayAnimation(dragon, "lap_02");
}
Game::entityManager->DestroyEntity(self);
}
}