public static void StartFalling(this Entity2D entity, Vector2D velocity, Vector2D gravity) { AddSimplePhysicsDataIfNeeded(entity); entity.Get <SimplePhysics.Data>().Velocity = velocity; entity.Get <SimplePhysics.Data>().Gravity = gravity; entity.Start <SimplePhysics.Move>(); }
public static void StartBouncingOffScreenEdges(this Entity2D entity, Vector2D velocity, Action bounced) { AddSimplePhysicsDataIfNeeded(entity); entity.Get <SimplePhysics.Data>().Velocity = velocity; entity.Get <SimplePhysics.Data>().Bounced = bounced; entity.Start <SimplePhysics.Move>(); entity.Start <SimplePhysics.BounceIfAtScreenEdge>(); }
public static void StartRotating(this Entity2D entity, float rotationSpeed) { AddSimplePhysicsDataIfNeeded(entity); entity.Get <SimplePhysics.Data>().RotationSpeed = rotationSpeed; entity.Start <SimplePhysics.Rotate>(); }