// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "CoreMinimal.h"
#include "ShooterGameModeBase.h"

#if WITH_GAMELIFT
#include "GameLiftServerSDK.h"
#endif

#include "ShooterGameMode.generated.h"



struct FProcessParameters;

DECLARE_LOG_CATEGORY_EXTERN(LogShooterGameMode, Log, All);

/**
 * 
 */
UCLASS()
class FPSTEMPLATE_API AShooterGameMode : public AShooterGameModeBase
{
	GENERATED_BODY()
	
public:
	AShooterGameMode();
	
protected:
	virtual void BeginPlay() override;

private:

	void InitGameLift();
#if WITH_GAMELIFT
	void SetServerParameters(TSharedPtr<FServerParameters> OutServerParameters);
	void LogServerParameters(TSharedPtr<FServerParameters> ServerParameters);
#endif
	void ParseCommandLinePort(int32& OutPort);

	TSharedPtr<FProcessParameters> ProcessParameters;
};
