public void ProcessPacket(DysonSphereRemoveFramePacket packet, NebulaConnection conn) { using (DysonSphere_Manager.IncomingDysonSpherePacket.On()) { DysonSphereLayer dsl = GameMain.data.dysonSpheres[packet.StarIndex]?.GetLayer(packet.LayerId); if (DysonSphere_Manager.CanRemoveFrame(packet.FrameId, dsl)) { dsl.RemoveDysonFrame(packet.FrameId); } } }
public void ProcessPacket(DysonSphereRemoveShellPacket packet, NebulaConnection conn) { Log.Info($"Processing DysonSphere remove shell notification for system {GameMain.data.galaxy.stars[packet.StarIndex].name} (Index: {GameMain.data.galaxy.stars[packet.StarIndex].index})"); DysonSphere_Manager.IncomingDysonSpherePacket = true; DysonSphereLayer dsl = GameMain.data.dysonSpheres[packet.StarIndex]?.GetLayer(packet.LayerId); if (DysonSphere_Manager.CanRemoveShell(packet.ShellId, dsl)) { dsl.RemoveDysonShell(packet.ShellId); } DysonSphere_Manager.IncomingDysonSpherePacket = false; }
public void ProcessPacket(DysonSphereRemoveFramePacket packet, NebulaConnection conn) { Log.Info($"Processing DysonSphere Remove Frame notification for system {GameMain.data.galaxy.stars[packet.StarIndex].name} (Index: {GameMain.data.galaxy.stars[packet.StarIndex].index})"); using (DysonSphere_Manager.IncomingDysonSpherePacket.On()) { DysonSphereLayer dsl = GameMain.data.dysonSpheres[packet.StarIndex]?.GetLayer(packet.LayerId); if (DysonSphere_Manager.CanRemoveFrame(packet.FrameId, dsl)) { dsl.RemoveDysonFrame(packet.FrameId); } } }
public void ProcessPacket(DysonSphereAddFramePacket packet, NebulaConnection conn) { using (DysonSphere_Manager.IncomingDysonSpherePacket.On()) { DysonSphereLayer dsl = GameMain.data.dysonSpheres[packet.StarIndex]?.GetLayer(packet.LayerId); //Check if target nodes exists (if not, assume that AddNode packet is on the way) if (DysonSphere_Manager.CanCreateFrame(packet.NodeAId, packet.NodeBId, dsl)) { dsl.NewDysonFrame(packet.ProtoId, packet.NodeAId, packet.NodeBId, packet.Euler); } else { DysonSphere_Manager.QueuedAddFramePackets.Add(packet); } } }
public void ProcessPacket(DysonSphereRemoveFramePacket packet, NebulaConnection conn) { Log.Info($"Processing DysonSphere Remove Frame notification for system {GameMain.data.galaxy.stars[packet.StarIndex].name} (Index: {GameMain.data.galaxy.stars[packet.StarIndex].index})"); Player player = playerManager.GetPlayer(conn); if (player != null) { playerManager.SendPacketToOtherPlayers(packet, player); DysonSphere_Manager.IncomingDysonSpherePacket = true; DysonSphereLayer dsl = GameMain.data.dysonSpheres[packet.StarIndex]?.GetLayer(packet.LayerId); if (DysonSphere_Manager.CanRemoveFrame(packet.FrameId, dsl)) { dsl.RemoveDysonFrame(packet.FrameId); } DysonSphere_Manager.IncomingDysonSpherePacket = false; } }
public void ProcessPacket(DysonSphereAddFramePacket packet, NebulaConnection conn) { Log.Info($"Processing DysonSphere Add Frame notification for system {GameMain.data.galaxy.stars[packet.StarIndex].name} (Index: {GameMain.data.galaxy.stars[packet.StarIndex].index})"); DysonSphere_Manager.IncomingDysonSpherePacket = true; DysonSphereLayer dsl = GameMain.data.dysonSpheres[packet.StarIndex]?.GetLayer(packet.LayerId); //Check if target nodes exists (if not, assume that AddNode packet is on the way) if (DysonSphere_Manager.CanCreateFrame(packet.NodeAId, packet.NodeBId, dsl)) { dsl.NewDysonFrame(packet.ProtoId, packet.NodeAId, packet.NodeBId, packet.Euler); } else { DysonSphere_Manager.QueuedAddFramePackets.Add(packet); } DysonSphere_Manager.IncomingDysonSpherePacket = false; }
public void ProcessPacket(DysonSphereRemoveFramePacket packet, NebulaConnection conn) { Player player = playerManager.GetPlayer(conn); if (player != null) { playerManager.SendPacketToOtherPlayers(packet, player); using (DysonSphere_Manager.IncomingDysonSpherePacket.On()) { DysonSphereLayer dsl = GameMain.data.dysonSpheres[packet.StarIndex]?.GetLayer(packet.LayerId); if (DysonSphere_Manager.CanRemoveFrame(packet.FrameId, dsl)) { dsl.RemoveDysonFrame(packet.FrameId); } } } }
public void ProcessPacket(DysonSphereRemoveShellPacket packet, NebulaConnection conn) { //Log.Info($"Processing DysonSphere remove shell notification for system {GameMain.data.galaxy.stars[packet.StarIndex].name} (Index: {GameMain.data.galaxy.stars[packet.StarIndex].index})"); Player player = playerManager.GetPlayer(conn); if (player != null) { playerManager.SendPacketToOtherPlayers(packet, player); using (DysonSphere_Manager.IncomingDysonSpherePacket.On()) { DysonSphereLayer dsl = GameMain.data.dysonSpheres[packet.StarIndex]?.GetLayer(packet.LayerId); if (DysonSphere_Manager.CanRemoveShell(packet.ShellId, dsl)) { dsl.RemoveDysonShell(packet.ShellId); } } } }