Content update for NetEntities (#18935)

This commit is contained in:
metalgearsloth
2023-09-11 09:42:41 +10:00
committed by GitHub
parent 389c8d1a2c
commit 5a0fc68be2
526 changed files with 3058 additions and 2215 deletions

View File

@@ -59,8 +59,10 @@ public sealed class RadiationDebugOverlay : Overlay
handle.DrawString(_font, screenCenter, ray.Rads.ToString("F2"), 2f, Color.White);
}
foreach (var (gridUid, blockers) in ray.Blockers)
foreach (var (netGrid, blockers) in ray.Blockers)
{
var gridUid = _entityManager.GetEntity(netGrid);
if (!_mapManager.TryGetGrid(gridUid, out var grid))
continue;
@@ -82,8 +84,10 @@ public sealed class RadiationDebugOverlay : Overlay
var handle = args.ScreenHandle;
var query = _entityManager.GetEntityQuery<TransformComponent>();
foreach (var (gridUid, resMap) in resistance)
foreach (var (netGrid, resMap) in resistance)
{
var gridUid = _entityManager.GetEntity(netGrid);
if (!_mapManager.TryGetGrid(gridUid, out var grid))
continue;
if (query.TryGetComponent(gridUid, out var trs) && trs.MapID != args.MapId)
@@ -119,8 +123,10 @@ public sealed class RadiationDebugOverlay : Overlay
continue;
}
foreach (var (gridUid, blockers) in ray.Blockers)
foreach (var (netGrid, blockers) in ray.Blockers)
{
var gridUid = _entityManager.GetEntity(netGrid);
if (!_mapManager.TryGetGrid(gridUid, out var grid))
continue;
var (destTile, _) = blockers.Last();

View File

@@ -26,7 +26,7 @@ public sealed class GeigerSystem : SharedGeigerSystem
component.CurrentRadiation = state.CurrentRadiation;
component.DangerLevel = state.DangerLevel;
component.IsEnabled = state.IsEnabled;
component.User = state.User;
component.User = EnsureEntity<GeigerComponent>(state.User, uid);
component.UiUpdateNeeded = true;
}

View File

@@ -10,7 +10,7 @@ public sealed class RadiationSystem : EntitySystem
[Dependency] private readonly IOverlayManager _overlayMan = default!;
public List<RadiationRay>? Rays;
public Dictionary<EntityUid, Dictionary<Vector2i, float>>? ResistanceGrids;
public Dictionary<NetEntity, Dictionary<Vector2i, float>>? ResistanceGrids;
public override void Initialize()
{
@@ -40,15 +40,13 @@ public sealed class RadiationSystem : EntitySystem
var str = $"Radiation update: {ev.ElapsedTimeMs}ms with. Receivers: {ev.ReceiversCount}, " +
$"Sources: {ev.SourcesCount}, Rays: {ev.Rays.Count}";
Logger.Info(str);
Log.Info(str);
Rays = ev.Rays;
}
private void OnResistanceUpdate(OnRadiationOverlayResistanceUpdateEvent ev)
{
if (!_overlayMan.TryGetOverlay(out RadiationDebugOverlay? overlay))
return;
ResistanceGrids = ev.Grids;
}
}