mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-12-26 15:33:34 +00:00
691a42ba20
Add wandering vendor script Update proximity monitors to move with their respective entityies
26 lines
897 B
C++
26 lines
897 B
C++
#include "WblRobotCitizen.h"
|
|
#include "MovementAIComponent.h"
|
|
#include "RenderComponent.h"
|
|
|
|
void WblRobotCitizen::OnStartup(Entity* self) {
|
|
auto movementAIComponent = self->GetComponent<MovementAIComponent>();
|
|
if (!movementAIComponent) return;
|
|
movementAIComponent->Resume();
|
|
}
|
|
|
|
void WblRobotCitizen::OnUse(Entity* self, Entity* user) {
|
|
auto movementAIComponent = self->GetComponent<MovementAIComponent>();
|
|
if (!movementAIComponent) return;
|
|
movementAIComponent->Pause();
|
|
auto face = NiQuaternion::LookAt(self->GetPosition(), user->GetPosition());
|
|
self->SetRotation(face);
|
|
auto timer = RenderComponent::PlayAnimation(self, "wave");
|
|
self->AddTimer("animation time", timer);
|
|
}
|
|
|
|
void WblRobotCitizen::OnTimerDone(Entity* self, std::string timerName) {
|
|
auto movementAIComponent = self->GetComponent<MovementAIComponent>();
|
|
if (!movementAIComponent) return;
|
|
movementAIComponent->Resume();
|
|
}
|