public override void SetAction() { ForceManagerSystem forceManager = EventsManager.GetIstance <ForceManagerSystem>(); transform.rotation = QuaternionExtend.CalculateRotation2D(Take <Vector2>("direction")); forceManager.EnableForce(gameObject.GetInstanceID()); forceManager.AddForce(gameObject.GetInstanceID(), "movement", Take <Vector2>("direction") * speed); }
public void Move(float valueInput) { auxVector = Vector2.right * valueInput * speed; if (valueInput != 0) { notifyDirection.Invoke(auxVector.normalized); } if (!isGrounded) { auxVector *= percentMovementInAir; } forceManager.AddForce(id, nameMovementForce, auxVector); }
public void SetMovement(Vector2 valueInput) { CalculateDirection(valueInput); forceManager.AddForce(ID, "movement", valueInput * speed); }