예제 #1
0
    void inProgress()
    {
        foreach (baseAI outpost in Outposts)
        {
            //		Debug.Log ("step 1");

            if (outpost.ID <= outpostIndex)
            {
                int i = 0;

                while (i < outpost.structs.Count)
                {
                    baseStruct currStruct = outpost.structs[i];

                    if (currStruct.state != true)
                    {
                        if (currStruct.state == false)
                        {
                            if (currStruct.structure.GetComponent <buildLogic> ().built == true)
                            {
                                outpost.structs[i].state = true;
                                if (i == 4)
                                {
                                    Order reconOrder = new Order(Order.Type.Recon, playerID, (outpostIndex + 1));
                                    Debug.Log("Recon Order");
                                    eventManager.InitOrder(reconOrder, null, 0, playerID);
                                    // Request Recon (playerID, outposts[(outpostIndex+1)]);
                                }
                            }
                            i = outpost.structs.Count;
                        }

                        if (currStruct.state == null)
                        {
                            Debug.Log("in build");
                            GameObject tempGo = checkBuild(currStruct.type, outpost.ID);

                            if (tempGo != null)
                            {
                                issueMineOrder = true;
                                outpost.structs [i].structure = tempGo;
                                outpost.structs [i].state     = false;
                            }
                            else
                            {
                                if (issueMineOrder == true)
                                {
                                    Order mineOrder = new Order(Order.Type.Mine, playerID, outpost.ID);
                                    eventManager.InitOrder(mineOrder, null, 0, playerID);
                                    issueMineOrder = false;
                                }
                            }
                            i = outpost.structs.Count;
                        }
                    }
                    i++;
                }
            }
        }
    }
예제 #2
0
    public baseAI(Vector3 Focal, List <buildSlot> BuildSlots, int id)
    {
        ID         = id;
        focal      = Focal;
        buildSlots = BuildSlots;
        hq         = new baseStruct(1);
        refinery   = new baseStruct(3);
        power      = new baseStruct(2);
        factory    = new baseStruct(8);
        research   = new baseStruct(9);
        silo1      = new baseStruct(5);
        silo2      = new baseStruct(5);
        silo3      = new baseStruct(5);
        tower1     = new baseStruct(12);
        tower2     = new baseStruct(12);
        tower3     = new baseStruct(12);
        tower4     = new baseStruct(12);

        structs = new List <baseStruct> ();
    }