// Fill out your copyright notice in the Description page of Project Settings. #include "ResComPlayerStateManager.h" void AResComPlayerStateManager::SetState(const TEnumAsByte newState) { if (stateManager.SetState(newState)) OnState(newState); } void AResComPlayerStateManager::ClearAllStatesBesideLast() { stateManager.ClearAllStatesBesideLast(); } void AResComPlayerStateManager::SetPreviousState() { if (stateManager.SetPrevState()) OnState(stateManager.GetState()); } const FString AResComPlayerStateManager::GetStateHistoryAsString() const { FString string; FString arrow("->"); auto history = stateManager.GetHistory(); for (auto item : history) string += arrow + (*UEnum::GetDisplayValueAsText(item).ToString()); return string; } const TEnumAsByte AResComPlayerStateManager::GetState() const { return stateManager.GetState(); }