public override bool CheckProceduralPrecondition(GameObject _agent) { Caveman[] men = FindObjectsOfType <Caveman>(); Caveman closest = null; float dist = 0; foreach (Caveman w in men) { if (closest == null) { closest = w; dist = Vector3.Distance(transform.position, w.transform.position); } else { float dist2 = Vector3.Distance(transform.position, w.transform.position); if (dist > dist2) { closest = w; dist = dist2; } } } if (closest != null) { targetCaveman = closest; target = targetCaveman.gameObject; } return(closest != null); }
public override bool Preform(GameObject _agent) { Caveman cm = _agent.GetComponent <Caveman>(); cm.energy -= cost; shelter = true; return(true); }
public override bool Preform(GameObject _agent) { Caveman cm = _agent.GetComponent <Caveman>(); cm.energy -= cost; targetItem.PickupItem(cm); pickedUp = true; return(true); }
public override bool Preform(GameObject _agent) { Caveman cm = _agent.GetComponent <Caveman>(); cm.energy -= cost; BackpackComponent bp = _agent.GetComponent <BackpackComponent>(); bp.spears++; pickedUp = true; return(true); }
public override bool Preform(GameObject _agent) { if (startTime == 0) { startTime = Time.time; } if (Time.time - startTime > killDuration) { Caveman cm = _agent.GetComponent <Caveman>(); cm.energy -= cost; killed = true; targetAnimal.Die(); } return(true); }
public override bool Preform(GameObject _agent) { if (startTime == 0) { startTime = Time.time; } if (Time.time - startTime > harvestDuration) { Caveman cm = _agent.GetComponent <Caveman>(); cm.energy -= cost; targetTree.ChopDown(); chopped = true; } return(true); }
public override bool Preform(GameObject _agent) { if (startTime == 0) { startTime = Time.time; } if (Time.time - startTime > harvestDuration) { Caveman cm = _agent.GetComponent <Caveman>(); cm.energy -= cost; targetCarcass.Loot(); BackpackComponent bp = _agent.GetComponent <BackpackComponent>(); bp.rawFood++; harvested = true; } return(true); }
public void PickupItem(Caveman caveman) { switch (item) { case PickupType.Wood: caveman.backpack.wood++; break; case PickupType.Stick: caveman.backpack.sticks++; break; case PickupType.Rock: caveman.backpack.rocks++; break; } Destroy(gameObject); }
public override bool Preform(GameObject _agent) { if (startTime == 0) { startTime = Time.time; } if (Time.time - startTime > cookDuration) { Caveman cm = _agent.GetComponent <Caveman>(); cm.energy -= cost; BackpackComponent bp = _agent.GetComponent <BackpackComponent>(); bp.rawFood--; bp.food++; cooked = true; } return(true); }
public override bool Preform(GameObject _agent) { if (startTime == 0) { startTime = Time.time; } if (Time.time - startTime > makeDuration) { Caveman cm = _agent.GetComponent <Caveman>(); cm.energy -= cost; cm.AddSpears(3); BackpackComponent bp = _agent.GetComponent <BackpackComponent>(); bp.rocks--; bp.sticks--; made = true; } return(true); }
public override bool Preform(GameObject _agent) { if (startTime == 0) { startTime = Time.time; } if (Time.time - startTime > makeDuration) { Caveman cm = _agent.GetComponent <Caveman>(); cm.energy -= cost; BackpackComponent bp = GetComponent <BackpackComponent>(); bp.wood--; GameObject prefab = Resources.Load <GameObject>("CampFire"); Instantiate(prefab, transform.position + transform.forward * 2 - transform.up, transform.rotation); made = true; } return(true); }
public override bool Preform(GameObject _agent) { if (startTime == 0) { startTime = Time.time; } if (targetAnimal == null) { killed = true; return(true); } Caveman cm = _agent.GetComponent <Caveman>(); if (!cm.ThrowSpear(targetAnimal.gameObject)) { return(false); } return(true); }
public void Claim(Caveman _claimer) { claimText.gameObject.SetActive(true); claimer = _claimer; claimText.text = claimer.gameObject.name + "'s Cave"; }
void Awake() { caveman = FindObjectOfType <Caveman>(); }
public override void Reset() { isSafe = false; targetCaveman = null; }