Пример #1
0
 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;
        }
Пример #3
0
 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);
         }
     }
 }
Пример #5
0
        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);
                    }
                }
            }
        }