示例#1
0
        public override void Initiate()
        {
            var ai = (AILevels)Npc.Hangar.Ship.AI;

            switch (ai)
            {
            case AILevels.PASSIVE:
            case AILevels.AGGRESSIVE:
                CurrentNpc = new Basic(this);
                break;

            case AILevels.GALAXY_GATES:
            case AILevels.INVASION:
                CurrentNpc = new Aggressive(this);
                break;

            case AILevels.MOTHERSHIP:
                //CurrentNpc = new Mothership(this, World.StorageManager.Ships[81]);
                break;

            case AILevels.DAUGHTER:
                CurrentNpc = new Daughter(this);
                break;
            }
            Active = true;
            //Npc.Log.Write($"(ID: {Npc.Id}, {DateTime.Now}) Setted AI to {ai}");
            Checkers.Start();
            Task.Factory.StartNew(ActiveTick);
        }
示例#2
0
        public void Setup()
        {
            aggressive = new Aggressive();
            npc        = new Mock <INonPlayerCharacter>();
            room       = new Mock <IRoom>();

            npc.Setup(e => e.Room).Returns(room.Object);
        }
示例#3
0
        public void Setup()
        {
            GlobalReference.GlobalValues = new GlobalValues();

            aggressive = new Aggressive();
            npc        = new Mock <INonPlayerCharacter>();
            room       = new Mock <IRoom>();

            npc.Setup(e => e.Room).Returns(room.Object);
        }
示例#4
0
        public static void Main()
        {
            var    file = new StreamReader(@"input.txt");
            string line;
            int    counter = 1;

            while ((line = file.ReadLine()) != null)
            {
                string[] tokens  = line.Split(new [] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
                string   command = tokens[0];

                IBlob     player1;
                IBlob     player2;
                IBehavior behavior;
                IAttack   attack;
                if (tokens[4] == "Inflated")
                {
                    behavior = new Inflated();
                }
                else
                {
                    behavior = new Aggressive();
                }

                if (tokens[5] == "Blobplode")
                {
                    attack = new Blobplode();
                }
                else
                {
                    attack = new PutridFart();
                }

                switch (command)
                {
                case "create":
                    if (counter == 1)
                    {
                        player1 = new Blob(tokens[1], int.Parse(tokens[2]), int.Parse(tokens[3]), behavior, attack);
                    }
                    else
                    {
                        player2 = new Blob(tokens[1], int.Parse(tokens[2]), int.Parse(tokens[3]), behavior, attack);
                    }
                    break;

                case "status":
                }
            }
        }
 public Engine(
    IBlobFactory blobFactory,
    Data data,
    PutridFart putridFart,
    Blobplode blobplode,
    Aggressive aggressive,
    Inflated inflated,
    ConsoleReader reader,
    ConsoleWriter writer)
 {
     this.blobFactory = blobFactory;
     this.data = data;
     this.putridFart = putridFart;
     this.blobplode = blobplode;
     this.aggressive = aggressive;
     this.inflated = inflated;
     this.reader = reader;
     this.writer = writer;
 }
示例#6
0
    void Update()
    {
        _distance = CheckDistance(_agent, Player);

        AiAgressiveState = new Aggressive();
        AiNormalstate    = new Normal();

        if (Health > 50)
        {
            AgressiveAI();
        }
        else if (Health <= 50)
        {
            NormalAI();
        }
        else
        {
            AgressiveAI();
        }
    }
示例#7
0
文件: Minotaur.cs 项目: MeesMD/Mythe
 // Use this for initialization
 void Start()
 {
     state_passive = true;
     D_state       = gameObject.AddComponent <Defensive>();
     A_state       = gameObject.AddComponent <Aggressive>();
 }