예제 #1
0
    protected override void onUpdate()
    {
        base.onUpdate();
        int aiLevel = 0;

        for (int i = 0; i < stationNPC.Length; i++)
        {
            if (stationNPC[i] != null && stationNPC[i].IsInGarrison)
            {
                aiLevel++;
            }
        }
        AILevel = (TowerdDeffenceAILevel)aiLevel;
    }
예제 #2
0
    protected override void Start()
    {
        MainFlag.GetComponent <Damagable>().damageHandler += Tower_damageHandler;
        SetNPCType(type);

        BreadCount = INITIAL_BREAD_COUNT;
        AILevel    = TowerdDeffenceAILevel.AttackNearest;
        base.Start();
        InvokeRepeating("CastBuff", 0, BUFF_CAST_INTERVAL);
        InvokeRepeating("UpdateOccupiedValue", 0, OCCUPIED_CALCULATE_INTERVAL);
        InvokeRepeating("MakeBread", 0, CREATE_BREAD_INTERVAL);
        InvokeRepeating("CreateFollower", 0, CREATE_FOLLOWER_INTERVAL);
        InvokeRepeating("CommandFollowerDefence", 0, AITimeInterval);
        InvokeRepeating("TowerInvadeAI", 0, InvadeAIInterval);
    }