public void MoveGun() //Move { switch (_directionGun) { case DirectionEnum.Up: { for (int i = _arrayGan[1]; i > Karta.MinTop; i--) { _arrayGan[1] -= 1; Karta.ClearKartaFromGun(); Karta.GlobalCoordinate[_arrayGan[0], _arrayGan[1]] = Karta.GunView; Karta.DrawGun(); } break; } case DirectionEnum.Right: { for (int i = _arrayGan[0]; i < Karta.MaxLeft - 1; i++) { _arrayGan[0] += 1; Karta.ClearKartaFromGun(); Karta.GlobalCoordinate[_arrayGan[0], _arrayGan[1]] = Karta.GunView; Karta.DrawGun(); } break; } case DirectionEnum.Down: { for (int i = _arrayGan[1]; i < Karta.MaxTop - 1; i++) { _arrayGan[1] += 1; Karta.ClearKartaFromGun(); Karta.GlobalCoordinate[_arrayGan[0], _arrayGan[1]] = Karta.GunView; Karta.DrawGun(); } break; } case DirectionEnum.Left: { for (int i = _arrayGan[0]; i > Karta.MinLeft; i--) { _arrayGan[0] -= 1; Karta.ClearKartaFromGun(); Karta.GlobalCoordinate[_arrayGan[0], _arrayGan[1]] = Karta.GunView; Karta.DrawGun(); } break; } } Karta.ClearKartaFromGun(); Karta.DrawGun(); }
public void OpenFile() { FileStream fin; string s; try { fin = new FileStream("Test.txt", FileMode.Open); } catch (FileNotFoundException exc) { Console.SetCursorPosition(0, Karta.MaxTop); Console.WriteLine("you must put file Test.txt in folder" + " near with *.exe file please do it and restart program"); Console.WriteLine("I create random Walls"); // Wall w1 = new Wall(1, 1, 1, 2); // Wall w2 = new Wall(15, 10, 16, 14); Karta.CreateRandomOneWall(); Thread.Sleep(1); Karta.CreateRandomOneWall(); return; } StreamReader fstrIn = new StreamReader(fin); // Считываем файл построчно. for (int i = 0; (i < Karta.MaxTop); i++) { char[] arrayChar = new char[Karta.MaxLeft]; s = fstrIn.ReadLine(); if (s != null) { arrayChar = s.ToCharArray(); for (int j = 0; (j < arrayChar.Length && j < Karta.MaxLeft); j++) { if (arrayChar[j] == '*' || arrayChar[j] == '1' || arrayChar[j] == '2' || arrayChar[j] == '3' || arrayChar[j] == '4' || arrayChar[j] == '5' || arrayChar[j] == '6' || arrayChar[j] == '7' || arrayChar[j] == '8' || arrayChar[j] == '9' || arrayChar[j] == '*') { Wall w = new Wall(j, i, j, i); } Karta.DrawWall(); } } } fstrIn.Close(); }
public Gun(DirectionEnum directionGun, int left, int top) { this._directionGun = directionGun; _arrayGan[0] = left; _arrayGan[1] = top; CountShot--; MoveGun();///////////////////// in Move if (CountShot == 0 | !Karta.KartaHaveWall()) { TankMainClass.FlagWeInProgram = false; } }
public void Draw() { Karta.ClearKartaFromTank(); int k = 0; // Karta.ClearKarta(); for (var i = 1; i < 10; i++) { if (Karta.GlobalCoordinate[CoordinateLeft[i], CoordinateTop[i]] == Karta.WallView) { k++; } } if (k == 0) { Karta.GlobalCoordinate[CoordinateLeft[1], CoordinateTop[1]] = '-'; Karta.GlobalCoordinate[CoordinateLeft[2], CoordinateTop[2]] = '*'; Karta.GlobalCoordinate[CoordinateLeft[3], CoordinateTop[3]] = '-'; Karta.GlobalCoordinate[CoordinateLeft[4], CoordinateTop[4]] = '0'; Karta.GlobalCoordinate[CoordinateLeft[5], CoordinateTop[5]] = '*'; Karta.GlobalCoordinate[CoordinateLeft[6], CoordinateTop[6]] = '0'; Karta.GlobalCoordinate[CoordinateLeft[7], CoordinateTop[7]] = '#'; Karta.GlobalCoordinate[CoordinateLeft[8], CoordinateTop[8]] = '#'; Karta.GlobalCoordinate[CoordinateLeft[9], CoordinateTop[9]] = '#'; } else { for (int i = 1; i < 10; i++) //retyrn Array { CoordinateLeft[i] = _beforeCoordinateLeft[i]; CoordinateTop[i] = _beforeСoordinateTop[i]; _direction = _beforeDirection; } Karta.GlobalCoordinate[CoordinateLeft[1], CoordinateTop[1]] = '-'; Karta.GlobalCoordinate[CoordinateLeft[2], CoordinateTop[2]] = '*'; Karta.GlobalCoordinate[CoordinateLeft[3], CoordinateTop[3]] = '-'; Karta.GlobalCoordinate[CoordinateLeft[4], CoordinateTop[4]] = '0'; Karta.GlobalCoordinate[CoordinateLeft[5], CoordinateTop[5]] = '*'; Karta.GlobalCoordinate[CoordinateLeft[6], CoordinateTop[6]] = '0'; Karta.GlobalCoordinate[CoordinateLeft[7], CoordinateTop[7]] = '#'; Karta.GlobalCoordinate[CoordinateLeft[8], CoordinateTop[8]] = '#'; Karta.GlobalCoordinate[CoordinateLeft[9], CoordinateTop[9]] = '#'; } Karta.DrawTank(); }