protected virtual void UpdateSelectedTrigger() { if (selector == null) { return; } selectedTrigger = selector.GetBestTrigger(player, triggersInRange); }
protected void Awake() { _trigger = GetComponentInParent <TriggerBase>(); Assert.IsNotNull(_trigger, "TriggerRangeHandler used but no TriggerBase found on object."); _rigidbody2D = gameObject.GetOrAddComponent <Rigidbody2D>(); _rigidbody2D.isKinematic = true; _circleCollider = gameObject.GetOrAddComponent <CircleCollider2D>(); _circleCollider.isTrigger = true; _circleCollider.radius = useRange; gameObject.layer = 2; // Ignore raycasts }
protected void Awake() { _trigger = GetComponentInParent <TriggerBase>(); Assert.IsNotNull(_trigger, "TriggerRangeHandler used but no TriggerBase found on object."); _rigidbody = gameObject.GetOrAddComponent <Rigidbody>(); _rigidbody.useGravity = false; _rigidbody.isKinematic = true; _collider = gameObject.GetOrAddComponent <BoxCollider>(); _collider.isTrigger = true; _collider.center = new Vector3(0f, volume.y * 0.5f, 0f); _collider.size = volume; gameObject.layer = 2; // Ignore raycasts }
protected virtual void Update() { if (selectedTrigger != null) { var input = selectedTrigger.GetComponent <ITriggerInputHandler>(); if (input != null && input.AreKeysDown()) { input.Use(); selectedTrigger = null; // Clear it in case the trigger use removes the object. If not the next cycle will find the best trigger again. UpdateSelectedTrigger(); // selectedTrigger.Toggle(); } } else { UpdateSelectedTrigger(); } }
public virtual bool IsInRangeOfTrigger(TriggerBase trigger) { return(triggersInRange.Contains(trigger)); }
// protected static CursorIcon cursorIconBefore; protected virtual void Awake() { trigger = GetComponent <TriggerBase>(); Assert.IsNotNull(trigger, "TriggerInputHandlerBase used but no TriggerBase found on object."); }
private void Awake() { _rangeHandler = GetComponent <Devdog.General.TriggerBase>(); }