35 lines
No EOL
993 B
C#
35 lines
No EOL
993 B
C#
using System.Reflection;
|
|
using DataLoader;
|
|
using Harmony;
|
|
using JetBrains.Annotations;
|
|
using RobocraftX.Common;
|
|
using RobocraftX.CR.MachineEditing;
|
|
using RobocraftX.StateSync;
|
|
using Svelto.ECS;
|
|
using Unity.Entities;
|
|
using UnityEngine;
|
|
|
|
namespace GCMC
|
|
{
|
|
[HarmonyPatch]
|
|
[UsedImplicitly]
|
|
public class PlaceBlockPatch
|
|
{
|
|
static void Postfix(EnginesRoot enginesRoot, ref StateSyncRegistrationHelper stateSyncReg, bool isAuthoritative)
|
|
{
|
|
if (isAuthoritative)
|
|
{
|
|
stateSyncReg.AddDeterministicEngine(new CubePlacerEngine());
|
|
Debug.Log($"Added Minecraft world import engine");
|
|
}
|
|
else
|
|
Debug.Log("Not authoritative, not adding MC engine");
|
|
}
|
|
|
|
static MethodBase TargetMethod(HarmonyInstance instance)
|
|
{
|
|
return typeof(MainEditingCompositionRoot).GetMethod("Compose",
|
|
BindingFlags.Public | BindingFlags.Static);
|
|
}
|
|
}
|
|
} |