mirror of
https://github.com/Milxnor/Project-Reboot-3.0.git
synced 2026-01-13 02:42:22 +01:00
Add project files.
This commit is contained in:
49
Project Reboot 3.0/World.h
Normal file
49
Project Reboot 3.0/World.h
Normal file
@@ -0,0 +1,49 @@
|
||||
#pragma once
|
||||
|
||||
#include "EngineTypes.h"
|
||||
#include "Transform.h"
|
||||
#include "Object.h"
|
||||
|
||||
struct FNetworkNotify
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
struct FActorSpawnParameters
|
||||
{
|
||||
FName Name;
|
||||
UObject* Template;
|
||||
UObject* Owner;
|
||||
UObject** Instigator;
|
||||
UObject* OverrideLevel;
|
||||
ESpawnActorCollisionHandlingMethod SpawnCollisionHandlingOverride;
|
||||
uint16 bRemoteOwned : 1;
|
||||
uint16 bNoFail : 1;
|
||||
uint16 bDeferConstruction : 1;
|
||||
uint16 bAllowDuringConstructionScript : 1;
|
||||
#if WITH_EDITOR
|
||||
uint16 bTemporaryEditorActor : 1;
|
||||
#endif
|
||||
EObjectFlags ObjectFlags;
|
||||
};
|
||||
|
||||
class UWorld : public UObject, public FNetworkNotify
|
||||
{
|
||||
public:
|
||||
static inline UObject* (*SpawnActorOriginal)(UWorld* World, UClass* Class, FTransform const* UserTransformPtr, const FActorSpawnParameters& SpawnParameters);
|
||||
|
||||
template <typename T = AActor>
|
||||
T* GetGameMode()
|
||||
{
|
||||
static auto AuthorityGameModeOffset = GetOffset("AuthorityGameMode");
|
||||
return this->Get<T*>(AuthorityGameModeOffset);
|
||||
}
|
||||
|
||||
template <typename ActorType>
|
||||
ActorType* SpawnActor(UClass* Class, FTransform UserTransformPtr = FTransform(), const FActorSpawnParameters& SpawnParameters = FActorSpawnParameters())
|
||||
{
|
||||
return (ActorType*)SpawnActorOriginal(this, Class, &UserTransformPtr, SpawnParameters);
|
||||
}
|
||||
|
||||
void Listen();
|
||||
};
|
||||
Reference in New Issue
Block a user