コード例 #1
0
ファイル: Challenge.cs プロジェクト: Godovich/Skillz17
        private static void Handle12221()
        {
            int id = -1;

            DecoyHandler.Handle(ref id);

            var island0 = Globals.Game.GetAllIslands()[0];
            var enemies = Globals.Game.GetEnemyLivingPirates();

            foreach (var pirate in Globals.Game.GetMyLivingPirates())
            {
                if (enemies.Any(x => pirate.InAttackRange(x)))
                {
                    var enemy = enemies.First(x => pirate.InAttackRange(x));
                    Globals.Game.Attack(pirate, enemy);

                    if (enemy.CurrentHealth == 1)
                    {
                        enemies.Remove(enemy);
                    }

                    continue;
                }

                if (!pirate.Location.IsEqualTo(island0.Location))
                {
                    Move(pirate, island0.Location);
                }
            }

            DroneHandler.Handle();
        }
コード例 #2
0
        public void DoTurn(PirateGame game)
        {
            Globals.Game   = game;
            Globals.Drones = new DroneGroups();

            // Debug initialization
            if (Globals.Game.GetTurn() == 1)
            {
                Globals.Game.Debug(" - Javier, v3.0.0");
            }

            // Handle challenges
            Debug.Write("Opponent: " + Globals.Game.GetOpponentName());
            if (Challenge.Handle(Globals.Game.GetOpponentName()))
            {
                return;
            }

            // Handle enemy decoy
            DecoyDetector.Update(game.GetEnemyLivingPirates());
            DecoyDetector.Detect();

            // Move drones towards home
            DroneHandler.Handle();

            // Handle friendly decoy
            int id = -1;

            DecoyHandler.Handle(ref id);

            // Handle pirates
            HandlePirates(id);

            // Handle decoy movement
            HandleDecoyMovement();
        }