private void OnTankDestroyed(object sender, EventArgs e) { var destroyedTank = sender as Tank; destroyedTank.Unsubscribe(); destroyedTank.CheckPosition -= Field.GetCheckPositionListener(); destroyedTank.Shot -= OnShot; destroyedTank.Destroyed -= OnTankDestroyed; foreach (var playerTank in Tanks) { if (playerTank != destroyedTank) { playerTank.CheckPosition -= destroyedTank.GetCheckPositionListener(); destroyedTank.CheckPosition -= playerTank.GetCheckPositionListener(); } } Tanks.Remove(destroyedTank); foreach (var compTank in Field.CompsManager.Tanks) { compTank.CheckPosition -= destroyedTank.GetCheckPositionListener(); } AliveTanks--; }
static void Main(string[] args) { Random rand = new Random(); Tanks[] WIN = new Tanks[5]; Tanks[] T34 = new Tanks[5]; for (int i = 0; i < T34.Length; i++) { WIN[i] = new Tanks(); } for (int i = 0; i < T34.Length; i++) { T34[i] = new Tanks("T34", rand.Next(0, 100), rand.Next(0, 100), rand.Next(0, 100)); } Tanks[] Pantera = new Tanks[5]; for (int i = 0; i < T34.Length; i++) { Pantera[i] = new Tanks("pantera", rand.Next(0, 100), rand.Next(0, 100), rand.Next(0, 100)); } for (int i = 0; i < 5; i++) { T34[i].Show(); Pantera[i].Show();; WIN[i] = T34[i] * Pantera[i]; Console.WriteLine(); Console.WriteLine($"В {i + 1} схватке победил"); WIN[i].Show(); Console.WriteLine(); Console.WriteLine(); } Console.ReadLine(); }
public async Task <IActionResult> Edit(int id, [Bind("Id,Country,Class,Tier,TankName,HitPoints,ROF,AimTime,Accuracy,AvgPenetration,AvgDamage,Dpm,HullArmor,TurretArmor,ImgSrc")] Tanks tanks) { if (id != tanks.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(tanks); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!TanksExists(tanks.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(tanks)); }
public void Update(GameTime gameTime, bool pCanPlay) { if (Tanks.Count > 0) { IndexTank = (byte)(IndexTank % Tanks.Count); Tank CurrentTank = Tanks[IndexTank]; Control.Update(pCanPlay); // Sélectionne le tank suivant if (Control.OnPressedN && pCanPlay && !CurrentTank.Action.BlockAction) { CurrentTank.IsControlled = false; IndexTank++; } // Si le joueur peut jouer (si c'est son tour) gère les entrées claviers. CurrentTank = Tanks[IndexTank]; CurrentTank.IsControlled = pCanPlay; CurrentTank.Space = Control.IsDownSpace; CurrentTank.Left = Control.IsDownLeft; CurrentTank.Right = Control.IsDownRight; CurrentTank.Up = Control.IsDownUp; CurrentTank.Down = Control.IsDownDown; Tanks.RemoveAll(t => t.Remove); if (Tanks.Count == 0) { Remove = true; } } }
public ActionResult Create(Tanks tanks, HttpPostedFileBase upload) { if (ModelState.IsValid) { if (upload != null) { // формируем имя файла string fileName = tanks.TankID.ToString() + System.IO.Path.GetExtension(upload.FileName); // сохраняем файл в папку Images в проекте upload.SaveAs(Server.MapPath("~/Images/" + fileName)); tanks.TankPicture = fileName; db.Tanks.Add(tanks); db.SaveChanges(); int id = tanks.TankID; return(RedirectToAction("Edit", new { id = tanks.TankID })); } db.Tanks.Add(tanks); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(tanks)); }
/// <summary> /// Calculate performance metrics on the player /// </summary> /// <param name="wn8ExpectedValues"></param> public void CalculatePerformance(Wn8ExpectedValues wn8ExpectedValues) { if (Tanks.Length == 0) { return; } // Only tanks that I know about Tanks = Tanks.Where(t => wn8ExpectedValues.Exists(t.TankId) && t.All.Battles > 0).ToArray(); if (Tanks.Length == 0) { return; } Battles = Tanks.Sum(t => t.All.Battles); WinRate = Tanks.Sum(t => t.All.Wins) * 1.0 / Battles; AvgTier = Tanks.Sum(t => wn8ExpectedValues[t.TankId].Tier * t.All.Battles) * 1.0 / Battles; Wn8 = wn8ExpectedValues.CalculateWn8(Tanks.ToDictionary(t => t.TankId, t => (TankPlayerWn8Statistics)t.All)); Tier10Tanks = Tanks.Where(t => wn8ExpectedValues[t.TankId].Tier == 10).ToArray(); if (Tier10Tanks.Length == 0) { return; } Tier10Battles = Tier10Tanks.Sum(t => t.All.Battles); Tier10WinRate = Tier10Tanks.Sum(t => t.All.Wins) * 1.0 / Tier10Battles; Tier10Wn8 = wn8ExpectedValues.CalculateWn8(Tier10Tanks.ToDictionary(t => t.TankId, t => (TankPlayerWn8Statistics)t.All)); Tier10DirectDamage = Tier10Tanks.Sum(t => t.All.DamageDealt) * 1.0 / Tier10Battles; }
public State(Spies spy, Infantry inf, Tanks tank, Jets jet, Bombers bomb, Sams sam, Ships ship) { this.Spy = spy; this.Inf = inf; this.Tank = tank; this.Jet = jet; this.Bomb = bomb; this.Sam = sam; this.Ship = ship; this.UserAttPwr = this.Inf.InfAttPwr + this.Tank.TankAttPwr + this.Jet.JetAttPwr + this.Bomb.BombAttPwr + this.Ship.ShipAttPwr; this.UserGADefPwr = this.Inf.InfAttPwr + this.Tank.TankAttPwr; this.UserARDefPwr = this.Jet.JetAttPwr + this.Sam.SamAttPwr; this.UserAADefPwr = this.Ship.ShipAttPwr; this.UserDefPwr = this.Inf.InfAttPwr + this.Tank.TankAttPwr + this.Sam.SamAttPwr + this.Ship.ShipAttPwr; this.UserGbAttPwr = (this.Spy.SpyUserPwr * this.Spy.SpyCount) + (this.Jet.JetUserPwr * this.Jet.JetCount) + (this.Bomb.BombUserPwr * this.Bomb.BombCount); this.userGbDefPwr = (this.Inf.InfUserPwr * this.Inf.InfCount) + (this.Tank.TankUserPwr * this.Tank.TankCount) + (this.Sam.SamUserPwr * this.Sam.SamCount) + (this.Ship.ShipUserPwr * this.Ship.ShipCount); if (this.UserGbAttPwr > this.userGbDefPwr) { this.GbProtection = "No"; } else { this.GbProtection = "Yes"; } this.Readiness = 0; }
private void CreateTanks() { int x, y; //единоразовое создание охотника под индеком 0 if (Tanks.Count == 0) { Tanks.Add(new Hunter(size, r.Next(7) * 40, r.Next(7) * 40)); } while (Tanks.Count < tanksAmount) { x = r.Next(7) * 40; y = r.Next(7) * 40; bool quit = false; foreach (Tank t in Tanks) { if (x == t.X && y == t.Y || Pl.X == x && Pl.Y == y) { quit = true; } } if (quit) { continue; } Tanks.Add(new Tank(size, x, y)); } }
static void Main() { /* старая конструкция Tanks KV = new Tanks(); //создаем объект класса Tanks и заполняем поля KV.nameTank = "КВ"; KV.healtPoint = 986; // 15 shoot from Tiger KV.damage = 94.28; KV.shootinMin = 7.34; //sim 8.2 Tanks Tiger; Tiger = new Tanks(); //создаем объект класса Tanks и заполняем поля Tiger.nameTank = "Тигр"; Tiger.healtPoint = 1200; // 13 shoot from KV Tiger.damage = 68.57; Tiger.shootinMin = 6.67; //sim 8.9 * */ /*объект с конструктором*/ Tanks KV = new Tanks("КВ", 986, 94.28, 7.34); //создаем объект класса Tanks и заполняем поля Tanks Tiger = new Tanks("Тигр", 1200, 68.57, 6.67); //создаем объект класса Tanks и заполняем поля Console.WriteLine("Танк:\t\tHP:\t\tУрон:\t\tВыст/мин.:\tПерезарядка:\n"); Console.WriteLine("{0}\t\t{1}\t\t{2}\t\t{3}\t\t{4:#.#}", KV.nameTank, KV.healtPoint, KV.damage, KV.shootinMin, KV.reloadTime); Console.WriteLine("{0}\t\t{1}\t\t{2}\t\t{3}\t\t{4:#.#}", Tiger.nameTank, Tiger.healtPoint, Tiger.damage, Tiger.shootinMin, Tiger.reloadTime); Console.WriteLine(); Console.WriteLine("Танк {0} уничтожит танк {1} за {2} выстрелов за {3:####.#} сек.", KV.nameTank, Tiger.nameTank, KV.KillShoot(Tiger.healtPoint), KV.KillTime(Tiger.healtPoint)); Console.WriteLine("Танк {0} уничтожит танк {1} за {2} выстрелов за {3:####.#} сек.", Tiger.nameTank, KV.nameTank, Tiger.KillShoot(KV.healtPoint), Tiger.KillTime(KV.healtPoint)); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("Танк {0} ПОБЕДИЛ!!!", (Tiger.KillTime(KV.healtPoint) > KV.KillTime(Tiger.healtPoint)) ? KV.nameTank : Tiger.nameTank); Console.ResetColor(); Console.WriteLine(); }
private void CreateTank(int percent) { if (Tanks.Count < tankCount && rnd.Next(100) <= percent) { int x = rnd.Next(view.MapWidth - BlockSize); int y = rnd.Next(view.MapHeight - BlockSize); var tank = new TankViewModel(x, y, 16, 16, (Direction)rnd.Next(4)); if (Player != null) { if (Walls.Find(wall => IsCollision(wall, tank)) == null && IsCollision(Player, tank) == false && Tanks.Find(tnk => tnk != tank ? IsCollision(tnk, tank) : false) == null) { Tanks.Add(tank); } } else { if (Walls.Find(wall => IsCollision(wall, tank)) == null && IsCollision(reservePlayer, tank) == false && Tanks.Find(tnk => tnk != tank ? IsCollision(tnk, tank) : false) == null) { Tanks.Add(tank); } } } }
public ActionResult DeleteConfirmed(int id) { Tanks tanks = db.Tanks.Find(id); db.Tanks.Remove(tanks); db.SaveChanges(); return(RedirectToAction("Index")); }
private void InitializeTanks() { _tanks = new Tanks(); foreach (var component in SingletonConfiguration.Instance.Components) { _tanks.Add(TankFactory.CreateTank(component)); } }
public void DistributeFuelConsumption(double liters) { foreach (Tank tank in Tanks.Where(tank => !tank.IsEmpty())) { tank.Consume(liters); return; } }
public ActionResult DeleteConfirmed(int id) { //Удаление заданной записи из таблицы Tanks Tanks tanks = db.Tanks.Find(id); db.Tanks.Remove(tanks); db.SaveChanges(); return(RedirectToAction("Index")); }
private void RotateTank(float percent) { Tanks.ForEach(tank => { if (rnd.Next(100) < percent) { tank.ChangeDirection((Direction)rnd.Next(4)); } }); }
public IActionResult OnGet(int TankId) { tank = new Tanks(); tank = tankData.GetById(TankId); if (tank == null) { return(RedirectToPage("./NotFound")); } return(Page()); }
public void Created() { var @event = new PetrolStationCreated( id: Id, name: Name, tanks: Tanks.Select(x => x.ToContract()).ToList(), nozzles: Nozzles.Select(x => x.ToContract()).ToList()); EventsToSend.Enqueue(@event); }
public static bool IsMainTank(this GameObject unit) { var gameObject = unit as Character; return(gameObject != null && Tanks.Contains(gameObject.CurrentJob) && (gameObject.BeingTargetedBy(Core.Me.CurrentTarget) || gameObject.BeingTargetedBy(gameObject.TargetGameObject) || PartyManager.AllMembers.Where(r => r != null).Select(r => r.BattleCharacter).Where(r => Tanks.Contains(r.CurrentJob)).Count() == 1)); }
public async Task <IActionResult> Create([Bind("Id,Country,Class,Tier,TankName,HitPoints,ROF,AimTime,Accuracy,AvgPenetration,AvgDamage,Dpm,HullArmor,TurretArmor,ImgSrc")] Tanks tanks) { if (ModelState.IsValid) { _context.Add(tanks); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(tanks)); }
public void FillLists(Tanks tank) { if (tank.TankType.Equals("T34")) { team1.Add(tank); } else { team2.Add(tank); } }
public static TankData FindTankData(Tanks myTank) { for (int i = 0; i < tanks.Count; i++) { if (tanks[i].tank == myTank) { return(tanks[i].tankData); } } return(null); }
private void frmTanks_Load(System.Object sender, System.EventArgs e) { tank1 = new Tanks(12, 124); tank2 = new Tanks(52, 234); pctTankTwo.Image = Properties.Resources.GreenTankUp; pctTank1.Image = Properties.Resources.SovietTankUp; Bullet1Direction = dirStop; Bullet2Direction = dirStop; Bullet1 = new PictureBox(); Bullet2 = new PictureBox(); }
public TankButton FindTankButton(Tanks myTank) { for (int i = 0; i < tankButtons.Count; i++) { if (tankButtons[i].tank == myTank) { return(tankButtons[i].tankButton); } } return(null); }
public ActionResult Create([Bind(Include = "TankID,TankType,TankVolume,TankWeight,TankMaterial")] Tanks tanks) { if (ModelState.IsValid) { db.Tanks.Add(tanks); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(tanks)); }
public Tank SpawnTank(string tankName) { if (Tanks.Count > MaxTanks || Tanks.ContainsKey(tankName)) { return(null); } tankName = $"{Id}_{tankName}"; var newTank = new Tank(this, tankName); Tanks.Add(tankName, newTank); return(newTank); }
public ActionResult Edit([Bind(Include = "TankID,TankType,TankVolume,TankWeight,TankMaterial")] Tanks tanks) { ViewBag.Title = "Емкости"; if (ModelState.IsValid) { db.Entry(tanks).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(tanks)); }
// GET: Tanks/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Tanks tanks = db.Tanks.Find(id); if (tanks == null) { return(HttpNotFound()); } return(View(tanks)); }
public void SetNewGameTanksParameters(int players) { Tanks.Clear(); Tanks.Add(P1Tank); AliveTanks = 1; if (players == 2) { Tanks.Add(P2Tank); AliveTanks = 2; } foreach (var tank in Tanks) { tank.SetNewGameParameters(); } }
// GET: Tanks/Delete/5 public ActionResult Delete(int?id) { ViewBag.Title = "Емкости"; if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Tanks tanks = db.Tanks.Find(id); if (tanks == null) { return(HttpNotFound()); } return(View(tanks)); }
public override string ToString() { return(new System.Text.StringBuilder(0x200) .AppendLine(" Network") .Append(" Nodes : ").Append(_nodes.Count).AppendLine() .Append(" Links : ").Append(_links.Count).AppendLine() .Append(" Pattern : ").Append(_patterns.Count).AppendLine() .Append(" Curves : ").Append(_curves.Count).AppendLine() .Append(" Controls : ").Append(_controls.Count).AppendLine() .Append(" Labels : ").Append(_labels.Count).AppendLine() .Append(" Rules : ").Append(_rules.Count).AppendLine() .Append(" Tanks : ").Append(Tanks.Count()).AppendLine() .Append(" Reservoirs : ").Append(Reservoirs.Count()).AppendLine() .Append(" Pumps : ").Append(Pumps.Count()).AppendLine() .Append(" Valves : ").Append(Valves.Count()).AppendLine() .ToString()); }
public FluidTank AddTank(String id, int transmitPin, int receivePin, int capacity, int minDistance = JSN_SR04T.MIN_DISTANCE, int maxDistance = JSN_SR04T.MAX_DISTANCE) { FluidTank ft = new FluidTank(transmitPin, receivePin, id); ft.Capacity = capacity; ft.MinDistance = minDistance; ft.MaxDistance = maxDistance; ft.Offset = 3; ft.SampleInterval = SampleInterval; ft.SampleSize = SampleSize; Tanks.Add(ft); AddDevice(ft); return(ft); }