private void GridBroadcastersFromPlayer(MyCubeGrid grid, MyEntity interactedEntityRepresentative, long playerId, List <MyDataBroadcaster> output) { MyDebug.AssertDebug(output.Count == 0, "Output was not cleared before use!"); var gridBroadcasters = MyRadioBroadcaster.GetGridRelayedBroadcasters(grid, playerId); foreach (var broadcaster in gridBroadcasters) { if (GetBroadcasterParentEntity(broadcaster) == interactedEntityRepresentative) { output.Add(broadcaster); } } }
private void GridBroadcastersFromPlayer(MyCubeGrid grid, List <MyDataBroadcaster> output) { MyDebug.AssertDebug(output.Count == 0, "Output was not cleared before use!"); var gridBroadcasters = MyRadioBroadcaster.GetGridRelayedBroadcasters(grid); var controlledObjectId = m_openInventoryInteractedEntityRepresentative.EntityId; foreach (var broadcaster in gridBroadcasters) { if (MyAntennaSystem.Static.GetBroadcasterParentEntityId(broadcaster) == controlledObjectId) { output.Add(broadcaster); } } }
private void GridBroadcastersFromPlayer(MyCubeGrid grid, List <MyDataBroadcaster> output) { MyDebug.AssertDebug(output.Count == 0, "Output was not cleared before use!"); var gridBroadcasters = MyRadioBroadcaster.GetGridRelayedBroadcasters(grid); var controlledGrid = m_openInventoryInteractedEntityRepresentative as MyCubeGrid; var controlledObjectGroup = controlledGrid != null?MyCubeGridGroups.Static.Logical.GetGroup(controlledGrid) : null; foreach (var broadcaster in gridBroadcasters) { var ent = MyAntennaSystem.Static.GetBroadcasterParentEntity(broadcaster); var broadcasterGrid = ent as MyCubeGrid; if (broadcasterGrid != null && controlledObjectGroup != null && MyCubeGridGroups.Static.Logical.GetGroup(broadcasterGrid) == controlledObjectGroup) { output.Add(broadcaster); continue; } if (ent == m_openInventoryInteractedEntityRepresentative) { output.Add(broadcaster); } } }