Example #1
0
        private void HandleUnitRepositioned(UnitRepositionedPacket packet)
        {
            if (packet.FromLocation is BenchLocation)
            {
                var benchFromLocation = (BenchLocation)packet.FromLocation;
                benchSlots[benchFromLocation.seat].gameObject.SetActive(false);
                benchSlots[benchFromLocation.seat].Clear();
            }

            if (packet.ToLocation is BenchLocation)
            {
                var benchToLocation = (BenchLocation)packet.ToLocation;
                benchSlots[benchToLocation.seat].gameObject.SetActive(true);
                benchSlots[benchToLocation.seat].AddUnit(packet.Name);
            }

            CheckForFullBench();
        }
Example #2
0
        private void HandleUnitRepositioned(UnitRepositionedPacket packet)
        {
            if (packet.FromLocation is BoardLocation)
            {
                var boardFromLocation = (BoardLocation)packet.FromLocation;
                var offsetCoords      = boardFromLocation.coords.ToOffset();
                if (offsetCoords.x < 0 || offsetCoords.x > WIDTH)
                {
                    return;
                }
                if (offsetCoords.y < 0 || offsetCoords.y > HEIGHT)
                {
                    return;
                }

                var hex = grid[offsetCoords.y, offsetCoords.x];
                if (hex.Unit == packet.Name)
                {
                    hex.RemoveUnit();
                }
            }

            if (packet.ToLocation is BoardLocation)
            {
                var boardToLocation = (BoardLocation)packet.ToLocation;
                var offsetCoords    = boardToLocation.coords.ToOffset();
                if (offsetCoords.x < 0 || offsetCoords.x > WIDTH)
                {
                    return;
                }
                if (offsetCoords.y < 0 || offsetCoords.y > HEIGHT)
                {
                    return;
                }

                var hex = grid[offsetCoords.y, offsetCoords.x];
                if (String.IsNullOrEmpty(hex.Unit))
                {
                    hex.AddUnit(packet.Name);
                }
            }
        }