Beispiel #1
0
        public override bool Evaluate(uint frame, uint endFrame,
                                      CAF.Entities.EntityManager controller, AttackEventVariables variables)
        {
            EntityManager        e = (EntityManager)controller;
            EntityPhysicsManager physicsManager = (EntityPhysicsManager)controller.PhysicsManager;
            Vector3 f = Vector3.zero;

            if (xForce)
            {
                f.x = variables.floatVars[0] * e.FaceDirection;
            }
            if (yForce)
            {
                f.y = variables.floatVars[1];
            }

            if (yForce)
            {
                physicsManager.forceGravity.y = f.y;
            }
            if (xForce)
            {
                f.y = 0;
                physicsManager.forceMovement = f;
            }
            return(false);
        }
        public override bool Evaluate(uint frame, uint endFrame,
                                      CAF.Entities.EntityManager controller, AttackEventVariables variables)
        {
            TUF.Entities.EntityPhysicsManager physicsManager = (TUF.Entities.EntityPhysicsManager)controller.PhysicsManager;

            Vector3 f = Vector3.zero;

            if (xzForce)
            {
                f.x = variables.floatVars[0];
                f.z = variables.floatVars[1];
            }
            if (yForce)
            {
                f.y = variables.floatVars[2];
            }

            f = controller.GetVisualBasedDirection(f);

            if (yForce)
            {
                physicsManager.forceGravity.y += f.y;
            }
            if (xzForce)
            {
                f.y = 0;
                physicsManager.forceMovement += f;
            }
            return(false);
        }
 public override bool Evaluate(uint frame, uint endFrame,
                               CAF.Entities.EntityManager controller, AttackEventVariables variables)
 {
     TUF.Entities.EntityPhysicsManager physicsManager = (TUF.Entities.EntityPhysicsManager)controller.PhysicsManager;
     physicsManager.forceMovement = Vector3.ClampMagnitude(physicsManager.forceMovement,
                                                           variables.floatVars[0]);
     return(false);
 }
 public override bool Evaluate(uint frame, uint endFrame,
                               CAF.Entities.EntityManager controller, AttackEventVariables variables)
 {
     TUF.Entities.EntityPhysicsManager physicsManager = (TUF.Entities.EntityPhysicsManager)controller.PhysicsManager;
     physicsManager.forceGravity.y = Mathf.Clamp(physicsManager.forceGravity.y,
                                                 variables.floatVars[0], variables.floatVars[1]);
     return(false);
 }
Beispiel #5
0
        public override bool Evaluate(uint frame, uint endFrame,
                                      CAF.Entities.EntityManager controller, AttackEventVariables variables)
        {
            TUF.Entities.EntityPhysicsManager physicsManager = (TUF.Entities.EntityPhysicsManager)controller.PhysicsManager;

            Vector3 f       = Vector3.zero;
            float   percent = (float)frame / (float)endFrame;

            if (xForce)
            {
                f.x = variables.curveVars[0].Evaluate(percent)
                      * variables.floatVars[0];
            }
            if (yForce)
            {
                f.y = variables.curveVars[1].Evaluate(percent)
                      * variables.floatVars[1];
            }
            if (zForce)
            {
                f.z = variables.curveVars[2].Evaluate(percent)
                      * variables.floatVars[2];
            }

            float tempY = f.y;

            f = controller.GetVisualBasedDirection(f);

            // Set Mode
            if (variables.intVars[0] == 0)
            {
                if (yForce)
                {
                    physicsManager.forceGravity.y = tempY;
                }
                if (xForce || zForce)
                {
                    f.y = 0;
                    physicsManager.forceMovement = f;
                }
            }
            else
            {
                if (yForce)
                {
                    physicsManager.forceGravity.y += f.y;
                }
                if (xForce || zForce)
                {
                    f.y = 0;
                    physicsManager.forceMovement += f;
                }
            }
            return(false);
        }
        public override bool Evaluate(uint frame, uint endFrame,
                                      CAF.Entities.EntityManager controller, AttackEventVariables variables)
        {
            TUF.Entities.EntityManager c     = (TUF.Entities.EntityManager)controller;
            SoundDefinition            sound = c.GameManager.ModManager.GetSoundDefinition(((ModObjectLink)variables.objectVars[0]).reference);

            if (sound)
            {
                SoundManager.Play(sound, 0, controller.transform);
            }
            return(false);
        }
        public override bool Evaluate(uint frame, uint endFrame,
                                      CAF.Entities.EntityManager controller, AttackEventVariables variables)
        {
            TUF.Entities.EntityPhysicsManager physicsManager = (TUF.Entities.EntityPhysicsManager)controller.PhysicsManager;

            if (xzFriction)
            {
                physicsManager.ApplyMovementFriction(variables.floatVars[0]);
            }
            if (yFriction)
            {
                physicsManager.ApplyGravityFriction(variables.floatVars[0]);
            }
            return(false);
        }
Beispiel #8
0
        public override bool Evaluate(uint frame, uint endFrame,
                                      CAF.Entities.EntityManager controller, AttackEventVariables variables)
        {
            EntityPhysicsManager physicsManager = (EntityPhysicsManager)controller.PhysicsManager;

            if (controller.IsGrounded)
            {
                physicsManager.forceGravity = Vector3.zero;
                return(false);
            }
            EntityStats entityStats = ((TDAction.Entities.EntityManager)controller).entityDefinition.GetEntityStats();
            float       percent     = (float)frame / (float)endFrame;

            float gravity = entityStats.gravity;

            if (!useEntityGravity)
            {
                gravity = variables.curveVars[0].Evaluate(percent)
                          * variables.floatVars[0];
            }

            float gravityScale = physicsManager.GravityScale;

            if (!useEntityGravityScale)
            {
                gravityScale = variables.curveVars[1].Evaluate(percent)
                               * variables.floatVars[1];
            }

            float maxFallSpeed = entityStats.maxFallSpeed;

            if (!useEntityMaxFallSpeed)
            {
                maxFallSpeed = variables.curveVars[2].Evaluate(percent)
                               * variables.floatVars[2];
            }

            physicsManager.HandleGravity(maxFallSpeed, gravity, gravityScale);
            return(false);
        }
Beispiel #9
0
 public override bool Evaluate(uint frame, uint endFrame,
                               CAF.Entities.EntityManager controller, AttackEventVariables variables)
 {
     return(base.Evaluate(frame, endFrame, controller, variables));
 }
Beispiel #10
0
 public override bool Evaluate(uint frame, uint endFrame, CAF.Entities.EntityManager controller, AttackEventVariables variables)
 {
     controller.CombatManager.SetAttack((MovesetAttackNode)variables.objectVars[0]);
     controller.StateManager.ChangeState((int)EntityStates.ATTACK, resetFrameCounter ? 0 : controller.StateManager.CurrentStateFrame);
     return(true);
 }