예제 #1
0
        private static VectorAI PrincessTowerCharacterDeploymentCorrection(VectorAI position, Playfield p, Handcard hc)
        {
            //Logger.Debug("PT Characer Position Correction: Name und Typ {0} " + cardToDeploy.Name, (cardToDeploy as CardCharacter).Type);
            VectorAI result = new VectorAI(0, 0);

            if (hc.card.type == boardObjType.MOB)
            {
                if (hc.card.MaxHP >= Apollo.Settings.MinHealthAsTank)
                {
                    position.SubtractYInDirection(p);
                    return(position);
                }
                else
                {
                    position.AddYInDirection(p);
                    return(position);
                }
            }
            else if (hc.card.type == boardObjType.BUILDING)
            {
                return(GetPositionOfTheBestBuildingDeploy(p));
            }
            //else
            //    Logger.Debug("Tower Correction: No Correction!!!");

            return(position);
        }
예제 #2
0
        public static VectorAI GetPositionOfTheBestBuildingDeploy(Playfield p)
        {
            // ToDo: Find the best position
            VectorAI nextPosition = p.ownKingsTower.Position;

            nextPosition.AddYInDirection(p, 3000);
            return(nextPosition);
        }