Example #1
0
        public override GameMove GenerateMove(GameData gameData)
        {
            var hasGun = from actor in gameData.actorDataList
                         where actor.Name != name && actor.Items.Contains(Item.Gun) && actor.Hp > 0
                         select actor;

            if (hasGun.Count() != 0)
            {
                ActorData badGuy = hasGun.First();
                return(new GameMove(badGuy.CurrentLocation, GameAction.NormalAttack, badGuy.Name));
            }

            else if (gameData.actorDataList.Count <= 2)
            {
                var BadGuyLocation = from actor in gameData.actorDataList
                                     where actor.Name != name
                                     select actor.CurrentLocation;


                return(new GameMove(BadGuyLocation.First(), GameAction.NormalAttack, "*punch*"));
            }
            if (gameData.generatorHp > 0)
            {
                return(new GameMove(Location.Basement, GameAction.RepairGenerator, "I'm workwing werry hawd fwixing twis, owo"));
            }
            else if (gameData.gateHp > 0)
            {
                return(new GameMove(Location.Exit, GameAction.RepairGate, "*hits gate* owo, I dwid an oopsie woopsie"));
            }
            return(new GameMove(GameMove.GetRandomLocation(), GameMove.GetRandomAction()));
        }
Example #2
0
        public override GameMove GenerateMove(GameData gameData)
        {
            var query = from actor in gameData.actorDataList
                        where actor.Name == name
                        select actor;

            ActorData myData = query.First();

            if (myData.Hp <= 50 && myData.Items.Contains(Item.Medkit))
            {
                return(new GameMove(myData.CurrentLocation, GameAction.UseMedkit, myData.Name));
            }
            else if (!gameData.isMedkitTaken)
            {
                return(new GameMove(Location.Bathroom, GameAction.TakeMedkit));
            }
            else if (gameData.gateHp > 0)
            {
                return(new GameMove(Location.Exit, GameAction.RepairGate));
            }
            else if (gameData.generatorHp > 0)
            {
                return(new GameMove(Location.Basement, GameAction.RepairGenerator));
            }
            else
            {
                return(new GameMove(GameMove.GetRandomLocation(), GameMove.GetRandomAction()));
            }
        }
Example #3
0
        public override GameMove GenerateMove(GameData gameData)
        {
            var query = from actor in gameData.actorDataList
                        where actor.Name == name
                        select actor;

            ActorData myData = query.First();

            if (myData.Hp < 100 && myData.Items.Contains(Item.Medkit))
            {
                return(new GameMove(myData.CurrentLocation, GameAction.UseMedkit, myData.Name));
            }
            else if (gameData.actorDataList.Count <= 2)
            {
                return(new GameMove(GameMove.GetRandomLocation(), GameAction.Attack));
            }
            return(new GameMove(GameMove.GetRandomLocation(), GameMove.GetRandomAction()));
        }
Example #4
0
        public override GameMove GenerateMove(GameData gameData)
        {
            var myQuery = from actor in gameData.actorDataList
                          where actor.Name == name
                          select actor;

            ActorData myData = myQuery.First();

            var actorsAliveQuery = from actor in gameData.actorDataList
                                   where actor.Hp > 0
                                   select actor;

            if (myData.Hp < 74 && myData.Items.Contains(Item.Medkit))
            {
                return(new GameMove(myData.CurrentLocation, GameAction.UseMedkit, myData.Name, "I feel better."));
            }
            //if (gameData.isSafeUnlocked && !gameData.isGunTaken)
            //{
            //    return new GameMove(Location.Armory, GameAction.TakeGun, myData.Name, "I got the gun ! Get behind me, I'll protect you !");
            //}
            //if (!gameData.isMedkitTaken)
            //{
            //    return new GameMove(Location.Bathroom, GameAction.TakeMedkit, myData.Name, "I'm the support now, I'll take good care of you !");
            //}
            if (gameData.gateHp > 0)
            {
                return(new GameMove(Location.Exit, GameAction.RepairGate, myData.Name, "Let's get out of here !"));
            }
            if (gameData.generatorHp > 0)
            {
                return(new GameMove(Location.Basement, GameAction.RepairGenerator, myData.Name, "Let there be light !"));
            }

            if (actorsAliveQuery.Count() <= 2)
            {
                return(new GameMove(GameMove.GetRandomLocation(), GameAction.NormalAttack, "", "I don't wanna die!"));
            }
            return(new GameMove(GameMove.GetRandomLocation(), GameMove.GetRandomAction(), "", "Hmm..."));
        }
Example #5
0
        public override GameMove GenerateMove(GameData gameData)
        {
            var myQuery = from actor in gameData.actorDataList
                          where actor.Name == name
                          select actor;

            ActorData myData = myQuery.First();

            var actorsAliveQuery = from actor in gameData.actorDataList
                                   where actor.Hp > 0
                                   select actor;

            if (myData.Hp < 100 && myData.Items.Contains(Item.Medkit))
            {
                return(new GameMove(myData.CurrentLocation, GameAction.UseMedkit, myData.Name, "I feel better."));
            }
            else if (actorsAliveQuery.Count() <= 2)
            {
                return(new GameMove(GameMove.GetRandomLocation(), GameAction.NormalAttack, "", "I don't wanna die!"));
            }
            return(new GameMove(GameMove.GetRandomLocation(), GameMove.GetRandomAction(), "", "Hmm..."));
        }