public bool joinFixedUpdateCallBack(FixedUpdateDelegate fun) { if (fixedUpdateDelegate != null) { System.Delegate[] dArr = fixedUpdateDelegate.GetInvocationList(); foreach (var item in dArr) { if (!item.Equals(fun)) { fixedUpdateDelegate += fun; return(true); } else { break; } } } else { fixedUpdateDelegate += fun; return(true); } return(false); }
void OnFireUnpressed() { player.GetComponent <Animator>().ResetTrigger("WingsHaveFlapped"); playerRigidbody.AddForce(Physics2D.gravity * playerRigidbody.gravityScale); FixedUpdateFunc = () => { }; }
void OnFirePressed() { player.GetComponent <Animator>().SetTrigger("WingsHaveFlapped"); playerRigidbody.velocity = Vector2.zero; // player.transform.rotation = Quaternion.identity; jumpStartTime = Time.time; playerRigidbody.velocity = Vector2.zero; FixedUpdateFunc = () => { if (Time.time - jumpStartTime < .1f) { playerRigidbody.AddForce(-Physics2D.gravity * playerRigidbody.gravityScale * playerParams.jumpForceScale); } }; }
public GameStatePlay(GameController gc, Action onFinishAction) : base(gc, onFinishAction) { playerRigidbody = player.GetComponent <Rigidbody2D>(); playerRigidbody.simulated = true; player.GetComponent <Collider2DEventsHandler>().onCollisionEnter2D += OnPlayerCollisionEnter; player.GetComponent <Collider2DEventsHandler>().onTriggerExit2D += OnPlayerCollisionExit; inputSystem.AddInputHandler("Fire1", OnFirePressed, () => { }, OnFireUnpressed ); playerRigidbody.AddForce(-Physics2D.gravity * playerRigidbody.gravityScale * playerParams.jumpForceScale); player.GetComponent <Animator>().ResetTrigger("GameHasStarted"); FixedUpdateFunc = () => { }; }
public void removeFixedUpdateCallBack(FixedUpdateDelegate fun) { if (fixedUpdateDelegate == null) { return; } System.Delegate[] dArr = fixedUpdateDelegate.GetInvocationList(); if (null != dArr) { foreach (var item in dArr) { if (item.Equals(fun)) { fixedUpdateDelegate -= fun; break; } } } }
public void ClearFixedTicks() { _fixedTicks -= _fixedTicks; }
public void AddFixedTick(IFixedTick fixedTick) { _fixedTicks += fixedTick.FixedUpdate; }
public void RemoveFixedTick(IFixedTick fixedTick) { _fixedTicks -= fixedTick.FixedUpdate; }
private void ClearFixedTicks() { _fixedTicks -= _fixedTicks; }