AzureAbyss/Source/the_twilight_abyss/TurnBasedCombat/TurnBaseCombat.h

52 lines
985 B
C++

// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "GameFramework/GameStateBase.h"
#include "TurnBaseCombat.generated.h"
/**
*
*/
UCLASS()
class THE_TWILIGHT_ABYSS_API ATurnBaseCombat : public AGameStateBase
{
GENERATED_BODY()
public:
ATurnBaseCombat();
UPROPERTY(EditDefaultsOnly)
int PlayerHealth = 100;
UPROPERTY(EditDefaultsOnly)
int EnemyHealth = 100;
UPROPERTY(EditDefaultsOnly)
int DefaultActionPoints = 3;
int ActiveActionPoints = 0;
AActor* playerActor;
AActor* enemyActor;
AActor* activeActor;
/*
TODO:
Reference Action Library
Reference Player Inventory
Reference Combat Logging System
*/
UPROPERTY(EditAnywhere)
TSubclassOf<UUserWidget> HUDWidget;
protected:
virtual void BeginPlay() override;
void UseActionPoint();
void ReuseActionPoint();
void RevertActionPoints();
private:
UPROPERTY(EditDefaultsOnly)
bool bIsPlayerTurn = true;
void SwitchTurn();
};