#include "K39TentacleSwingAbility.h"
#include "K39TentacleSwingData.h"
#include "EK39TentacleSwingResult.h"
#include "GameplayTagContainer.h"
#include "GameEventData.h"
#include "Net/UnrealNetwork.h"

void UK39TentacleSwingAbility::Server_CacheSwingData_Implementation(FK39TentacleSwingData swingData, EK39TentacleSwingResult swingResult)
{

}

void UK39TentacleSwingAbility::OnStun(const FGameplayTag gameplayTag, const FGameEventData& gameEventData)
{

}

void UK39TentacleSwingAbility::OnRep_HasBegunQuickTimeEvent()
{

}

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

	DOREPLIFETIME(UK39TentacleSwingAbility, _cachedTentacleSwingData);
	DOREPLIFETIME(UK39TentacleSwingAbility, _hasSuccessfullySwungAtLeastOnce);
	DOREPLIFETIME(UK39TentacleSwingAbility, _cachedTentacleSwingResult);
	DOREPLIFETIME(UK39TentacleSwingAbility, _recentlySwingingTimer);
	DOREPLIFETIME(UK39TentacleSwingAbility, _powerupWithdrawalAdditionalTimer);
	DOREPLIFETIME(UK39TentacleSwingAbility, _hasBegunQuickTimeEvent);
}

UK39TentacleSwingAbility::UK39TentacleSwingAbility()
{
	this->_tentacleTargetIndicatorClass = NULL;
	this->_chargeTentacleInteractionClass = NULL;
	this->_launchTentacleInteractionClass = NULL;
	this->_cancelSwingInteractionClass = NULL;
	this->_hasSuccessfullySwungAtLeastOnce = false;
	this->_cachedTentacleSwingResult = EK39TentacleSwingResult::NoResult;
	this->_stunFailSafeDuration = 2.000000;
	this->_k39KillerPowerupModeEffectClass = NULL;
	this->_powerupWithdrawalAdditionalTimer = 0.000000;
	this->_hasBegunQuickTimeEvent = false;
}
