// Project Lab - NHTV Igad
#pragma once
#include "GameStateBase.h"
#include "MiniMap.h"
#include "DefaultGameState.generated.h"

UCLASS()
class UNREALPROJECT_API ADefaultGameState : public AGameStateBase
{
	GENERATED_BODY()
	friend class ADefaultGameMode;
public:
	ADefaultGameState();
	virtual void BeginPlay() override;
	virtual void Tick(float DeltaSeconds) override;

	class ASoundEffect* CreateSoundEffect(class USoundBase* sndClass, const FVector& position);

	UPROPERTY(Replicated, BlueprintReadOnly, Category = "GameState")
	bool gameEnded;
	UPROPERTY(Replicated, BlueprintReadOnly, Category = "GameState")
	int32 gameWinningTeam;
	UPROPERTY(Replicated, BlueprintReadOnly, Category = "GameState")
	float gameRestartingIn;

	MiniMap::QuadTree<6> minimapQuadtree;
};
