#include "WakerObject.h"
#include "Net/UnrealNetwork.h"
#include "Components/BoxComponent.h"
#include "Interactor.h"

class ADBDPlayer;
class UPrimitiveComponent;

void AWakerObject::OnRep_EscapeDreamInteraction()
{

}

void AWakerObject::OnRep_CooldownTimer()
{

}

void AWakerObject::OnInteractionEntered(ADBDPlayer* player)
{

}

bool AWakerObject::GetIsInteracting() const
{
	return false;
}

UPrimitiveComponent* AWakerObject::GetInteractorPrimitiveComponent_Implementation() const
{
	return NULL;
}

float AWakerObject::GetInteractionPercentComplete() const
{
	return 0.0f;
}

bool AWakerObject::GetChargeComplete() const
{
	return false;
}

void AWakerObject::GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const
{
	Super::GetLifetimeReplicatedProps(OutLifetimeProps);

	DOREPLIFETIME(AWakerObject, _escapeDreamInteraction);
	DOREPLIFETIME(AWakerObject, _cooldownTimer);
}

AWakerObject::AWakerObject()
{
	this->_wakerObjectInteractionZone = CreateDefaultSubobject<UBoxComponent>(TEXT("WakerObjectInteractionZone"));
	this->_wakerObjectInteractor = CreateDefaultSubobject<UInteractor>(TEXT("WakerObjectInteractor"));
	this->_escapeDreamInteractionClass = NULL;
}
