Nullable grid Uid (#8798)
This commit is contained in:
@@ -187,12 +187,11 @@ namespace Content.Server.Gravity.EntitySystems
|
||||
|
||||
private void UpdateGravityActive(GravityGeneratorComponent grav, bool shake)
|
||||
{
|
||||
var gridId = EntityManager.GetComponent<TransformComponent>(grav.Owner).GridEntityId;
|
||||
if (gridId == EntityUid.Invalid)
|
||||
var gridId = EntityManager.GetComponent<TransformComponent>(grav.Owner).GridUid;
|
||||
if (!_mapManager.TryGetGrid(gridId, out var grid))
|
||||
return;
|
||||
|
||||
var grid = _mapManager.GetGrid(gridId);
|
||||
var gravity = EntityManager.GetComponent<GravityComponent>(grid.GridEntityId);
|
||||
var gravity = EntityManager.GetComponent<GravityComponent>(gridId.Value);
|
||||
|
||||
if (grav.GravityActive)
|
||||
_gravitySystem.EnableGravity(gravity);
|
||||
@@ -200,7 +199,7 @@ namespace Content.Server.Gravity.EntitySystems
|
||||
_gravitySystem.DisableGravity(gravity);
|
||||
|
||||
if (shake)
|
||||
_gravityShakeSystem.ShakeGrid(gridId, gravity);
|
||||
_gravityShakeSystem.ShakeGrid(gridId.Value, gravity);
|
||||
}
|
||||
|
||||
private void OnInteractHand(EntityUid uid, GravityGeneratorComponent component, InteractHandEvent args)
|
||||
|
||||
@@ -76,7 +76,7 @@ namespace Content.Server.Gravity.EntitySystems
|
||||
foreach (var player in _playerManager.Sessions)
|
||||
{
|
||||
if (player.AttachedEntity is not {Valid: true} attached
|
||||
|| EntityManager.GetComponent<TransformComponent>(attached).GridEntityId != gridId
|
||||
|| EntityManager.GetComponent<TransformComponent>(attached).GridUid != gridId
|
||||
|| !EntityManager.HasComponent<CameraRecoilComponent>(attached))
|
||||
{
|
||||
continue;
|
||||
|
||||
@@ -16,22 +16,26 @@ namespace Content.Server.Gravity.EntitySystems
|
||||
private void HandleGravityInitialize(EntityUid uid, GravityComponent component, ComponentInit args)
|
||||
{
|
||||
// Incase there's already a generator on the grid we'll just set it now.
|
||||
var gridId = EntityManager.GetComponent<TransformComponent>(component.Owner).GridEntityId;
|
||||
var gridId = Transform(component.Owner).GridUid;
|
||||
|
||||
if (gridId == null)
|
||||
return;
|
||||
|
||||
GravityChangedMessage message;
|
||||
|
||||
foreach (var generator in EntityManager.EntityQuery<GravityGeneratorComponent>())
|
||||
{
|
||||
if (EntityManager.GetComponent<TransformComponent>(generator.Owner).GridEntityId == gridId && generator.GravityActive)
|
||||
if (Transform(generator.Owner).GridUid == gridId && generator.GravityActive)
|
||||
{
|
||||
component.Enabled = true;
|
||||
message = new GravityChangedMessage(gridId, true);
|
||||
message = new GravityChangedMessage(gridId.Value, true);
|
||||
RaiseLocalEvent(message);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
component.Enabled = false;
|
||||
message = new GravityChangedMessage(gridId, false);
|
||||
message = new GravityChangedMessage(gridId.Value, false);
|
||||
RaiseLocalEvent(message);
|
||||
}
|
||||
|
||||
@@ -43,10 +47,13 @@ namespace Content.Server.Gravity.EntitySystems
|
||||
public void EnableGravity(GravityComponent comp)
|
||||
{
|
||||
if (comp.Enabled) return;
|
||||
comp.Enabled = true;
|
||||
|
||||
var gridId = EntityManager.GetComponent<TransformComponent>(comp.Owner).GridEntityId;
|
||||
var message = new GravityChangedMessage(gridId, true);
|
||||
var gridId = Transform(comp.Owner).GridUid;
|
||||
if (gridId == null)
|
||||
return;
|
||||
|
||||
comp.Enabled = true;
|
||||
var message = new GravityChangedMessage(gridId.Value, true);
|
||||
RaiseLocalEvent(message);
|
||||
}
|
||||
|
||||
@@ -55,8 +62,11 @@ namespace Content.Server.Gravity.EntitySystems
|
||||
if (!comp.Enabled) return;
|
||||
comp.Enabled = false;
|
||||
|
||||
var gridId = EntityManager.GetComponent<TransformComponent>(comp.Owner).GridEntityId;
|
||||
var message = new GravityChangedMessage(gridId, false);
|
||||
var gridId = Transform(comp.Owner).GridUid;
|
||||
if (gridId == null)
|
||||
return;
|
||||
|
||||
var message = new GravityChangedMessage(gridId.Value, false);
|
||||
RaiseLocalEvent(message);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,11 +34,11 @@ namespace Content.Server.Gravity.EntitySystems
|
||||
public void AddAlert(AlertsComponent status)
|
||||
{
|
||||
var xform = Transform(status.Owner);
|
||||
var alerts = _alerts.GetOrNew(xform.GridEntityId);
|
||||
var alerts = _alerts.GetOrNew(xform.GridID);
|
||||
|
||||
alerts.Add(status);
|
||||
|
||||
if (_mapManager.TryGetGrid(xform.GridEntityId, out var grid))
|
||||
if (_mapManager.TryGetGrid(xform.GridUid, out var grid))
|
||||
{
|
||||
if (EntityManager.GetComponent<GravityComponent>(grid.GridEntityId).Enabled)
|
||||
{
|
||||
@@ -53,7 +53,7 @@ namespace Content.Server.Gravity.EntitySystems
|
||||
|
||||
public void RemoveAlert(AlertsComponent status)
|
||||
{
|
||||
var grid = EntityManager.GetComponent<TransformComponent>(status.Owner).GridEntityId;
|
||||
var grid = EntityManager.GetComponent<TransformComponent>(status.Owner).GridID;
|
||||
if (!_alerts.TryGetValue(grid, out var statuses))
|
||||
{
|
||||
return;
|
||||
@@ -109,7 +109,10 @@ namespace Content.Server.Gravity.EntitySystems
|
||||
}
|
||||
}
|
||||
|
||||
var newGrid = ev.Transform.GridEntityId;
|
||||
if (ev.Transform.MapID == MapId.Nullspace)
|
||||
return;
|
||||
|
||||
var newGrid = ev.Transform.GridID;
|
||||
var newStatuses = _alerts.GetOrNew(newGrid);
|
||||
|
||||
newStatuses.Add(status);
|
||||
|
||||
Reference in New Issue
Block a user