// Update is called once per frame void bLogic(GameObject build) { if (build == this.gameObject) { buildLogic logic = GetComponent <buildLogic> (); logic.enabled = true; } }
void Start() { GameObject temp = GameObject.Find("resourceManager"); bLogic = GetComponent <buildLogic> (); playerID = bLogic.playerID; rManager = temp.GetComponent <resourceManager> (); spawnPoint = bLogic.interfaceMarker.transform.position; techLevel = 1; }
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; } } } }