private bool TryFindObjectToHide(float hideRange) { if (_targetHideObject != null) { return(true); } var hideObjects = new Collider[15]; var size = Physics.OverlapSphereNonAlloc(GetParentTransform().position, hideRange, hideObjects); foreach (var currHideObject in hideObjects) { if (currHideObject == null) { continue; } var hideObject = TryGetHideObject(currHideObject.gameObject); if (hideObject != null) { _targetHideObject = hideObject; return(true); } } return(false); }
public override void Finish() { base.Finish(); if (HideObjectInRange()) { HideInHideObject(); } _targetHideObject = null; }
// Start is called before the first frame update public virtual void Start() { SpriteRenderer = GetComponent <SpriteRenderer>(); if (SpriteRenderer == null) { SpriteRenderer = transform.GetComponentInChildren <SpriteRenderer>(); } HideObject = GetComponent <HideObject>(); }
public override void StopAi() { base.StopAi(); _targetHideObject = null; }