Beispiel #1
0
        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);
        }
Beispiel #2
0
    void OnFireUnpressed()
    {
        player.GetComponent <Animator>().ResetTrigger("WingsHaveFlapped");

        playerRigidbody.AddForce(Physics2D.gravity * playerRigidbody.gravityScale);

        FixedUpdateFunc = () => { };
    }
Beispiel #3
0
    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);
            }
        };
    }
Beispiel #4
0
    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 = () => { };
    }
Beispiel #5
0
        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;
                    }
                }
            }
        }
Beispiel #6
0
 public void ClearFixedTicks()
 {
     _fixedTicks -= _fixedTicks;
 }
Beispiel #7
0
 public void AddFixedTick(IFixedTick fixedTick)
 {
     _fixedTicks += fixedTick.FixedUpdate;
 }
Beispiel #8
0
 public void RemoveFixedTick(IFixedTick fixedTick)
 {
     _fixedTicks -= fixedTick.FixedUpdate;
 }
Beispiel #9
0
 private void ClearFixedTicks()
 {
     _fixedTicks -= _fixedTicks;
 }