Refactoring to move things from GameMode into UlxEngineWrapper subsystem.

This commit is contained in:
2026-02-27 17:00:46 -05:00
parent 0aea1e0798
commit 7bb4854844
6 changed files with 99 additions and 119 deletions

View File

@@ -5,8 +5,6 @@
#include "CoreMinimal.h"
#include "Engine/HitResult.h"
#include "GameFramework/GameModeBase.h"
#include "lpx-enginewrapper.hpp"
#include "StreamBuffer.h"
#include "LuprexSockets.h"
#include "TriggeredTask.h"
#include "BreakToDebugger.h"
@@ -66,13 +64,6 @@ public:
void LookAtChanged();
// The Lua Call Assembly Buffer. Used by
// UlxLuaCallLibrary to build up a call across
// multiple UFUNCTION invocations.
//
FlxStreamBuffer &GetLuaCallBuffer() { return LuaCallBuffer; }
// Transfer console output from the Luprex engine to unreal.
void UpdateConsoleOutput();
@@ -104,24 +95,12 @@ public:
UPROPERTY()
FHitResult CurrentLookAt;
bool MustCallLookAtChanged;
bool MustCallLookAtChanged = false;
// The sensitivity level at which a log message triggers a debugger breakpoint.
UPROPERTY(EditAnywhere, Category="Debugging Tools")
ElxBreakToDebuggerThreshold BreakToDebuggerLogVerbosity;
// The Luprex EngineWrapper, with a Mutex to protect it.
// To access it, construct a FlxLockedWrapper.
//
FlxLockableWrapper LockableWrapper;
// Get the LockableWrapper.
//
FlxLockableWrapper& GetLockableWrapper() { return LockableWrapper; }
// The Lua Call Assembly Buffer.
FlxStreamBuffer LuaCallBuffer;
// This utility runs the luprex update and socket update in a thread.
FTriggeredTask LuprexUpdateTask;
@@ -129,19 +108,19 @@ public:
TUniquePtr<FlxSockets> Sockets;
// True if 'BeginPlay' has been successfully completed.
bool Playing;
bool Playing = false;
// This is always true unless you use the debugger to set it to false.
bool TickEnabled;
bool TickEnabled = true;
// Current Player ID
int64 PlayerId;
int64 PlayerId = 0;
// Amount of elapsed time since BeginPlay.
float EngineSeconds;
float EngineSeconds = 0.0f;
// When do we next rotate the cube.
float NextRotateCube;
float NextRotateCube = 1.0f;
// These allow us to pre-tick and post-tick.
FDelegateHandle OnWorldPreActorTickHandle;