Esempio n. 1
0
        private void LoadItem(RaceState racetrack, string assetName, int x, int y, int rotation)
        {
            Body    item        = new Body(Vector2.Zero, assetName);
            Vector2 centerPoint = new Vector2(item.Width * 0.5f, -item.Height * 0.5f); //weird Tiled bottom-left offset

            centerPoint   = Vector2.Transform(centerPoint, Matrix.CreateRotationZ(MathHelper.ToRadians(rotation)));
            item.Position = new Vector2(x, y) + centerPoint;
            item.Degrees  = rotation;

            racetrack.Add(item);
        }
Esempio n. 2
0
 public void LoadLevel(RaceState racetrack)
 {
     LoadItem(racetrack, "tree_large", 2288, 1229, 0); //just a bunch of data from 'Tiled'
     LoadItem(racetrack, "tree_large", 2353, 1294, 0);
     LoadItem(racetrack, "tree_large", 2554, 1403, 0);
     LoadItem(racetrack, "tree_large", 2471, 1530, 0);
     LoadItem(racetrack, "tree_large", 3646, 683, 0);
     LoadItem(racetrack, "tree_large", 3751, 774, 0);
     LoadItem(racetrack, "tree_large", 4000, 696, 0);
     LoadItem(racetrack, "tree_large", 4349, 630, 0);
     LoadItem(racetrack, "tree_large", 869, 622, 0);
     LoadItem(racetrack, "tree_large", 939, 709, 0);
     LoadItem(racetrack, "tree_large", 554, 787, 0);
     LoadItem(racetrack, "tree_large", 567, 1036, 0);
     LoadItem(racetrack, "tree_large", 720, 1071, 0);
     LoadItem(racetrack, "tree_large", 877, 966, 0);
     LoadItem(racetrack, "tree_large", 960, 1023, 0);
     LoadItem(racetrack, "tree_large", 2209, 2622, 0);
     LoadItem(racetrack, "tree_large", 2559, 2504, 0);
     LoadItem(racetrack, "tree_large", 2642, 2565, 0);
     LoadItem(racetrack, "tree_large", 2799, 2674, 0);
     LoadItem(racetrack, "tree_small", 2429, 2569, 0);
     LoadItem(racetrack, "tree_small", 2516, 2486, 0);
     LoadItem(racetrack, "tree_small", 2276, 1328, 0);
     LoadItem(racetrack, "tree_small", 2141, 1355, 0);
     LoadItem(racetrack, "tree_small", 918, 822, 0);
     LoadItem(racetrack, "tree_small", 634, 625, 0);
     LoadItem(racetrack, "tree_small", 3844, 665, 0);
     LoadItem(racetrack, "tree_small", 3494, 682, 0);
     LoadItem(racetrack, "tree_small", 3826, 887, 0);
     LoadItem(racetrack, "tree_small", 2368, 1507, 0);
     LoadItem(racetrack, "cone_straight", 1552, 640, 0);
     LoadItem(racetrack, "cone_straight", 1600, 576, 0);
     LoadItem(racetrack, "cone_straight", 1680, 544, 0);
     LoadItem(racetrack, "cone_straight", 1744, 1664, 0);
     LoadItem(racetrack, "cone_straight", 1792, 1648, 0);
     LoadItem(racetrack, "cone_straight", 1840, 1632, 0);
     LoadItem(racetrack, "cone_straight", 1888, 1568, 0);
     LoadItem(racetrack, "cone_straight", 1904, 1504, 0);
     LoadItem(racetrack, "cone_straight", 1472, 1856, 0);
     LoadItem(racetrack, "cone_straight", 1536, 1792, 0);
     LoadItem(racetrack, "cone_straight", 1616, 1760, 0);
     LoadItem(racetrack, "cone_straight", 528, 1376, 0);
     LoadItem(racetrack, "cone_straight", 576, 1328, 0);
     LoadItem(racetrack, "cone_straight", 656, 1296, 0);
     LoadItem(racetrack, "cone_straight", 544, 2560, 0);
     LoadItem(racetrack, "cone_straight", 1776, 2576, 0);
     LoadItem(racetrack, "cone_straight", 1824, 2528, 0);
     LoadItem(racetrack, "cone_straight", 1840, 2464, 0);
     LoadItem(racetrack, "cone_straight", 2960, 2336, 0);
     LoadItem(racetrack, "cone_straight", 2992, 2400, 0);
     LoadItem(racetrack, "cone_straight", 3072, 2432, 0);
     LoadItem(racetrack, "cone_straight", 3168, 1744, 0);
     LoadItem(racetrack, "cone_straight", 3264, 1776, 0);
     LoadItem(racetrack, "cone_down", 4464, 1120, 0);
     LoadItem(racetrack, "cone_straight", 4544, 1152, 0);
     LoadItem(racetrack, "cone_straight", 3248, 576, 0);
     LoadItem(racetrack, "cone_straight", 3312, 640, 0);
     LoadItem(racetrack, "rock2", 3728, 1040, 0);
     LoadItem(racetrack, "rock2", 3936, 1088, 0);
     LoadItem(racetrack, "rock2", 4080, 992, 0);
     LoadItem(racetrack, "rock2", 2896, 912, 0);
     LoadItem(racetrack, "rock2", 2672, 912, 0);
     LoadItem(racetrack, "rock2", 2944, 1104, 0);
     LoadItem(racetrack, "rock2", 3136, 1488, 0);
     LoadItem(racetrack, "rock2", 3040, 1488, 0);
     LoadItem(racetrack, "rock2", 2720, 1760, 0);
     LoadItem(racetrack, "rock2", 2560, 1744, 0);
     LoadItem(racetrack, "rock2", 1984, 1760, 0);
     LoadItem(racetrack, "rock2", 2144, 1744, 0);
     LoadItem(racetrack, "rock2", 2224, 1760, 0);
     LoadItem(racetrack, "rock2", 1840, 2224, 0);
     LoadItem(racetrack, "rock2", 1888, 2176, 0);
     LoadItem(racetrack, "rock2", 1968, 2144, 0);
     LoadItem(racetrack, "rock2", 2800, 2128, 0);
     LoadItem(racetrack, "rock2", 2928, 2192, 0);
     LoadItem(racetrack, "rock3", 4032, 2432, 0);
     LoadItem(racetrack, "rock3", 3888, 2432, 0);
     LoadItem(racetrack, "rock3", 3728, 2464, 0);
     LoadItem(racetrack, "rock3", 4544, 2400, 0);
     LoadItem(racetrack, "rock3", 4176, 1504, 0);
     LoadItem(racetrack, "rock3", 4160, 1120, 0);
     LoadItem(racetrack, "rock3", 3760, 1072, 0);
     LoadItem(racetrack, "rock3", 2736, 928, 0);
     LoadItem(racetrack, "rock3", 2912, 976, 0);
     LoadItem(racetrack, "rock3", 2880, 1056, 0);
     LoadItem(racetrack, "rock3", 2000, 992, 0);
     LoadItem(racetrack, "rock3", 2128, 992, 0);
     LoadItem(racetrack, "rock3", 2208, 912, 0);
     LoadItem(racetrack, "rock3", 1968, 1152, 0);
     LoadItem(racetrack, "rock3", 2032, 1584, 0);
     LoadItem(racetrack, "rock3", 2080, 1760, 0);
     LoadItem(racetrack, "rock3", 2624, 1712, 0);
     LoadItem(racetrack, "rock3", 2512, 960, 0);
     LoadItem(racetrack, "barrel_blue", 3280, 1936, 0);
     LoadItem(racetrack, "barrel_blue", 3280, 2000, 0);
     LoadItem(racetrack, "barrel_blue", 3280, 2064, 0);
     LoadItem(racetrack, "barrel_blue", 2256, 2096, 0);
     LoadItem(racetrack, "barrel_blue", 2352, 2096, 0);
     LoadItem(racetrack, "barrel_blue", 2416, 2096, 0);
     LoadItem(racetrack, "barrel_blue", 2496, 2096, 0);
     LoadItem(racetrack, "barrel_blue", 2576, 2096, 0);
     LoadItem(racetrack, "barrel_blue", 1232, 1312, 0);
     LoadItem(racetrack, "barrel_blue", 1296, 1312, 0);
     LoadItem(racetrack, "barrel_blue", 1360, 1312, 0);
     LoadItem(racetrack, "barrel_blue", 1552, 1168, 0);
     LoadItem(racetrack, "barrel_blue", 1552, 1088, 0);
     LoadItem(racetrack, "barrel_blue_down", 1536, 976, 0);
     LoadItem(racetrack, "barrel_red_down", 960, 2272, 0);
     LoadItem(racetrack, "barrel_red", 1056, 2272, 0);
     LoadItem(racetrack, "barrel_red", 1152, 2272, 0);
     LoadItem(racetrack, "barrel_red", 896, 1680, 0);
     LoadItem(racetrack, "barrel_red", 896, 1760, 0);
     LoadItem(racetrack, "barrel_red", 896, 1840, 0);
     LoadItem(racetrack, "oil", 1200, 2112, 0);
     LoadItem(racetrack, "oil", 1072, 1856, 0);
     LoadItem(racetrack, "oil", 2144, 1600, 0);
     LoadItem(racetrack, "oil", 1328, 1120, 0);
     LoadItem(racetrack, "oil", 1520, 736, 0);
     LoadItem(racetrack, "rock1", 592, 2608, 0);
     LoadItem(racetrack, "tree_large", 3584, 1664, 0);
     LoadItem(racetrack, "tree_large", 3456, 1600, 0);
     LoadItem(racetrack, "tree_large", 3840, 1920, 0);
     LoadItem(racetrack, "tree_large", 4032, 1664, 0);
     LoadItem(racetrack, "tree_small", 3840, 1664, 0);
     LoadItem(racetrack, "tree_small", 3648, 1856, 0);
     LoadItem(racetrack, "tree_small", 3392, 2048, 0);
     LoadItem(racetrack, "tree_small", 3456, 1920, 0);
     LoadItem(racetrack, "tree_small", 4096, 1984, 0);
     LoadItem(racetrack, "tree_small", 3968, 2048, 0);
     LoadItem(racetrack, "tree_large", 4096, 1792, 0);
     LoadItem(racetrack, "tree_large", 3584, 2048, 0);
     LoadItem(racetrack, "tree_large", 3200, 1600, 0);
     LoadItem(racetrack, "cone_straight", 1760, 544, 0);
     LoadItem(racetrack, "cone_straight", 1840, 544, 0);
     LoadItem(racetrack, "cone_straight", 1920, 544, 0);
     LoadItem(racetrack, "cone_straight", 2000, 544, 0);
     LoadItem(racetrack, "cone_straight", 2080, 544, 0);
     LoadItem(racetrack, "cone_straight", 2896, 544, 0);
     LoadItem(racetrack, "cone_straight", 2976, 544, 0);
     LoadItem(racetrack, "cone_straight", 3056, 544, 0);
     LoadItem(racetrack, "cone_straight", 3136, 544, 0);
     LoadItem(racetrack, "cone_straight", 3200, 560, 0);
     LoadItem(racetrack, "cone_straight", 3312, 704, 0);
     LoadItem(racetrack, "cone_straight", 3312, 768, 0);
     LoadItem(racetrack, "cone_straight", 2960, 1248, 0);
     LoadItem(racetrack, "cone_straight", 2960, 1328, 0);
     LoadItem(racetrack, "cone_straight", 2992, 1408, 0);
     LoadItem(racetrack, "cone_straight", 3040, 1440, 0);
     LoadItem(racetrack, "cone_straight", 3136, 1456, 0);
     LoadItem(racetrack, "cone_straight", 3248, 1456, 0);
     LoadItem(racetrack, "cone_straight", 3344, 1456, 0);
     LoadItem(racetrack, "cone_straight", 512, 1536, 0);
     LoadItem(racetrack, "cone_straight", 512, 1488, 0);
     LoadItem(racetrack, "cone_straight", 512, 1424, 0);
     LoadItem(racetrack, "cone_straight", 720, 1296, 0);
     LoadItem(racetrack, "cone_straight", 784, 1296, 0);
     LoadItem(racetrack, "cone_straight", 1472, 1936, 0);
     LoadItem(racetrack, "cone_straight", 1728, 2608, 0);
     LoadItem(racetrack, "cone_straight", 1648, 2624, 0);
     LoadItem(racetrack, "cone_straight", 1552, 2624, 0);
     LoadItem(racetrack, "cone_straight", 3152, 2432, 0);
     LoadItem(racetrack, "cone_straight", 2944, 2256, 0);
     LoadItem(racetrack, "cone_straight", 3104, 1744, 0);
     LoadItem(racetrack, "cone_straight", 3296, 1856, 0);
     LoadItem(racetrack, "cone_straight", 4352, 2416, 0);
     LoadItem(racetrack, "cone_straight", 4432, 2400, 0);
     LoadItem(racetrack, "cone_straight", 4512, 2368, 0);
     LoadItem(racetrack, "cone_straight", 4544, 2304, 0);
     LoadItem(racetrack, "cone_straight", 4560, 2224, 0);
     LoadItem(racetrack, "cone_straight", 4560, 2144, 0);
     LoadItem(racetrack, "rock2", 3360, 1200, 0);
     LoadItem(racetrack, "rock2", 3584, 1392, 0);
     LoadItem(racetrack, "rock2", 3680, 1360, 0);
     LoadItem(racetrack, "rock2", 4224, 1216, 0);
     LoadItem(racetrack, "rock2", 4496, 1552, 0);
     LoadItem(racetrack, "rock2", 4304, 1856, 0);
     LoadItem(racetrack, "rock2", 4304, 1952, 0);
     LoadItem(racetrack, "rock2", 3872, 2176, 0);
     LoadItem(racetrack, "rock2", 3744, 2160, 0);
     LoadItem(racetrack, "rock2", 3376, 2336, 0);
     LoadItem(racetrack, "rock2", 3104, 2352, 0);
     LoadItem(racetrack, "rock2", 2720, 2032, 0);
     LoadItem(racetrack, "rock2", 2048, 1824, 0);
     LoadItem(racetrack, "rock2", 2640, 1840, 0);
     LoadItem(racetrack, "rock2", 1760, 2160, 0);
     LoadItem(racetrack, "rock2", 1856, 2064, 0);
     LoadItem(racetrack, "rock2", 1840, 2144, 0);
     LoadItem(racetrack, "rock2", 512, 2368, 0);
     LoadItem(racetrack, "rock2", 608, 2432, 0);
     LoadItem(racetrack, "rock2", 656, 2496, 0);
     LoadItem(racetrack, "rock2", 720, 2576, 0);
     LoadItem(racetrack, "rock2", 2928, 1424, 0);
     LoadItem(racetrack, "rock2", 2992, 1472, 0);
     LoadItem(racetrack, "rock2", 3024, 1520, 0);
     LoadItem(racetrack, "rock2", 2960, 1536, 0);
     LoadItem(racetrack, "rock2", 2928, 1488, 0);
 }