mirror of
https://github.com/Ed94/Cog.git
synced 2026-06-13 00:01:37 -07:00
42ca1afc6a
Cog Sample: Make Area a component instead of an actor Cog Sample: Add Basic actor for Projectiles, Areas, etc... Cog Sample: Start to add Projectile Cog Sample: Start to add SpawnPrediction
60 lines
2.3 KiB
C++
60 lines
2.3 KiB
C++
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Kismet/BlueprintFunctionLibrary.h"
|
|
#include "CogSampleFunctionLibrary_Team.generated.h"
|
|
|
|
//--------------------------------------------------------------------------------------------------------------------------
|
|
UENUM(BlueprintType)
|
|
enum class ECogSampleAllegiance : uint8
|
|
{
|
|
Friendly,
|
|
Neutral,
|
|
Enemy,
|
|
};
|
|
|
|
//--------------------------------------------------------------------------------------------------------------------------
|
|
UENUM(BlueprintType, meta = (Bitflags, UseEnumValuesAsMaskValuesInEditor = "true"))
|
|
enum class ECogSampleAllegianceFilter : uint8
|
|
{
|
|
None = 0 UMETA(Hidden),
|
|
Friendly = 1 << 0,
|
|
Neutral = 1 << 1,
|
|
Enemy = 1 << 2,
|
|
};
|
|
ENUM_CLASS_FLAGS(ECogSampleAllegianceFilter);
|
|
|
|
//--------------------------------------------------------------------------------------------------------------------------
|
|
UCLASS(meta = (ScriptName = "CogSampleFunctionLibrary_Team"))
|
|
class UCogSampleFunctionLibrary_Team : public UBlueprintFunctionLibrary
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
|
|
UFUNCTION(BlueprintPure)
|
|
static int32 GetTeam(const AActor* Actor);
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
static void SetTeam(AActor* Actor, int32 Value);
|
|
|
|
UFUNCTION(BlueprintPure)
|
|
static ECogSampleAllegiance GetTeamsAllegiance(int32 Team1, int32 Team2);
|
|
|
|
UFUNCTION(BlueprintPure)
|
|
static ECogSampleAllegiance GetActorsAllegiance(const AActor* Actor1, const AActor* Actor2);
|
|
|
|
UFUNCTION(BlueprintPure)
|
|
static bool MatchAllegiance(const AActor* Actor1, const AActor* Actor2, UPARAM(meta = (Bitmask, BitmaskEnum = "/Script/CogSample.ECogSampleAllegianceFilter")) int32 AllegianceFilter);
|
|
|
|
UFUNCTION(BlueprintPure)
|
|
bool MatchAllegianceFromTeams(int32 Team1, int32 Team2, UPARAM(meta = (Bitmask, BitmaskEnum = "/Script/CogSample.ECogSampleAllegianceFilter")) int32 AllegianceFilter);
|
|
|
|
UFUNCTION(BlueprintPure)
|
|
static bool MatchAllegianceBetweenTeamAndActor(int32 Team, const AActor* Actor, UPARAM(meta = (Bitmask, BitmaskEnum = "/Script/CogSample.ECogSampleAllegianceFilter")) int32 AllegianceFilter);
|
|
|
|
UFUNCTION(BlueprintPure)
|
|
static bool MatchAllegianceFilter(ECogSampleAllegiance Allegiance, UPARAM(meta = (Bitmask, BitmaskEnum = "/Script/CogSample.ECogSampleAllegianceFilter")) int32 AllegianceFilter);
|
|
|
|
};
|