mirror of
https://github.com/misternebula/quantum-space-buddies.git
synced 2025-02-20 15:41:01 +00:00
shit idk
This commit is contained in:
parent
6adb0b2ffb
commit
0194c6522d
@ -100,6 +100,8 @@ namespace QSB.SectorSync
|
||||
return;
|
||||
}
|
||||
|
||||
DebugLog.DebugWrite($"LOCAL Change {transformSync.AttachedObject.name} to sector {closestSector.Name}");
|
||||
|
||||
transformSync.SetReferenceSector(closestSector);
|
||||
}
|
||||
}
|
||||
|
@ -122,6 +122,8 @@ namespace QSB.SectorSync
|
||||
return ordered.FirstOrDefault();
|
||||
}
|
||||
|
||||
internal static object CalculateSectorScore(QSBSector x, Transform transform, object getValue) => throw new System.NotImplementedException();
|
||||
|
||||
public static float CalculateSectorScore(QSBSector sector, Transform trans, OWRigidbody rigidbody)
|
||||
{
|
||||
var distance = Vector3.Distance(sector.Position, trans.position); // want to be small
|
||||
|
@ -141,6 +141,11 @@ namespace QSB.Syncs.TransformSync
|
||||
|
||||
AttachedObject = HasAuthority ? InitLocalTransform() : InitRemoteTransform();
|
||||
_isInitialized = true;
|
||||
|
||||
if (QSBCore.DebugMode)
|
||||
{
|
||||
DebugBoxManager.CreateBox(AttachedObject.transform, 0, _logName);
|
||||
}
|
||||
}
|
||||
|
||||
public override void SerializeTransform(QNetworkWriter writer)
|
||||
@ -319,7 +324,7 @@ namespace QSB.Syncs.TransformSync
|
||||
return Vector3.SmoothDamp(currentPosition, targetPosition, ref _positionSmoothVelocity, SmoothTime);
|
||||
}
|
||||
|
||||
private void OnRenderObject()
|
||||
protected virtual void OnRenderObject()
|
||||
{
|
||||
if (!QSBCore.WorldObjectsReady
|
||||
|| !QSBCore.DebugMode
|
||||
@ -340,7 +345,7 @@ namespace QSB.Syncs.TransformSync
|
||||
Popcron.Gizmos.Line(_intermediaryTransform.GetTargetPosition_Unparented(), AttachedObject.transform.position, Color.red);
|
||||
var color = HasMoved() ? Color.green : Color.yellow;
|
||||
Popcron.Gizmos.Cube(AttachedObject.transform.position, AttachedObject.transform.rotation, Vector3.one / 2, color);
|
||||
Popcron.Gizmos.Line(AttachedObject.transform.position, ReferenceTransform.position, Color.cyan);
|
||||
//Popcron.Gizmos.Line(AttachedObject.transform.position, ReferenceTransform.position, Color.cyan);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,10 @@
|
||||
using QSB.SectorSync;
|
||||
using OWML.Utils;
|
||||
using QSB.SectorSync;
|
||||
using QSB.SectorSync.WorldObjects;
|
||||
using QSB.Utility;
|
||||
using QSB.WorldSync;
|
||||
using QuantumUNET.Transport;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
|
||||
namespace QSB.Syncs.TransformSync
|
||||
@ -80,6 +83,7 @@ namespace QSB.Syncs.TransformSync
|
||||
|
||||
if (sector != ReferenceSector)
|
||||
{
|
||||
DebugLog.DebugWrite($"DESERAILIZE new sector ({ReferenceSector.Name} to {sector.Name})");
|
||||
SetReferenceSector(sector);
|
||||
}
|
||||
|
||||
@ -106,8 +110,35 @@ namespace QSB.Syncs.TransformSync
|
||||
|
||||
public void SetReferenceSector(QSBSector sector)
|
||||
{
|
||||
DebugLog.DebugWrite($"{Player.PlayerId}.{GetType().Name} set reference sector to {sector.Name}");
|
||||
ReferenceSector = sector;
|
||||
SetReferenceTransform(sector?.Transform);
|
||||
}
|
||||
|
||||
protected override void OnRenderObject()
|
||||
{
|
||||
if (!QSBCore.WorldObjectsReady
|
||||
|| !QSBCore.DebugMode
|
||||
|| !QSBCore.ShowLinesInDebug
|
||||
|| !IsReady
|
||||
|| ReferenceTransform == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
base.OnRenderObject();
|
||||
|
||||
var allSectorsCurrentlyIn = SectorSync.SectorList;
|
||||
var allSectorScores = allSectorsCurrentlyIn.Select(x => QSB.SectorSync.SectorSync.CalculateSectorScore(x, AttachedObject.transform, SectorSync.GetValue<OWRigidbody>("_attachedOWRigidbody")));
|
||||
|
||||
foreach (var sector in allSectorsCurrentlyIn)
|
||||
{
|
||||
var sectorScore = QSB.SectorSync.SectorSync.CalculateSectorScore(sector, AttachedObject.transform, SectorSync.GetValue<OWRigidbody>("_attachedOWRigidbody"));
|
||||
|
||||
var mappedScore = sectorScore.Map(allSectorScores.Min(), allSectorScores.Max(), 0, 1);
|
||||
Popcron.Gizmos.Line(AttachedObject.transform.position, sector.Transform.position, Color.Lerp(Color.green, Color.red, mappedScore));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -30,9 +30,9 @@ namespace QSB.Utility
|
||||
newBox.transform.localPosition = new Vector3(0, vertOffset, 0);
|
||||
newBox.transform.rotation = parent.rotation;
|
||||
var lookAt = newBox.AddComponent<FaceActiveCamera>();
|
||||
lookAt.SetValue("_useLookAt", false);
|
||||
lookAt.SetValue("_localFacingVector", Vector3.back);
|
||||
lookAt.SetValue("_localRotationAxis", Vector3.up);
|
||||
lookAt.SetValue("_useLookAt", true);
|
||||
//lookAt.SetValue("_localFacingVector", Vector3.back);
|
||||
//lookAt.SetValue("_localRotationAxis", Vector3.up);
|
||||
newBox.GetComponent<Text>().text = text;
|
||||
newBox.AddComponent<ZOverride>();
|
||||
newBox.SetActive(true);
|
||||
|
@ -53,11 +53,14 @@ namespace QSB.Utility
|
||||
offset2 += _debugLineSpacing;
|
||||
GUI.Label(new Rect(320, offset2, 400f, 20f), $" - L.Pos : {networkTransform.transform.localPosition}");
|
||||
offset2 += _debugLineSpacing;
|
||||
GUI.Label(new Rect(320, offset2, 400f, 20f), $" - W.Pos : {sector.Transform.InverseTransformPoint(networkTransform.AttachedObject.position)}");
|
||||
offset2 += _debugLineSpacing;
|
||||
GUI.Label(new Rect(320, offset2, 400f, 20f), $" - Sector : {(sector == null ? "NULL" : sector.Name)}");
|
||||
offset2 += _debugLineSpacing;
|
||||
var probeSync = BaseTransformSync.GetPlayers<PlayerProbeSync>(player);
|
||||
if (probeSync == default)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var probeSector = probeSync.ReferenceSector;
|
||||
GUI.Label(new Rect(320, offset2, 400f, 20f), $" - Probe Sector : {(probeSector == null ? "NULL" : probeSector.Name)}");
|
||||
offset2 += _debugLineSpacing;
|
||||
|
@ -4,6 +4,6 @@
|
||||
"defaultServerIP": "localhost",
|
||||
"port": 7777,
|
||||
"debugMode": true,
|
||||
"showLinesInDebug": false
|
||||
"showLinesInDebug": true
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user