using System; using Photon.Deterministic; using Quantum.Task; namespace Quantum { public unsafe class PlayerSystem : SystemSignalsOnly, ISignalOnPlayerDataSet { public void OnPlayerDataSet(Frame frame, PlayerRef player) { RuntimePlayer data = frame.GetPlayerData(player); EntityRef traktorEntity = frame.Create(data.TraktorPrototype); Traktor* traktor = frame.Unsafe.GetPointer(traktorEntity); if (frame.Unsafe.TryGetPointer(traktorEntity, out var transform) && frame.Unsafe.TryGetPointer(traktor->Sphere, out var sphereTransform)) { transform->Position = new FPVector3(player * 2, 0, 0); sphereTransform->Position = transform->Position; } if (frame.Unsafe.TryGetPointer(traktorEntity, out var controller)) { controller->Player = player; } } } }