30 lines
809 B
C#
30 lines
809 B
C#
using UnrealSharp;
|
|
using UnrealSharp.Attributes;
|
|
using UnrealSharp.BusyRabbit;
|
|
using UnrealSharp.CoreUObject;
|
|
using UnrealSharp.Engine;
|
|
|
|
namespace Level.GameSettings;
|
|
|
|
[UClass]
|
|
public class ABusyLevelPlayerState : ALevelPlayerState
|
|
{
|
|
protected override void BeginPlay()
|
|
{
|
|
base.BeginPlay();
|
|
APlayerController pc = UGameplayStatics.GetPlayerController(0);
|
|
UGameplayStatics.GetAllActorsWithTag("Resource.Building.Campsite", out IList<AActor> FoundActors);
|
|
FVector SpawnLocation = new FVector(0, 0, 10);
|
|
if (FoundActors.Count > 0)
|
|
{
|
|
SpawnLocation = FoundActors[0].ActorLocation;
|
|
}
|
|
|
|
if(CreateRoleRoster(pc) is APawn Role)
|
|
{
|
|
pc.Possess(Role);
|
|
Role.SetActorLocation(SpawnLocation);
|
|
}
|
|
}
|
|
}
|