Add project files.

This commit is contained in:
Milxnor
2023-03-04 15:06:07 -05:00
commit 039731eb68
200 changed files with 32320 additions and 0 deletions

View 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();
};