You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.2 KiB
52 lines
1.2 KiB
// Fill out your copyright notice in the Description page of Project Settings.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "GameFramework/PlayerController.h"
|
|
#include "MPlayerController.generated.h"
|
|
|
|
/**
|
|
*
|
|
*/
|
|
class UUserWidget;
|
|
class AMWeapon;
|
|
|
|
UCLASS()
|
|
class MECHDEFENCE_API AMPlayerController : public APlayerController
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
AMPlayerController();
|
|
|
|
UFUNCTION(BlueprintImplementableEvent, Category = "PlayerController")
|
|
void OnGameOver();
|
|
|
|
UFUNCTION(BlueprintImplementableEvent, Category = "PlayerController")
|
|
void OnLevelComplete();
|
|
|
|
UFUNCTION(BlueprintImplementableEvent)
|
|
void HandleTargetHit(AMWeapon* Weapon, AActor* Target, AActor* Shooter);
|
|
|
|
protected:
|
|
UPROPERTY(EditDefaultsOnly, Category = "UI")
|
|
TSubclassOf<UUserWidget> PauseWidgetClass;
|
|
|
|
UPROPERTY(EditDefaultsOnly, Category = "UI")
|
|
TSubclassOf<UUserWidget> HudWidgetClass;
|
|
|
|
void SetupInputComponent() override;
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void TogglePause();
|
|
|
|
void BeginPlay() override;
|
|
|
|
UPROPERTY(BlueprintReadOnly, Category = "UI")
|
|
UUserWidget* PauseWidget;
|
|
|
|
UPROPERTY(BlueprintReadOnly, Category = "UI")
|
|
UUserWidget* HudWidget;
|
|
|
|
};
|
|
|