Exemple #1
0
        /// <summary>
        /// Обработчик выхода игрока
        /// </summary>
        public void OnPlayerDisconnect(Client player, string reason)
        {
            if (player.hasData(ClanMission.BOOTY_OBJECT))
            {
                ClanMissionManager.DetachBooty(player);
            }
            var playerInfo = _playerInfoManager.GetInfo(player);

            if (playerInfo == null)
            {
                return;
            }
            if (player.hasData(PlayerData.ON_RACE) || player.hasSyncedData(PlayerData.IS_REGISTERED))
            {
                ProcessRacer(player);
            }
            SyncWork(player);
            SyncPrisoner(player);
            SyncJail(player, playerInfo);
            SyncWeaponAmmo(player, playerInfo);
            SyncClanMissionVote(player, playerInfo);
            playerInfo.LastPosition = PositionConverter.VectorToString(player.position);
            _accountsProvider.UpdateTotalTime(playerInfo.AccountId);
            _playersProvider.UpdatePlayersInfos(new List <PlayerInfo> {
                playerInfo
            });
            _vehiclesProvider.Update(playerInfo.Vehicles.Values);
            _playerInfoManager.Remove(player);
        }
 private void cmbPosition_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (cmbPosition.SelectedIndex > -1 && getmarker != null)
     {
         lbPosition.Text = PositionConverter.ParsePointToString(getmarker.Position, cmbPosition.SelectedItem.ToString());
     }
 }
        public void setFireUnitInfo(GMarker marker, GMarkerRect rect)
        {
            this.getmarker = marker;
            this.getrect   = rect;
            if (getmarker != null)
            {
                clearField();
                lbBatteryID.Text = main.detailMarkers[getmarker].GetFireUnitBatteryID();
                lbDetail.Text    = main.detailMarkers[getmarker].GetFireUnitDetail();
                lbNumber.Text    = main.detailMarkers[getmarker].GetFireUnitNumber();
                lbPosition.Text  = PositionConverter.ParsePointToString(main.detailMarkers[getmarker].GetFireUnitPoint(), cmbPosition.Text);
                lbType.Text      = main.detailMarkers[getmarker].GetFireUnitType();
                lbStatus.Text    = main.detailMarkers[getmarker].GetFireUnitStatus();

                //if (main.detailMarkers[getmarker].GetFireUnitStatus() == "OP")
                //{
                //    lbStatus.Text = "OP";
                //}
                //else if (main.detailMarkers[getmarker].GetFireUnitStatus() == "Limited")
                //{
                //    lbStatus.Text = "Limited";
                //}
                //else if (main.detailMarkers[getmarker].GetFireUnitStatus() == "NonOP")
                //{
                //    lbStatus.Text = "NonOP";
                //}
            }
        }
 public void setFireUnitInfo(GMarker marker, GMarkerRect rect)
 {
     this.getmarker = marker;
     this.getrect   = rect;
     if (getmarker != null)
     {
         clearField();
         txtBatteryID.Text = main.detailMarkers[getmarker].GetFireUnitBatteryID();
         txtDetail.Text    = main.detailMarkers[getmarker].GetFireUnitDetail();
         txtNumber.Text    = main.detailMarkers[getmarker].GetFireUnitNumber();
         txtPosition.Text  = PositionConverter.ParsePointToString(main.detailMarkers[getmarker].GetFireUnitPoint(), cmbPosition.Text);
         cmbType.Text      = main.detailMarkers[getmarker].GetFireUnitType();
         if (main.detailMarkers[getmarker].GetFireUnitStatus() == "OP")
         {
             radioButton3.Checked = true;
         }
         else if (main.detailMarkers[getmarker].GetFireUnitStatus() == "Limited")
         {
             radioButton2.Checked = true;
         }
         else if (main.detailMarkers[getmarker].GetFireUnitStatus() == "NonOP")
         {
             radioButton1.Checked = true;
         }
     }
 }
        /// <summary>
        /// Обработать данные владельца дома
        /// </summary>
        private void ProcessOwner(HouseInfo house)
        {
            var player = _playerInfoManager.GetWithData(house.OwnerId);

            if (PlayerHelper.PlayerCorrect(player.Player))
            {
                var houseId = PlayerHelper.GetData(player.Player, HouseMenuHandler.IN_HOUSE, NO_OWNER);
                if (houseId == house.Id)
                {
                    player.Player.resetData(HouseMenuHandler.IN_HOUSE);
                    API.setEntityPosition(player.Player, PositionConverter.ToVector3(house.Position));
                    API.setEntityDimension(player.Player, 0);
                }
                MoveVehiclesOnParking(player.PlayerInfo.Vehicles.Values, player.Player);
                _playerInfoManager.RefreshUI(player.Player, player.PlayerInfo);
                API.sendNotificationToPlayer(player.Player, "~b~Аренда дома подошла к концу");
            }
            else
            {
                MoveVehiclesOnParking(player.PlayerInfo.Vehicles.Values);
                player.PlayerInfo.LastPosition = house.Position;
                player.PlayerInfo.Dimension    = 0;
                _playerInfoManager.Set(player.PlayerInfo);
            }
        }
Exemple #6
0
        //Button//
        private void button1_Click(object sender, EventArgs e)
        {
            if (txtLocationLandmark.Text == "Select Location on Map")
            {
                MessageBox.Show("Please Select Location on Map", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            if (cmbTypeLandmark.Text == "Please Select Type of Landmark")
            {
                MessageBox.Show("Please Select Type of Landmark", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            else if (txtLabelLandmark.Text == "Short Name")
            {
                txtLabelLandmark.Text = "";
            }
            var                  marker  = new GmapMarkerWithLabel(PositionConverter.ParsePointFromString(txtLocationLandmark.Text), null, markerLandmark.icon, 20);
            GMapOverlay          overlay = mainForm.GetInstance().GetOverlay("markersP");
            MarkerLandmarkDetail detail  = new MarkerLandmarkDetail(marker, cmbTypeLandmark.SelectedIndex, PositionConverter.ParsePointFromString(txtLocationLandmark.Text), txtNameLandmark.Text, txtLabelLandmark.Text);

            dicMarker.Add(marker, detail);
            marker.ToolTipText = "\n" + detail.Location.Lat.ToString() + " / " + detail.Location.Lng.ToString() + "\n" + detail.Label;
            marker.ToolTipMode = MarkerTooltipMode.OnMouseOver;
            overlay.Markers.Add(marker);
            mainForm.GetInstance().GetmainMap().Overlays.Add(overlay);

            txtLabelLandmark.Text      = "Short Name";
            txtLabelLandmark.ForeColor = Color.Gray;

            txtNameLandmark.Text      = "Landmark Name";
            txtNameLandmark.ForeColor = Color.Gray;

            cmbTypeLandmark.Text      = "Please Select Type of Landmark";
            cmbTypeLandmark.ForeColor = Color.Gray;
        }
        /// <summary>
        /// Проинициализировать гараж
        /// </summary>
        private void InitializeGarage(HouseInfo house)
        {
            if (string.IsNullOrEmpty(house.GaragePosition))
            {
                // не у всех домов может быть гараж?
                return;
            }
            // вход в гараж
            var enterPos = PositionConverter.ToVector3(house.GaragePosition);
            var enter    = _pointCreator.CreateMarker(Marker.Stripes, enterPos, Colors.Yellow, 2f);

            API.setEntityRotation(enter.Marker, PositionConverter.ToVector3(house.RotationAfterExit));
            enter.ColShape.onEntityEnterColShape += (shape, entity) => {
                _houseEventManager.OnPlayerWentToGarageEnter(entity, house.Id);
            };
            enter.ColShape.onEntityExitColShape += (shape, entity) => _houseEventManager.OnPlayerAway(entity);
            // выход
            var exits = HousesPositionsGetter.GetGarageInnerPositions(house.Type).GarageExits;

            foreach (var exit in exits)
            {
                var garageExit = API.createSphereColShape(exit, 2f);
                garageExit.dimension              = (int)-house.Id;
                garageExit.onEntityEnterColShape += (shape, entity) => {
                    _houseEventManager.OnPlayerExitGarage(entity, house.Id);
                };
                garageExit.onEntityExitColShape += (shape, entity) => _houseEventManager.OnPlayerAway(entity);
            }
        }
Exemple #8
0
        private static void SetEventToPutNote(
            MadcaDisplay display, NoteBook noteBook, IReadOnlyList <IReadOnlyScore> scores, OperationManager opManager, IReadOnlyEditorStatus status)
        {
            var box     = display.PictureBox;
            var laneEnv = display.EditorLaneEnvironment;

            box.MouseDown += (s, e) =>
            {
                if (status.EditorMode != EditorMode.Add || status.NoteMode == NoteMode.Hold || status.NoteMode == NoteMode.Field)
                {
                    return;
                }
                var area = laneEnv.GetEditorLaneRegion(e.Location);
                if (area == EditorLaneRegion.Lane && e.Button == MouseButtons.Left)
                {
                    var res = PositionConverter.ConvertRealToVirtual(laneEnv, e.Location, status.BeatStride, scores, out Position position);
                    if (!res)
                    {
                        return;
                    }
                    var note = MyUtil.NoteFactory(position.Lane, position.Timing, new NoteSize(status.NoteSize), status.NoteMode);
                    if (note is null)
                    {
                        return;
                    }                             // HACK: この辺の処理どうしようかな
                    opManager.AddAndInvokeOperation(new AddShortNoteOperation(noteBook, note));
                }
            };
        }
Exemple #9
0
    private void MoveTeamPosition(Node[] teamPosition, List <Unit> team)
    {
        for (int i = 0; i < team.Count; ++i)
        {
            float         y            = team[i].transform.position.y;
            WorldPosition unitWorldPos = PositionConverter.ToWorldCoordinates(new LocalPosition(teamPosition[i].x, teamPosition[i].y));
            unitWorldPos.y            = y;
            BoardManager.selectedUnit = team[i];

            if (BoardManager.Instance.isUnitOccupiedNodeByTeam(teamPosition[i], true))
            {
                Debug.Log(team[i].tag + ": attack to " + teamPosition[i].x + " " + teamPosition[i].y);
                Unit defUnit = BoardManager.Instance.GetUnitByNode(teamPosition[i], false);
                BoardManager.Instance.GeneratePathToEnemy(defUnit);
                var path = BoardManager.selectedUnit.currentPathToEnemy;
                if (path != null)
                {
                    unitWorldPos = PositionConverter.ToWorldCoordinates(new LocalPosition(path[path.Count - 1].x, path[path.Count - 1].y));
                }
                BoardManager.selectedUnit.Attack(defUnit);
            }
            else
            {
                BoardManager.Instance.GeneratePathTo(unitWorldPos.x, unitWorldPos.z);
                BoardManager.selectedUnit.MoveToEnterTile();
                team[i].transform.position = unitWorldPos.ToVector3();
                team[i].UpdatePosition(unitWorldPos);
            }
        }
    }
Exemple #10
0
    private void BeginGame()
    {
        positionConverter = new PositionConverter(cellSize);
        mazeInstance      = Instantiate(mazePrefab);
        float mazeWidth  = indestructibleCubesXNumber * cellSize * 2 + cellSize;
        float mazeLength = indestructibleCubesZNumber * cellSize * 2 + cellSize;
        float startX     = startPositionX.Equals(StartPosition.MIN) ? 1 : mazeWidth - 1;
        float startZ     = startPositionZ.Equals(StartPosition.MIN) ? 1 : mazeLength - 1;

        Debug.Log(DateTime.Now + " Generating maze with size " + indestructibleCubesXNumber + "x" + indestructibleCubesZNumber + "...");
        board = mazeInstance.Generate(mazeWidth, mazeLength, cellSize, cubeHeight, wallHeight, startX, startZ, positionConverter, levelConfig);

        positionManager = new PlayerPositionManager(board, positionConverter);

        player.gameObject.transform.localPosition = new Vector3(startX, 0.5f, startZ);
        SetInitialCameraRotation();

        board.AddPlayer(player);

        InitAI();

        positionManager.AddPlayer(player);

        explosionManager = GameObject.Find(Constants.EXPLOSION_MANAGER_NAME).GetComponent <ExplosionManager>();
        uiController     = GameObject.Find(Constants.UI_CONTROLLER_NAME).GetComponent <UIController>();
        uiController.InitializeHUD(mazeWidth, mazeLength);

        StartCoroutine(StartLevelCountdown());
        Debug.Log(DateTime.Now + " Level " + GameManager.instance.GetCurrentLevelNumber() + " loaded successfully!");
    }
        public void EditMarker(int ID, string Name, int Img_index, int Img_ID, double Lat, double Lng)
        {
            if (Markers.ContainsKey(ID))
            {
                SymbolInfo sinfo = Markers[ID];
                sinfo.Name               = Name;
                sinfo.ImgIndex           = Img_index;
                sinfo.ImgID              = Img_ID;
                sinfo.Point              = new PointLatLng(Lat, Lng);
                sinfo.Marker.ToolTipText = PositionConverter.ParsePointToString(new PointLatLng(Lat, Lng), PositionConverter.DefaultScale) + ", " + Name;

                if (DataSettings.UseDatabase)
                {
                    MySqlConnection conn = DataSettings.GetConnection();
                    using (MySqlCommand cmd = new MySqlCommand(null, conn))
                    {
                        cmd.CommandText = "UPDATE marker_info SET marker_name = @name, marker_imgindex = @img_index, marker_imgid = @img_id" +
                                          ", marker_lat = @lat, marker_lng = @lng, mission_id = @mission_id WHERE marker_id = @id";
                        cmd.Parameters.Clear();
                        cmd.Parameters.AddWithValue("id", sinfo.ID);
                        cmd.Parameters.AddWithValue("name", sinfo.Name);
                        cmd.Parameters.AddWithValue("img_index", sinfo.ImgIndex);
                        cmd.Parameters.AddWithValue("img_id", sinfo.ImgID);
                        cmd.Parameters.AddWithValue("lat", sinfo.Point.Lat);
                        cmd.Parameters.AddWithValue("lng", sinfo.Point.Lng);
                        cmd.Parameters.AddWithValue("mission_id", sinfo.Mission);
                        cmd.ExecuteNonQuery();
                    }
                }
            }
        }
Exemple #12
0
    public static IEnumerator MoveUnitTo(WorldPosition moveTo, float time)
    {
        inFirst = true;
        Unit    unit     = BoardManager.selectedUnit;
        Vector3 startPos = unit.worldPosition.ToVector3();
        var     tmpPos   = PositionConverter.ToWorldCoordinates(unit.currentPath[0]).ToVector3();
        Vector3 endPos   = new Vector3(tmpPos.x, moveTo.y, tmpPos.z);
        int     count    = 0;

        while (unit.currentPath.Count != 1)
        {
            unit.currentPath.RemoveAt(0);
            ++count;
            if (count == 1)
            {
                startPos = unit.worldPosition.ToVector3();
            }
            var tmpPos_ = PositionConverter.ToWorldCoordinates(unit.currentPath[0]).ToVector3();
            endPos = new Vector3(tmpPos_.x, moveTo.y, tmpPos_.z);

            for (float t = 0; t <= 1 * time; t += Time.deltaTime)
            {
                unit.transform.position = Vector3.Lerp(startPos, endPos, t / time);
                yield return(null);
            }
            startPos = endPos;
        }

        unit.currentPath     = null;
        inFirst              = false;
        Unit.isHumanMakeTurn = true;
    }
 /// <summary>
 ///     Adding or Updating Position in a database
 /// </summary>
 /// <param name="position">Business Object Position</param>
 /// <returns>True if succeeded and false otherwise</returns>
 public async Task <bool> SavePosition(DtoPosition position)
 {
     try
     {
         using (var data = Context)
         {
             var p =
                 await
                     (from item in data.Position where position.Id == item.id select item).FirstOrDefaultAsync();
             // Updating Position
             if (p != null)
             {
                 p.name        = position.Name;
                 p.description = position.Description;
             }
             // Adding new Position
             else
             {
                 if (await(from item in data.Position where position.Name == item.name select item).AnyAsync())
                 {
                     return(false);
                 }
                 data.Position.Add(PositionConverter.DtoToDataAccess(position));
             }
             await data.SaveChangesAsync();
         }
         return(true);
     }
     catch (Exception)
     {
         return(false);
     }
 }
Exemple #14
0
 // Use this for initialization
 public virtual void Start()
 {
     board             = GameObject.Find(Constants.LEVEL_MANAGER_NAME).GetComponent <LevelManager>().GetBoard();
     positionConverter = GameObject.Find(Constants.LEVEL_MANAGER_NAME)
                         .GetComponent <LevelManager>().GetPositionConverter();
     TryMove();
 }
Exemple #15
0
        private void setDiffContextText(Control diffContextControl)
        {
            double fontSizePx = WinFormsHelpers.GetFontSizeInPixels(diffContextControl);

            DiscussionNote note = getNoteFromControl(diffContextControl);

            Debug.Assert(note.Type == "DiffNote");
            DiffPosition position = PositionConverter.Convert(note.Position);

            Debug.Assert(diffContextControl is HtmlPanel);
            HtmlPanel htmlPanel = diffContextControl as HtmlPanel;

            // We need to zero the control size before SetText call to allow HtmlPanel to compute the size
            int prevWidth = htmlPanel.Width;

            htmlPanel.Width  = 0;
            htmlPanel.Height = 0;

            string html = getContext(_panelContextMaker, position, _diffContextDepth, fontSizePx, out string css);

            htmlPanel.BaseStylesheet = css;
            htmlPanel.Text           = html;
            resizeLimitedWidthHtmlPanel(htmlPanel, prevWidth);

            string tooltipHtml = getContext(_tooltipContextMaker, position,
                                            _tooltipContextDepth, fontSizePx, out string tooltipCSS);

            _htmlDiffContextToolTip.BaseStylesheet =
                String.Format("{0} .htmltooltip {{ padding: 1px; }}", tooltipCSS);
            _htmlDiffContextToolTip.SetToolTip(htmlPanel, tooltipHtml);
        }
        /// <summary>
        /// Adds a piece specified in the command to the visual board and updates bitboard.
        /// </summary>
        /// <param name="command">The AddPiece command.</param>
        private void AddPiece(Command command)
        {
            var colorArgument = command.GetArgument <string>(0);
            var pieceArgument = command.GetArgument <string>(1);
            var fieldArgument = command.GetArgument <string>(2);

            var colorParseResult = Enum.TryParse(colorArgument, true, out Color color);

            if (!colorParseResult)
            {
                ConsoleManager.WriteLine($"$rInvalid color type ($R{color}$r)");
                return;
            }

            var pieceParseResult = Enum.TryParse(pieceArgument, true, out PieceType piece);

            if (!pieceParseResult)
            {
                ConsoleManager.WriteLine($"$rInvalid piece type ($R{piece}$r)");
                return;
            }

            var fieldPosition = PositionConverter.ToPosition(fieldArgument);

            VisualBoard.FriendlyBoard.SetPiece(new FriendlyPiece(fieldPosition, piece, color));
            CalculateBitboard(VisualBoard.FriendlyBoard, _quiescenceSearch);
        }
        public void GMap_MouseClick(object sender, MouseEventArgs e)
        {
            PointLatLng point = main.gMap.FromLocalToLatLng(e.X, e.Y);

            currentPoint     = point;
            txtPosition.Text = PositionConverter.ParsePointToString(point, cmbPosition.SelectedItem.ToString());
        }
Exemple #18
0
 public void setTrackInfo(TrackData track)
 {
     this.track = track;
     if (track != null)
     {
         txtNumber.Text       = track.Number.ToString("000");
         txtCallSign.Text     = track.CallSign;
         cmbStatus.Text       = track.Status.ToString();
         txtPosition.Text     = PositionConverter.ParsePointToString(track.Position, cmbPosition.Text);
         txtSpeed.Text        = ScaleConverter.ConvertSpeed(track.Speed, "knots", cmbSpeed.Text).ToString();
         txtBearing.Text      = ScaleConverter.ConvertBearing(track.Bearing, "degree", cmbBearing.Text).ToString();
         txtCallSign.ReadOnly = false;
         txtPosition.ReadOnly = txtSpeed.ReadOnly = txtBearing.ReadOnly = txtHeight.ReadOnly = !track.Faker;
         if (track.Height.HasValue)
         {
             txtHeight.Text = ScaleConverter.ConvertHeight(track.Height.Value, "ft", cmbHeight.Text).ToString();
         }
         else
         {
             txtHeight.Text     = "Unknown";
             txtHeight.ReadOnly = true;
         }
     }
     else
     {
         clearFields();
     }
 }
Exemple #19
0
 private void cmbPosition_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (cmbPosition.SelectedIndex > -1 && txtPosition.Text != "")
     {
         txtPosition.Text = PositionConverter.ParsePointToString(currentPoint, cmbPosition.SelectedItem.ToString());
     }
 }
Exemple #20
0
 private void UpdateTeamPosition(List <Unit> currentTeam, Node unitPosition, int initiative)
 {
     if (initiative < currentTeam.Count)
     {
         //todo: add ctor for nodes
         currentTeam[initiative].UpdatePosition(PositionConverter.ToWorldCoordinates(new LocalPosition(unitPosition.x, unitPosition.y)));
     }
 }
Exemple #21
0
        /// <summary>
        /// Инициализировать магазин внутри
        /// </summary>
        private void InitializeInside(ShopModel shop)
        {
            var pedPositions = PositionConverter.ToListVector3(shop.NpcPositions);
            var ped          = _pointCreator.CreatePed(PedHash.Sweatshop01SFY, "Продавец", pedPositions[0], pedPositions[1], pedPositions[2], Colors.VividCyan);

            ped.ColShape.onEntityEnterColShape += (shape, entity) => PlayerComeToSeller(entity, shop.District);
            ped.ColShape.onEntityExitColShape  += PlayerComeAwayFromSeller;
        }
Exemple #22
0
        public void ToRt90_FromWebMercator(double lat, double lng, double expectedLat, double expectedLng, int decimals)
        {
            var pos       = new WebMercatorPosition(lat, lng);
            var converted = PositionConverter.ToRt90(pos);

            Assert.AreEqual(Math.Round(expectedLat, decimals, MidpointRounding.AwayFromZero), Math.Round(converted.Latitude, decimals, MidpointRounding.AwayFromZero));
            Assert.AreEqual(Math.Round(expectedLng, decimals, MidpointRounding.AwayFromZero), Math.Round(converted.Longitude, decimals, MidpointRounding.AwayFromZero));
        }
Exemple #23
0
        public Rectangle GetRectangle(IReadOnlyEditorLaneEnvironment env)
        {
            var loc    = PositionConverter.ConvertVirtualToRealNorm(env, new Position(Lane, Timing));
            int width  = NoteEnvironment.NoteWidth(NoteSize.Size, env);
            int height = NoteEnvironment.NoteHeight;

            return(new Rectangle(loc.X, loc.Y - NoteEnvironment.NoteHeight / 2, width, height));
        }
Exemple #24
0
 private void GoDown()
 {
     secondDestroyer = tileFactory.CreateDestoyer();
     secondDestroyer.Move(
         PositionConverter.GetPositionsOnScreen(r: lineBonus.R + 1, c: lineBonus.C),
         PositionConverter.GetPositionsOnScreen(r: matrix.Rows - 1, c: lineBonus.C)
         );
 }
Exemple #25
0
        public void ToSweRef99_FromWgs84(double lat, double lng, double expectedLat, double expectedLng, int decimals)
        {
            var pos       = new WGS84Position(lat, lng);
            var converted = PositionConverter.ToSweRef99(pos);

            Assert.AreEqual(Math.Round(expectedLat, decimals, MidpointRounding.AwayFromZero), Math.Round(converted.Latitude, decimals, MidpointRounding.AwayFromZero));
            Assert.AreEqual(Math.Round(expectedLng, decimals, MidpointRounding.AwayFromZero), Math.Round(converted.Longitude, decimals, MidpointRounding.AwayFromZero));
        }
Exemple #26
0
 private void UpdateTeamPosition(Node[] teamPosition, List <Unit> team)
 {
     for (int i = 0; i < team.Count; ++i)
     {
         WorldPosition unitWorldPos = PositionConverter.ToWorldCoordinates(new LocalPosition(teamPosition[i].x, teamPosition[i].y));
         team[i].UpdatePosition(unitWorldPos);
     }
 }
Exemple #27
0
 private void GoRight()
 {
     secondDestroyer = tileFactory.CreateDestoyer();
     secondDestroyer.Move(
         PositionConverter.GetPositionsOnScreen(r: lineBonus.R, c: lineBonus.C + 1),
         PositionConverter.GetPositionsOnScreen(r: lineBonus.R, c: matrix.Columns - 1)
         );
 }
 /// <summary>
 /// Обновить данные о метонахождении игроков
 /// </summary>
 private static void UpdatePlayersData()
 {
     foreach (var playerInfo in ServerState.Players)
     {
         var position = playerInfo.Key.position;
         playerInfo.Value.LastPosition = PositionConverter.VectorToString(position);
     }
 }
Exemple #29
0
 private void GoLeft()
 {
     firstDestroyer = tileFactory.CreateDestoyer();
     firstDestroyer.Move(
         PositionConverter.GetPositionsOnScreen(r: lineBonus.R, c: lineBonus.C - 1),
         PositionConverter.GetPositionsOnScreen(r: lineBonus.R, c: 0)
         );
 }
Exemple #30
0
 private void GoUp()
 {
     firstDestroyer = tileFactory.CreateDestoyer();
     firstDestroyer.Move(
         PositionConverter.GetPositionsOnScreen(r: lineBonus.R - 1, c: lineBonus.C),
         PositionConverter.GetPositionsOnScreen(r: 0, c: lineBonus.C)
         );
 }