Esempio n. 1
0
        public virtual void UpdateAnimationTree(AnimationTree tree)
        {
            bool move = false;
            //Degree moveAngle = 0;
            float moveSpeed = 0;

            if (MainBodyVelocity.ToVec2().Length() > .1f)
            {
                move      = true;
                moveSpeed = (Rotation.GetInverse() * MainBodyVelocity).X;
            }

            tree.SetParameterValue("move", move ? 1 : 0);
            //tree.SetParameterValue( "moveAngle", moveAngle );
            tree.SetParameterValue("moveSpeed", moveSpeed);
        }
Esempio n. 2
0
        public override void UpdateAnimationTree(AnimationTree tree)
        {
            bool move = false;
            //Degree moveAngle = 0;
            float moveSpeed = 0;

            if (MainBodyVelocity.ToVec2().Length() > .1f)
            {
                move      = true;
                moveSpeed = (Rotation.GetInverse() * MainBodyVelocity).X;
            }

            tree.SetParameterValue("idle", move ? 0 : 1);
            tree.SetParameterValue("move", move ? 1 : 0);
            tree.SetParameterValue("run", move && IsRunning ? 1 : 0);

            if (!IsRunning && moveSpeed > 1.5f)
            {
                moveSpeed = 1.5f;
            }

            tree.SetParameterValue("moveSpeed", moveSpeed);
        }