private void OnTriggerEnter(Collider other) { VisitObjective visitObjective = other.GetComponent <VisitObjective>(); if (visitObjective) { ObjectiveRegistry.AddTime(visitObjective.visit()); } PickupObjective pickupObjective = other.GetComponent <PickupObjective>(); if (pickupObjective) { if (!pickedUp) { pickupObjective.Pickup(); pickedUp = pickupObjective.gameObject; pickedUp.transform.SetParent(transform); pickedUp.transform.localPosition = transform.rotation * -transform.forward; Destroy(pickupObjective); } } DropObjective dropObjective = other.GetComponent <DropObjective>(); if (dropObjective) { if (pickedUp) { ObjectiveRegistry.AddTime(dropObjective.drop(pickedUp)); pickedUp = null; } } }
private void Start() { ObjectiveRegistry.AddObjective(); ParticleSystem particleSystem = GetComponent <ParticleSystem>(); if (particleSystem) { particleSystem.Stop(); } }
public float visit() { if (visited) { return(0); } visited = true; ObjectiveRegistry.CompleteObjective(); image.color = new Color(0.22f, 0.8f, 0.18f, 0.66f); Destroy(gameObject, 0.1f); return(additionalTime); }
public float drop(GameObject pickedUp) { if (visited) { return(0); } visited = true; ObjectiveRegistry.CompleteObjective(); image.color = new Color(0.22f, 0.8f, 0.18f, 0.66f); pickedUp.transform.SetParent(transform); pickedUp.transform.localPosition = transform.up / 2; ParticleSystem particleSystem = GetComponent <ParticleSystem>(); if (particleSystem) { particleSystem.Play(); } return(additionalTime); }
private void Start() { ObjectiveRegistry.AddObjective(); }
public void Pickup() { ObjectiveRegistry.CompleteObjective(); image.color = new Color(0.22f, 0.8f, 0.18f, 0.66f); }