Beispiel #1
0
        static void Tile_SpriteCollision(Gondwana.Common.EventArgs.CollisionEventArgs e)
        {
            foreach (Collision collision in e.Collisions)
            {
                Sprite   sprite   = collision.SecondaryTile as Sprite;
                Movement movement = sprite.SpriteMovement;

                //switch (collision.CollisionDirectionFrom)
                //{
                //    case CollisionDirectionFrom.N:
                movement.Stop();

                movement.AddMovePoint(0.500, new PointF(sprite.GridCoordinates.X, sprite.GridCoordinates.Y - 1));
                movement.AddMovePoint(0.500, new PointF(sprite.GridCoordinates.X + 1, sprite.GridCoordinates.Y - 1));
                movement.AddMovePoint(0.500, new PointF(sprite.GridCoordinates.X + 1, sprite.GridCoordinates.Y));
                movement.AddMovePoint(0.500, new PointF(sprite.GridCoordinates.X, sprite.GridCoordinates.Y));

                movement.AddMovePoint(movement.CurrentMovePoint);
                //movement.AddMovePoint(movement.CurrentMovePoint.NextMovePoint);

                //movement.Start(1000, new PointF(sprite.GridCoordinates.X, sprite.GridCoordinates.Y - 1));
                //movement.AddMovePoint(500, new PointF(sprite.GridCoordinates.X, sprite.GridCoordinates.Y - (float)1.5));
                //MessageBox.Show("total time: " + movement.TimeRemaining.ToString());
                movement.Start();
                //    break;
                //case CollisionDirectionFrom.NE:
                //    break;
                //case CollisionDirectionFrom.E:
                //    break;
                //case CollisionDirectionFrom.SE:
                //    break;
                //case CollisionDirectionFrom.S:
                //    break;
                //case CollisionDirectionFrom.SW:
                //    break;
                //case CollisionDirectionFrom.W:
                //    break;
                //case CollisionDirectionFrom.NW:
                //    break;
                //case CollisionDirectionFrom.Center:
                //    break;
                //}
            }
        }