private void MoveToRandomNearbyPosition() { Vector3 nearbyPosition = GenerateRandomNearbyPosition(); // TODO (darren): validate nearby position with nav-mesh coroutine_ = CoroutineWrapper.StartCoroutine(MoveToPosition(nearbyPosition)); }
protected override void OnStateEntered() { movementAction_.Init(StateMachine_); CoroutineWrapper.DoAfterDelay(StateMachine_.AIConfiguration.RandomReactionTime(), () => { StateMachine_.InputState.LaserPressed = false; if (UnityEngine.Random.Range(0.0f, 1.0f) <= kCluckChance) { coroutine_ = CoroutineWrapper.StartCoroutine(DoCluckCoroutine()); } }); }
// PRAGMA MARK - Public Interface public void SetupWithViewIdQuantity(IViewIdQuantity viewIdQuantity) { this._viewIdQuantity = viewIdQuantity; DTEntity entity = this._viewIdQuantity.Entity; DisplayComponent displayComponent = entity.GetComponent <DisplayComponent>(); if (displayComponent != null) { this._renderer.sprite = displayComponent.displaySprite; } this._autoTapCoroutine = CoroutineWrapper.StartCoroutine(this.AutoTapCoroutine()); }
public static void Shake(this Transform transform, float magnitude, float duration, EaseType easeType = EaseType.QuadraticEaseOut, bool returnToOriginalPosition = true) { if (coroutineMap_.ContainsKey(transform)) { coroutineMap_[transform].Cancel(); coroutineMap_.Remove(transform); if (originalPositionMap_.ContainsKey(transform)) { transform.position = originalPositionMap_[transform]; originalPositionMap_.Remove(transform); } } if (returnToOriginalPosition) { originalPositionMap_[transform] = transform.position; } coroutineMap_[transform] = CoroutineWrapper.StartCoroutine(ShakeCoroutine(transform, magnitude, duration, easeType)); }
/// <summary> /// ???????????? /// </summary> /// <param name="sec"></param> /// <param name="ev"></param> public static void EXES(float sec, Action ev) { inst.StartCoroutine(inst.ExeDelayS(sec, ev)); }
protected override void OnStateEntered() { movementAction_.Init(StateMachine_); checkDashAttackCoroutine_ = CoroutineWrapper.StartCoroutine(CheckDashAttack()); }