#include "PropertyPlatform.h" #include "RebuildComponent.h" #include "GameMessages.h" void PropertyPlatform::OnRebuildComplete(Entity *self, Entity *target) { // auto* movingPlatform = self->GetComponent(); // if (movingPlatform != nullptr) { // movingPlatform->StopPathing(); // movingPlatform->SetNoAutoStart(true); // } GameMessages::SendPlatformResync(self, UNASSIGNED_SYSTEM_ADDRESS, true, 0, 0, 0, MovementPlatformState::Stationary); } void PropertyPlatform::OnUse(Entity *self, Entity *user) { auto* rebuildComponent = self->GetComponent(); if (rebuildComponent != nullptr && rebuildComponent->GetState() == REBUILD_COMPLETED) { // auto* movingPlatform = self->GetComponent(); // if (movingPlatform != nullptr) { // movingPlatform->GotoWaypoint(1); // } GameMessages::SendPlatformResync(self, UNASSIGNED_SYSTEM_ADDRESS, true, 0, 1, 1, MovementPlatformState::Moving); self->AddCallbackTimer(movementDelay + effectDelay, [self, this]() { self->SetNetworkVar(u"startEffect", dieDelay); self->AddCallbackTimer(dieDelay, [self]() { self->Smash(); }); }); } }