Example #1
0
 // Update is called once per frame
 void bLogic(GameObject build)
 {
     if (build == this.gameObject)
     {
         buildLogic logic = GetComponent <buildLogic> ();
         logic.enabled = true;
     }
 }
Example #2
0
    void Start()
    {
        GameObject temp = GameObject.Find("resourceManager");

        bLogic     = GetComponent <buildLogic> ();
        playerID   = bLogic.playerID;
        rManager   = temp.GetComponent <resourceManager> ();
        spawnPoint = bLogic.interfaceMarker.transform.position;
        techLevel  = 1;
    }
Example #3
0
    void onOrder(Order order, GameObject unit, int statusCode, int ID)
    {
        if (order.playerID == playerID)
        {
            if (unit == this.gameObject)
            {
                if (debugActive)
                {
                    Debug.Log("Order Recieved: " + name);
                }

                cMemory = order;

                if (order._type == Order.Type.Move || order._type == Order.Type.Recon)
                {
                    navTarget = order.navTarget;
                    _Logic_2  = _Logic_1;
                    _state    = State.Move;
                    _Logic_1  = _state;

                    _moveState = moveState.moveInit;
                    return;
                }

                if (order._type == Order.Type.Attack)
                {
                    if (_type == Type.mGun || _type == Type.missile)
                    {
                        if (order.unitTarget.tag == "Friendly")
                        {
                            if (order.unitTarget.GetComponent <unitAgent> ().playerID != playerID)
                            {
                                _Logic_2 = _Logic_1;
                                _state   = State.Attack;
                                _Logic_1 = _state;

                                navTarget = order.navTarget;
                                target    = order.unitTarget;

                                _moveState = moveState.moveInit;
                                return;
                            }
                        }

                        if (order.unitTarget.tag == "Structure")
                        {
                            if (order.unitTarget.GetComponent <buildLogic> ().playerID != playerID)
                            {
                                _Logic_2 = _Logic_1;
                                _state   = State.Attack;
                                _Logic_1 = _state;

                                navTarget = order.navTarget;
                                target    = order.unitTarget;

                                _moveState = moveState.moveInit;
                                return;
                            }
                        }

                        if (order.unitTarget.tag == "Resource")
                        {
                            if (isAggressive == true)
                            {
                                _Logic_2 = _Logic_1;
                                _state   = State.Attack;
                                _Logic_1 = _state;

                                navTarget = order.navTarget;
                                target    = order.unitTarget;

                                _moveState = moveState.moveInit;
                                return;
                            }
                            else
                            {
                                cMemory._type = Order.Type.Move;

                                _Logic_2 = _Logic_1;
                                _state   = State.Move;
                                _Logic_1 = _state;

                                navTarget = order.navTarget;
                                target    = null;

                                _moveState = moveState.moveInit;
                                return;
                            }
                        }
                    }

                    if (_type == Type.miner)
                    {
                        if (order.unitTarget.tag == "Resource")
                        {
                            _Logic_2 = _Logic_1;
                            _state   = State.Mine;
                            _Logic_1 = _state;

                            _mineState = mineState.Mine;

                            navTarget = order.navTarget;
                            target    = order.unitTarget;

                            _moveState = moveState.moveInit;
                            return;
                        }

                        if (order.unitTarget.tag == "Structure")
                        {
                            buildLogic bLogic = order.unitTarget.GetComponent <buildLogic> ();

                            if (bLogic.playerID == playerID && bLogic._type == buildLogic.Type.Refinery)
                            {
                                _Logic_2 = _Logic_1;
                                _state   = State.Mine;
                                _Logic_1 = _state;

                                _mineState = mineState.Unload;

                                navTarget = order.navTarget;
                                target    = order.unitTarget;

                                _moveState = moveState.moveInit;
                                return;
                            }
                        }
                    }

                    if (_type == Type.utility)
                    {
                        if (order.unitTarget.tag == "Friendly")
                        {
                            if (order.unitTarget.GetComponent <unitAgent> ().playerID == playerID)
                            {
                                _Logic_2 = _Logic_1;
                                _state   = State.Repair;
                                _Logic_1 = _state;

                                navTarget = order.navTarget;
                                target    = order.unitTarget;

                                _moveState = moveState.moveInit;
                                return;
                            }
                        }
                        if (order.unitTarget.tag == "betaStructure")
                        {
                            buildLogic bLogic = order.unitTarget.GetComponent <buildLogic> ();

                            if (bLogic.playerID == playerID)
                            {
                                _Logic_2 = _Logic_1;
                                _state   = State.Build;
                                _Logic_1 = _state;

                                navTarget = order.navTarget;
                                target    = order.unitTarget;

                                _moveState = moveState.moveInit;
                                return;
                            }
                        }
                    }
                }

                if (order._type == Order.Type.Patrol)
                {
                    patrolA = order.patrolA;
                    patrolB = order.patrolB;

                    _Logic_2 = _Logic_1;
                    _state   = State.Patrol;
                    _Logic_1 = _state;

                    _moveState = moveState.moveInit;
                    return;
                }
            }
        }
    }