Game
Embed:
(wiki syntax)
Show/hide line numbers
Maps.h
Go to the documentation of this file.
00001 //-------- 00002 // MAPS 00003 //-------- 00004 00005 /** All Map Data 00006 * @file Maps.h 00007 * @brief Contains all the data required for each track. 00008 * @author Henry W Triff 00009 * @date Mar, 2020 00010 */ 00011 00012 /** 00013 * @code 00014 * 00015 * // How maps are drawn: 00016 * // > It is drawn very similar to the way a map is drawn 00017 * // > I used grid paper and drew the maps then inputted the information by hand 00018 * // > It uses a coordinate system where the origin point is where the car starts 00019 * // 00020 * // Explanation of each part of track: 00021 * // > Track Lines = Lines showing the inside and outside of the track 00022 * // - There is a 'to' point 00023 * // - There is a 'from' point 00024 * // - It does not matter which way around these are noted 00025 * // > Dotted lines = Same as Track Lines bit with alternating pixels 00026 * // > Flags = Starting / Finish line flags 00027 * // > Walls = These are walls that indicate to the player that this area is out of bounds 00028 * // - This works the same way as Track Lines except when drawn, the 4 (or however many specified) pixels above 00029 * // are also drawn giving the impression of height 00030 * // - There is a 'to' point 00031 * // - There is a 'from' point 00032 * // - It does not matter which way around these are noted 00033 * // > Off Track square = These are square areas that are deemed off the track 00034 * // - When the game runs, it checks to see if the players car is in these squares 00035 * // - There is a 'TL' point 00036 * // - There is a 'BR' point 00037 * // - It is important that TL is always the top left point when drawing the map 00038 * // - It is important that BR is always the bottom left point when drawing the map 00039 * // > Off Track Triangle = These are triangular areas that are deemed off the track 00040 * // - Very similar to Off Track Squares 00041 * // - When the game runs, it checks to see if the players car is in these triangles 00042 * // - There is a 'TL' point 00043 * // - There is a 'BR' point 00044 * // - There is a 'Type' int 00045 * // - It is important that TL is always the top left point when drawing the map 00046 * // - It is important that BR is always the bottom left point when drawing the map 00047 * // - The Type is the direction the triangle is drawn (Where the Hypotenuse is) 00048 * // - Types: (1 = Hyp in Top Right, 2 = Hyp in Bottom Right, 3 = Hyp in Bottom Left, 4 = Hyp in Top Left) 00049 * // - Exampe: The following triangle is type 2 00050 * // _____ 00051 * // | / 00052 * // | / 00053 * // | / 00054 * // |/ 00055 * // 00056 * // > Out Of Bounds Square = These are square areas that are deemed out of bounds 00057 * // - Works exactly the same as Off Track Square 00058 * // > Out Of Bounds Triangle = These are triangular areas that are deemed off the track 00059 * // - Works exactly the same as Off Track Triangle 00060 * // > Gates = Used to check if a full lap has been completed 00061 * // - For a player to complete a full lap, their car must pass through these gates as they do their lap 00062 * // - If a gate is missed, then a lap is not completed 00063 * // - This is used to prevent the player from reversing at the start and moving behind the finish line 00064 * // then moving forward and the game thinking that a lap has been completed 00065 * // > Boost plates = These are parts of the track that make cars go extra fast 00066 * // - There is a 'TL' point 00067 * // - There is a 'BR' point 00068 * // - There is a 'Type' int 00069 * // - It is important that TL is always the top left point when drawing the map 00070 * // - It is important that BR is always the bottom left point when drawing the map 00071 * // - The type is the direction of the arrow drawn on the boost plates 00072 * // - Types: (1 = Pointing up, 2 = Pointing right, 3 = Pointing down, 4 = Pointing left) 00073 * // - Example: The following boost plate is type 3 00074 * // ______ 00075 * // |\ /| 00076 * // | \/ | 00077 * // ------ 00078 * @endcode 00079 */ 00080 00081 //MAP - 1 00082 const Map_Data Map_1 = {36,1,18,20,14,20,9,5,12,0}; 00083 00084 //Lines 00085 const Line_2D Map_1_Track_Lines[36] = { 00086 //Inside Line 00087 {{-20,0},{-20,80}}, 00088 {{-20,80},{-40,100}}, 00089 {{-40,100},{-80,100}}, 00090 {{-80,100},{-100,80}}, 00091 {{-100,80},{-100,40}}, 00092 {{-100,40},{-140,0}}, 00093 {{-140,0},{-220,0}}, 00094 {{-220,0},{-260,40}}, 00095 {{-260,40},{-260,80}}, 00096 {{-260,80},{-280,100}}, 00097 {{-280,100},{-320,100}}, 00098 {{-320,100},{-360,60}}, 00099 {{-360,60},{-360,-100}}, 00100 {{-360,-100},{-300,-160}}, 00101 {{-300,-160},{-220,-80}}, 00102 {{-220,-80},{-100,-80}}, 00103 {{-100,-80},{-20,0}}, 00104 //Outside Line 00105 {{20,-20},{20,100}}, 00106 {{20,100},{-20,140}}, 00107 {{-20,140},{-100,140}}, 00108 {{-100,140},{-140,100}}, 00109 {{-140,100},{-140,60}}, 00110 {{-140,60},{-160,40}}, 00111 {{-160,40},{-200,40}}, 00112 {{-200,40},{-220,60}}, 00113 {{-220,60},{-220,100}}, 00114 {{-220,100},{-260,140}}, 00115 {{-260,140},{-340,140}}, 00116 {{-340,140},{-400,80}}, 00117 {{-400,80},{-400,-120}}, 00118 {{-400,-120},{-320,-200}}, 00119 {{-320,-200},{-280,-200}}, 00120 {{-280,-200},{-200,-120}}, 00121 {{-200,-120},{-80,-120}}, 00122 {{-80,-120},{20,-20}}, 00123 }; 00124 00125 //Dotted Lines 00126 const Line_2D Map_1_Track_Dotted_Lines[1] = { 00127 {{-20,0},{20,0}}, 00128 }; 00129 00130 //Flags 00131 const Sprite_2D Map_1_Sprites[18] = { 00132 {-24,0, Flag}, 00133 {24,0, Flag}, 00134 {-300,-50, Helicopter}, 00135 00136 {-40,162, People_Cheering}, 00137 {-50,162, People_Standing_1}, 00138 {-70,162, People_Standing_2}, 00139 00140 {42,-20, People_Cheering}, 00141 {42,-10, People_Standing_1}, 00142 {42,0, People_Cheering}, 00143 {42,10, People_Standing_2}, 00144 00145 {-422,60, People_Cheering}, 00146 {-422,50, People_Standing_1}, 00147 {-422,40, People_Cheering}, 00148 {-422,30, People_Standing_2}, 00149 {-422,20, People_Standing_1}, 00150 00151 {-200,-58, People_Cheering}, 00152 {-180,-58, People_Standing_1}, 00153 {-170,-58, People_Standing_2} 00154 }; 00155 00156 //Walls 00157 const Line_2D Map_1_Walls[20] = { 00158 //Inside 00159 {{-40,80},{-40,0}}, 00160 {{-40,0},{-100,-60}}, 00161 {{-100,-60},{-240,-60}}, 00162 {{-240,-60},{-300,-120}}, 00163 {{-300,-120},{-340,-60}}, 00164 {{-340,-60},{-340,60}}, 00165 {{-340,60},{-280,60}}, 00166 {{-280,60},{-280,-20}}, 00167 {{-280,-20},{-100,-20}}, 00168 {{-100,-20},{-80,0}}, 00169 {{-80,0},{-80,80}}, 00170 {{-80,80},{-40,80}}, 00171 //Outside 00172 {{40,160},{40,-220}}, 00173 {{40,-220},{-420,-220}}, 00174 {{-420,-220},{-420,160}}, 00175 {{-420,160},{-200,160}}, 00176 {{-200,160},{-200,60}}, 00177 {{-200,60},{-160,60}}, 00178 {{-160,60},{-160,160}}, 00179 {{-160,160},{40,160}}, 00180 }; 00181 00182 //Off track? objects 00183 const Square_2D Map_1_Off_Track_Square[14] = { 00184 //Inside 00185 {{-100,80},{-20,0}}, 00186 {{-80,100},{-40,80}}, 00187 {{-260,0},{-100,-80}}, 00188 {{-360,60},{-260,-100}}, 00189 {{-320,100},{-280,60}}, 00190 {{-280,80},{-260,60}}, 00191 {{-300,-100},{-260,-120}}, 00192 {{-200,60},{-160,40}}, 00193 {{-220,140},{-140,60}}, 00194 {{-200,-120},{20,-200}}, 00195 {{-400,200},{20,140}}, 00196 {{-500,200},{-400,-300}}, 00197 {{20,200},{100,-300}}, 00198 {{-400,-200},{20,-300}} 00199 }; 00200 00201 //Off track? objects 00202 const Triangle_2D Map_1_Off_Track_Triangle[20] = { 00203 {{-40,100},{-20,80},1}, 00204 {{-100,100},{-80,80},4}, 00205 {{-140,40},{-100,0},4}, 00206 {{-100,0},{-20,-80},2}, // 00207 {{-260,40},{-220,0},1}, 00208 {{-260,-80},{-220,-120},2}, 00209 {{-200,-120},{-260,-160},2}, 00210 {{-280,100},{-260,80},1}, 00211 {{-360,100},{-320,60},4}, 00212 {{-360,-100},{-300,-160},3}, 00213 {{-300,-100},{-240,-160},2}, 00214 //Outside 00215 {{-20,140},{20,100},3}, 00216 {{-80,-20},{20,-120},4}, 00217 {{-140,140},{-100,100},2}, 00218 {{-160,60},{-140,40},2}, // 00219 {{-220,60},{-200,40},3}, 00220 {{-280,-120},{-200,-200},4}, 00221 {{-260,140},{-240,100},3}, 00222 {{-400,140},{-340,80},2}, // 00223 {{-400,-120},{-320,-200},1} 00224 }; 00225 00226 const Square_2D Map_1_Out_Of_Bounds_Square[9] = { 00227 //Inside 00228 {{-80,80},{-40,0}}, 00229 {{-340,60},{-280,-60}}, 00230 {{-280,-20},{-100,-60}}, 00231 {{-80,0},{-60,-20}}, 00232 //Outside 00233 {{40,160},{60,-220}}, 00234 {{-420,-220},{40,-240}}, 00235 {{-440,160},{-420,-220}}, 00236 {{-420,180},{40,160}}, 00237 {{-200,160},{-160,60}} 00238 }; 00239 00240 const Triangle_2D Map_1_Out_Of_Bounds_Triangle[5] = { 00241 //Inside 00242 {{-60,0},{-40,-20},2}, 00243 {{-100,0},{-80,-20},4}, 00244 {{-100,-20},{-60,-60},2}, 00245 {{-300,-60},{-240,-120},2}, 00246 {{-340,-60},{-300,-120},3} 00247 }; 00248 00249 const Square_2D Map_1_Gates[12] = { 00250 {{-40,0},{40,-10}}, 00251 {{-40,80},{40,70}}, 00252 {{-80,160},{-70,80}}, 00253 {{-160,70},{-80,60}}, 00254 {{-200,60},{-190,-20}}, 00255 {{-310,160},{-300,60}}, 00256 {{-420,10},{-340,0}}, 00257 {{-420,-90},{-300, -100}}, 00258 {{-300,-100},{-290,-220}}, 00259 {{-200,-60},{-190,-220}}, 00260 {{-110,-60},{-100,-220}}, 00261 {{-100,-40},{40,-60}} 00262 }; 00263 00264 const Triangle_2D Map_1_Boost_Plates[0] = { 00265 }; 00266 00267 //MAP - 2 00268 const Map_Data Map_2 = {64,1,38,36,21,37,12,27,19,3}; 00269 00270 //Lines 00271 const Line_2D Map_2_Track_Lines[64] = { 00272 //Inside Line 00273 {{20,280},{20,-80}}, 00274 {{20,-80},{-20,-120}}, 00275 {{-20,-120},{-80,-120}}, 00276 {{-80,-120},{-200,0}}, 00277 {{-200,0},{-420,0}}, 00278 {{-420,0},{-440,-20}}, 00279 {{-440,-20},{-440,-40}}, 00280 {{-440,-40},{-420,-60}}, 00281 {{-420,-60},{-400,-60}}, 00282 {{-400,-60},{-380,-40}}, 00283 {{-380,-40},{-300,-40}}, 00284 {{-300,-40},{-280,-60}}, 00285 {{-280,-60},{-200,-60}}, 00286 {{-200,-60},{-100,-160}}, 00287 {{-100,-160},{0,-160}}, 00288 {{0,-160},{60,-100}}, 00289 {{60,-100},{60,300}}, 00290 {{60,300},{0,360}}, 00291 {{0,360},{-320,360}}, 00292 {{-320,360},{-380,300}}, 00293 {{-380,300},{-380,180}}, 00294 {{-380,180},{-360,160}}, 00295 {{-360,160},{-340,160}}, 00296 {{-340,160},{-320,180}}, 00297 {{-320,180},{-320,280}}, 00298 {{-320,280},{-280,320}}, 00299 {{-280,320},{-20,320}}, 00300 {{-20,320},{20,280}}, 00301 //Inside Circle 00302 {{-120,260},{-120,180}}, 00303 {{-120,180},{-120,160}}, 00304 {{-120,160},{-260,160}}, 00305 {{-260,160},{-280,180}}, 00306 {{-280,180},{-280,260}}, 00307 {{-280,260},{-260,280}}, 00308 {{-260,280},{-140,280}}, 00309 {{-140,280},{-120,260}}, 00310 //Outside Line 00311 {{100,320},{100,-120}}, 00312 {{100,-120},{20,-200}}, 00313 {{20,-200},{-120,-200}}, 00314 {{-120,-200},{-220,-100}}, 00315 {{-220,-100},{-280,-100}}, 00316 {{-280,-100},{-300,-120}}, 00317 {{-300,-120},{-380,-120}}, 00318 {{-380,-120},{-400,-100}}, 00319 {{-400,-100},{-440,-100}}, 00320 {{-440,-100},{-480,-60}}, 00321 {{-480,-60},{-480,0}}, 00322 {{-480,0},{-440,40}}, 00323 {{-440,40},{-180,40}}, 00324 {{-180,40},{-60,-80}}, 00325 {{-60,-80},{-40,-80}}, 00326 {{-40,-80},{-20,-60}}, 00327 {{-20,-60},{-20,260}}, 00328 {{-20,260},{-40,280}}, 00329 {{-40,280},{-60,280}}, 00330 {{-60,280},{-80,260}}, 00331 {{-80,260},{-80,160}}, 00332 {{-80,160},{-120,120}}, 00333 {{-120,120},{-380,120}}, 00334 {{-380,120},{-420,160}}, 00335 {{-420,160},{-420,320}}, 00336 {{-420,320},{-340,400}}, 00337 {{-340,400},{20,400}}, 00338 {{20,400},{100,320}} 00339 }; 00340 00341 //Dotted Lines 00342 const Line_2D Map_2_Track_Dotted_Lines[1] = { 00343 {{-20,0},{20,0}}, 00344 }; 00345 00346 //Flags 00347 const Sprite_2D Map_2_Sprites[38] = { 00348 {-20,0, Flag}, 00349 {24,0, Flag}, 00350 00351 {-80,40, Helicopter}, 00352 00353 {-42,-10, People_Cheering}, 00354 {-42,0, People_Standing_1}, 00355 {-42,10, People_Standing_2}, 00356 {-42,20, People_Cheering}, 00357 {-52,20, People_Standing_1}, 00358 {-52,10, People_Cheering}, 00359 00360 {-160,258, People_Cheering}, 00361 {-150,258, People_Cheering}, 00362 {-142,250, People_Standing_2}, 00363 {-142,240, People_Standing_2}, 00364 {-150,250, People_Standing_1}, 00365 {-150,240, People_Cheering}, 00366 00367 {-460,360, Helicopter}, 00368 00369 {-280,98, People_Cheering}, 00370 {-290,98, People_Cheering}, 00371 {-300,98, People_Standing_2}, 00372 {-310,98, People_Standing_2}, 00373 {-320,98, People_Standing_1}, 00374 {-330,98, People_Cheering}, 00375 00376 {48,280, People_Standing_1}, 00377 {48,270, People_Cheering}, 00378 {48,260, People_Standing_2}, 00379 00380 {48,-70, People_Standing_2}, 00381 {48,-80, People_Standing_2}, 00382 {48,-90, People_Cheering}, 00383 00384 {-210,-28, People_Standing_1}, 00385 {-220,-28, People_Standing_1}, 00386 {-240,-28, People_Cheering}, 00387 {-250,-28, People_Standing_2}, 00388 00389 {-380,-28, People_Standing_1}, 00390 {-390,-28, People_Cheering}, 00391 00392 {-200,62, People_Cheering}, 00393 {-210,62, People_Standing_1}, 00394 {-220,62, People_Cheering}, 00395 {-230,62, People_Standing_2}, 00396 }; 00397 00398 //Walls 00399 const Line_2D Map_2_Walls[36] = { 00400 //Outside 00401 {{-500,60},{-500,-300}}, 00402 {{-500,-300},{200,-300}}, 00403 {{200,-300},{200,500}}, 00404 {{200,500},{-500,500}}, 00405 {{-500,500},{-500,100}}, 00406 {{-500,100},{-60,100}}, 00407 {{-60,100},{-60,260}}, 00408 {{-60,260},{-40,260}}, 00409 {{-40,260},{-40,-60}}, 00410 {{-40,-60},{-60,-60}}, 00411 {{-60,-60},{-180,60}}, 00412 {{-180,60},{-500,60}}, 00413 //Inside Circle 00414 {{-260,260},{-140,260}}, 00415 {{-140,260},{-140,180}}, 00416 {{-140,180},{-260,180}}, 00417 {{-260,180},{-260,260}}, 00418 //Inside 00419 {{-360,180},{-360,300}}, 00420 {{-360,300},{-310,350}}, 00421 {{-310,350},{-10,350}}, 00422 {{-10,350},{50,290}}, 00423 {{50,290},{50,-90}}, 00424 {{50,-90},{-10,-150}}, 00425 {{-10,-150},{-90,-150}}, 00426 {{-90,-150},{-210,-30}}, 00427 {{-210,-30},{-400,-30}}, 00428 {{-400,-30},{-400,-10}}, 00429 {{-400,-10},{-210,-10}}, 00430 {{-210,-10},{-90,-130}}, 00431 {{-90,-130},{-10,-130}}, 00432 {{-10,-130},{30,-90}}, 00433 {{30,-90},{30,290}}, 00434 {{30,290},{-10,330}}, 00435 {{-10,330},{-290,330}}, 00436 {{-290,330},{-340,280}}, 00437 {{-340,280},{-340,180}}, 00438 {{-340,180},{-360,180}} 00439 }; 00440 00441 //Off track? objects 00442 const Square_2D Map_2_Off_Track_Square[21] = { 00443 //Inside 00444 {{-380,300},{-320,180}}, 00445 {{-360,180},{-340,160}}, 00446 {{-320,360},{0,320}}, 00447 {{20,300},{60,-100}}, 00448 {{-420,0},{-200,-40}}, 00449 {{-440,-20},{-420,-40}}, 00450 {{-420,-40},{-400,-60}}, 00451 {{-280,-40},{-200,-60}}, 00452 {{-100,-120},{0,-160}}, 00453 //Inside Circle 00454 {{-280,260},{-120,180}}, 00455 {{-260,280},{-140,260}}, 00456 {{-260,180},{-140,160}}, 00457 //Outside 00458 {{-500,120},{-80,40}}, 00459 {{-80,260},{-20,-60}}, 00460 {{-60,280},{-40,260}}, 00461 {{-60,-60},{-40,-80}}, 00462 {{-500,40},{-480,-100}}, 00463 {{-500,-100},{-400,-200}}, 00464 {{-400,-120},{-280,-200}}, 00465 {{-280,-100},{-220,-200}}, 00466 {{-500,400},{-420,120}} 00467 }; 00468 00469 //Off track? objects 00470 const Triangle_2D Map_2_Off_Track_Triangle[37] = { 00471 //Inside 00472 {{-380,180},{-360,160},3}, 00473 {{-340,180},{-320,160},2}, 00474 {{-380,360},{-320,300},4}, 00475 {{-320,320},{-280,280},2}, 00476 {{0,360},{60,300},1}, 00477 {{-20,320},{0,300},3}, 00478 {{0,300},{20,280},3}, 00479 {{-440,0},{-420,-20},4}, 00480 {{-440,-40},{-420,-60},3}, 00481 {{-400,-40},{-380,-60},2}, 00482 {{-300,-40},{-280,-60},3}, 00483 {{-200,0},{-140,-60},1}, 00484 {{-200,-60},{-140,-120},3}, 00485 {{-140,-60},{-80,-120},1}, 00486 {{-140,-120},{-100,-160},3}, 00487 {{-20,-100},{0,-120},4}, 00488 {{0,-80},{20,-100},4}, 00489 {{0,-100},{60,-160},2}, 00490 //Inside Circle 00491 {{-280,280},{-260,260},4}, 00492 {{-140,280},{-120,260},1}, 00493 {{-140,180},{-120,160},2}, 00494 {{-280,180},{-260,160},3}, 00495 //Outside 00496 {{-420,400},{-340,320},2}, 00497 {{-420,160},{-380,120},1}, 00498 {{-120,160},{-80,120},4}, 00499 {{-80,280},{-60,260},4}, 00500 {{-40,280},{-20,260},1}, 00501 {{20,400},{100,320},3}, 00502 {{-480,40},{-440,0},2}, 00503 {{-480,-60},{-440,-100},1}, 00504 {{-400,-100},{-380,-120},1}, 00505 {{-300,-100},{-280,-120},4}, 00506 {{-220,-100},{-120,-200},1}, 00507 {{-180,40},{-80,-60},3}, 00508 {{-80,-60},{-60,-80},3}, 00509 {{-40,-60},{-20,-80},2}, 00510 {{20,-120},{100,-200},4}, 00511 }; 00512 00513 const Square_2D Map_2_Out_Of_Bounds_Square[12] = { 00514 //Outside 00515 {{-500,100},{-60,60}}, 00516 {{-60,260},{-40,-60}}, 00517 {{-600,500},{-500,-400}}, 00518 {{-500,-300},{200,-400}}, 00519 {{200,600},{300,-400}}, 00520 {{-500,600},{200,500}}, 00521 //Inside Circle 00522 {{-260,260},{-140,180}}, 00523 //Inside 00524 {{-360,300},{-340,180}}, 00525 {{-310,350},{-10,330}}, 00526 {{-400,-10},{-210,-30}}, 00527 {{-90,-130},{-10,-150}}, 00528 {{30,290},{50,-90}} 00529 }; 00530 00531 const Triangle_2D Map_2_Out_Of_Bounds_Triangle[27] = { 00532 //Outside 00533 {{-180,60},{-60,-60},3}, 00534 //Inside 00535 {{-360,340},{-320,300},4}, 00536 {{-340,300},{-320,280},2}, 00537 {{-320,340},{-280,300},2}, 00538 {{-320,350},{-310,340},4}, 00539 {{-10,350},{10,330},1}, 00540 {{-10,330},{10,310},3}, 00541 {{10,330},{30,310},1}, 00542 {{10,310},{30,290},3}, 00543 {{30,310},{50,290},1}, 00544 {{-10,-130},{10,-150},2}, 00545 {{-10,-110},{10,-130},4}, 00546 {{10,-110},{30,-130},2}, 00547 {{10,-90},{30,-110},4}, 00548 {{30,-90},{50,-110},2}, 00549 {{-210,-10},{-190,-30},1}, 00550 {{-210,-30},{-190,-50},3}, 00551 {{-190,-30},{-170,-50},1}, 00552 {{-190,-50},{-170,-70},3}, 00553 {{-170,-50},{-150,-70},1}, 00554 {{-170,-70},{-150,-90},3}, 00555 {{-150,-70},{-130,-90},1}, 00556 {{-150,-90},{-130,-110},3}, 00557 {{-130,-90},{-110,-110},1}, 00558 {{-130,-110},{-110,-130},3}, 00559 {{-110,-110},{-90,-130},1}, 00560 {{-110,-130},{-90,-150},3} 00561 }; 00562 00563 const Square_2D Map_2_Gates[19] = { 00564 {{-40,0},{30,-10}}, 00565 {{-40,110},{30,100}}, 00566 {{-40,210},{30,200}}, 00567 {{-60,330},{-50,260}}, 00568 {{-210,330},{-200,100}}, 00569 {{-350,180},{-340,100}}, 00570 {{-600,210},{-360,200}}, 00571 {{-600,310},{-350,300}}, 00572 {{-300,500},{-290,350}}, 00573 {{-100,500},{-90,350}}, 00574 {{40,300},{200,290}}, 00575 {{50,110},{200,100}}, 00576 {{50,0},{200,-10}}, 00577 {{-20,-150},{-10,-300}}, 00578 {{-280,-30},{-270,-300}}, 00579 {{-600,-20},{-400,-30}}, 00580 {{-310,60},{-300,-10}}, 00581 {{-140,20},{-130,-90}}, 00582 {{-50,-60},{-40,-130}} 00583 }; 00584 00585 const Triangle_2D Map_2_Boost_Plates[3] = { 00586 {{60,280},{80,260},3}, 00587 {{-420,40},{-400,20},2}, 00588 {{-280,400},{-260,380},2} 00589 }; 00590 00591 00592 00593 00594 00595 //MAP - 3 00596 const Map_Data Map_3 = {102,1,52,44,35,50,18,12,17,5}; 00597 00598 //Lines 00599 const Line_2D Map_3_Track_Lines[106] = { 00600 //Inside 00601 {{20,40},{40,60}}, 00602 {{40,60},{160,60}}, 00603 {{160,60},{200,100}}, 00604 {{200,100},{200,140}}, 00605 {{200,140},{220,160}}, 00606 {{220,160},{280,160}}, 00607 {{280,160},{300,140}}, 00608 {{300,140},{300,60}}, 00609 {{300,60},{320,40}}, 00610 {{320,40},{380,40}}, 00611 {{380,40},{400,60}}, 00612 {{400,60},{400,260}}, 00613 {{400,260},{360,300}}, 00614 {{360,300},{120,300}}, 00615 {{120,300},{100,320}}, 00616 {{100,320},{100,380}}, 00617 {{100,380},{120,400}}, 00618 {{120,400},{400,400}}, 00619 {{400,400},{500,300}}, 00620 {{500,300},{700,300}}, 00621 {{700,300},{740,340}}, 00622 {{740,340},{740,420}}, 00623 {{740,420},{760,440}}, 00624 {{760,440},{780,440}}, 00625 {{780,440},{800,420}}, 00626 {{800,420},{800,380}}, 00627 {{800,380},{840,340}}, 00628 {{840,340},{900,340}}, 00629 {{900,340},{940,380}}, 00630 {{940,380},{940,420}}, 00631 {{940,420},{960,440}}, 00632 {{960,440},{980,440}}, 00633 {{980,440},{1000,420}}, 00634 {{1000,420},{1000,320}}, 00635 {{1000,320},{980,300}}, 00636 {{980,300},{780,300}}, 00637 {{780,300},{740,260}}, 00638 {{740,260},{740,200}}, 00639 {{740,200},{780,160}}, 00640 {{780,160},{1140,160}}, 00641 {{1140,160},{1160,140}}, 00642 {{1160,140},{1160,-40}}, 00643 {{1160,-40},{1140,-60}}, 00644 {{1140,-60},{960,-60}}, 00645 {{960,-60},{940,-40}}, 00646 {{940,-40},{940,60}}, 00647 {{940,60},{900,100}}, 00648 {{900,100},{680,100}}, 00649 {{680,100},{520,-60}}, 00650 {{520,-60},{40,-60}}, 00651 {{40,-60},{20,-40}}, 00652 {{20,-40},{20,40}}, 00653 //Outside 00654 {{-20,60},{20,100}}, 00655 {{20,100},{140,100}}, 00656 {{140,100},{160,120}}, 00657 {{160,120},{160,160}}, 00658 {{160,160},{200,200}}, 00659 {{200,200},{300,200}}, 00660 {{300,200},{340,160}}, 00661 {{340,160},{340,100}}, 00662 {{340,100},{360,100}}, 00663 {{360,100},{360,240}}, 00664 {{360,240},{340,260}}, 00665 {{340,260},{100,260}}, 00666 {{100,260},{60,300}}, 00667 {{60,300},{60,400}}, 00668 {{60,400},{100,440}}, 00669 {{100,440},{420,440}}, 00670 {{420,440},{520,340}}, 00671 {{520,340},{680,340}}, 00672 {{680,340},{700,360}}, 00673 {{700,360},{700,440}}, 00674 {{700,440},{740,480}}, 00675 {{740,480},{800,480}}, 00676 {{800,480},{840,440}}, 00677 {{840,440},{840,400}}, 00678 {{840,400},{860,380}}, 00679 {{860,380},{880,380}}, 00680 {{880,380},{900,400}}, 00681 {{900,400},{900,440}}, 00682 {{900,440},{940,480}}, 00683 {{940,480},{1000,480}}, 00684 {{1000,480},{1040,440}}, 00685 {{1040,440},{1040,300}}, 00686 {{1040,300},{1000,260}}, 00687 {{1000,260},{800,260}}, 00688 {{800,260},{780,240}}, 00689 {{780,240},{780,220}}, 00690 {{780,220},{800,200}}, 00691 {{800,200},{1160,200}}, 00692 {{1160,200},{1200,160}}, 00693 {{1200,160},{1200,-60}}, 00694 {{1200,-60},{1160,-100}}, 00695 {{1160,-100},{940,-100}}, 00696 {{940,-100},{900,-60}}, 00697 {{900,-60},{900,40}}, 00698 {{900,40},{880,60}}, 00699 {{880,60},{700,60}}, 00700 {{700,60},{540,-100}}, 00701 {{540,-100},{20,-100}}, 00702 {{20,-100},{-20,-60}}, 00703 {{-20,-60},{-20,60}}, 00704 {{-100,600},{0,-200}}, 00705 {{0,600},{1200,500}}, 00706 {{1200,600},{1300,-200}}, 00707 {{0,-100},{1200,-200}} 00708 }; 00709 00710 //Dotted Lines 00711 const Line_2D Map_3_Track_Dotted_Lines[1] = { 00712 {{-20,0},{20,0}} 00713 }; 00714 00715 //Flags 00716 const Sprite_2D Map_3_Sprites[52] = { 00717 {-20,0, Flag}, 00718 {20,0, Flag}, 00719 00720 {200,350, Helicopter}, 00721 {1000,0, Helicopter}, 00722 {600,100, Helicopter}, 00723 {1100,400, Helicopter}, 00724 00725 {52,-20,People_Cheering}, 00726 {52,-10,People_Standing_1}, 00727 {52,0,People_Standing_2}, 00728 {52,10,People_Cheering}, 00729 {52,20,People_Standing_1}, 00730 {60,0,People_Standing_2}, 00731 00732 {320,8,People_Cheering}, 00733 {330,8,People_Standing_2}, 00734 {340,8,People_Standing_1}, 00735 {350,8,People_Standing_2}, 00736 00737 {200,238,People_Cheering}, 00738 {210,238,People_Standing_1}, 00739 {220,238,People_Standing_2}, 00740 00741 {400,350,People_Cheering}, 00742 {410,340,People_Standing_1}, 00743 {420,330,People_Standing_2}, 00744 {430,320,People_Cheering}, 00745 {440,310,People_Standing_1}, 00746 {450,300,People_Standing_2}, 00747 00748 {762,340,People_Cheering}, 00749 {762,350,People_Standing_1}, 00750 {762,360,People_Standing_2}, 00751 00752 {950,312,People_Cheering}, 00753 {960,312,People_Standing_1}, 00754 {978,330,People_Standing_2}, 00755 {978,340,People_Standing_2}, 00756 00757 {802,222,People_Cheering}, 00758 {802,238,People_Standing_2}, 00759 00760 {1138,110,People_Cheering}, 00761 {1138,100,People_Standing_1}, 00762 {1138,70,People_Standing_2}, 00763 {1138,60,People_Cheering}, 00764 {1138,50,People_Standing_1}, 00765 {1138,30,People_Standing_2}, 00766 00767 {780,122,People_Cheering}, 00768 {800,122,People_Standing_1}, 00769 {810,122,People_Standing_2}, 00770 00771 {500,-28,People_Cheering}, 00772 {520,-8,People_Standing_1}, 00773 {530,2,People_Standing_2}, 00774 {560,32,People_Cheering}, 00775 {570,42,People_Standing_1}, 00776 {580,52,People_Standing_2}, 00777 {600,72,People_Cheering}, 00778 {620,92,People_Standing_1}, 00779 {630,102,People_Standing_2}, 00780 00781 }; 00782 00783 //Walls 00784 const Line_2D Map_3_Walls[44] = { 00785 //Inside 00786 {{50,30},{230,30}}, 00787 {{230,30},{230,130}}, 00788 {{230,130},{270,130}}, 00789 {{270,130},{270,10}}, 00790 {{270,10},{430,10}}, 00791 {{430,10},{430,270}}, 00792 {{430,270},{370,330}}, 00793 {{370,330},{130,330}}, 00794 {{130,330},{130,370}}, 00795 {{130,370},{390,370}}, 00796 {{390,370},{490,270}}, 00797 {{490,270},{700,270}}, 00798 {{700,270},{760,330}}, 00799 {{760,330},{760,420}}, 00800 {{760,420},{780,420}}, 00801 {{780,420},{780,330}}, 00802 {{780,330},{960,330}}, 00803 {{960,330},{960,420}}, 00804 {{960,420},{980,420}}, 00805 {{980,420},{980,330}}, 00806 {{980,330},{960,310}}, 00807 {{960,310},{760,310}}, 00808 {{760,310},{710,260}}, 00809 {{710,260},{710,140}}, 00810 {{710,140},{1140,140}}, 00811 {{1140,140},{1140,-40}}, 00812 {{1140,-40},{960,-40}}, 00813 {{960,-40},{960,120}}, 00814 {{960,120},{660,120}}, 00815 {{660,120},{510,-30}}, 00816 {{510,-30},{50,-30}}, 00817 {{50,-30},{50,30}}, 00818 //Outside 00819 {{-100,220},{340,220}}, 00820 {{340,220},{340,240}}, 00821 {{340,240},{-100,240}}, 00822 {{-100,240},{-100,600}}, 00823 {{-100,600},{1300,600}}, 00824 {{1300,600},{1300,240}}, 00825 {{1300,240},{800,240}}, 00826 {{800,240},{800,220}}, 00827 {{800,220},{1300,220}}, 00828 {{1300,220},{1300,-200}}, 00829 {{1300,-200},{-100,-200}}, 00830 {{-100,-200},{-100,220}} 00831 }; 00832 00833 //Off track? objects 00834 const Square_2D Map_3_Off_Track_Square[35] = { 00835 //Inside 00836 {{20,40},{40,-40}}, 00837 {{40,60},{200,40}}, 00838 {{40,40},{520,-60}}, 00839 {{100,380},{120,320}}, 00840 {{120,400},{400,300}}, 00841 {{200,140},{300,40}}, 00842 {{220,160},{280,140}}, 00843 {{400,300},{740,100}}, 00844 {{400,100},{500,40}}, 00845 {{740,420},{800,340}}, 00846 {{740,340},{980,300}}, 00847 {{740,160},{940,100}}, 00848 {{940,420},{1000,340}}, 00849 {{940,160},{1140,-40}}, 00850 {{960,440},{980,420}}, 00851 {{960,-40},{1140,-60}}, 00852 {{980,340},{1000,320}}, 00853 {{1140,140},{1160,-40}}, 00854 {{760,440},{780,420}}, 00855 //Outside 00856 {{-20,500},{60,100}}, 00857 {{60,500},{700,440}}, 00858 {{60,260},{340,200}}, 00859 {{60,200},{160,120}}, 00860 {{60,120},{140,100}}, 00861 {{340,240},{360,100}}, 00862 {{700,500},{1200,480}}, 00863 {{520,440},{680,340}}, 00864 {{680,440},{700,360}}, 00865 {{700,60},{880,40}}, 00866 {{700,40},{900,-100}}, 00867 {{800,260},{1200,200}}, 00868 {{780,240},{800,220}}, 00869 {{1040,480},{1060,260}}, 00870 {{840,480},{900,400}}, 00871 {{860,400},{880,380}} 00872 }; 00873 00874 //Off track? objects 00875 const Triangle_2D Map_3_Off_Track_Triangle[50] = { 00876 //Inside 00877 {{20,60},{40,40},4}, 00878 {{20,-40},{40,-60},3}, 00879 {{100,400},{120,380},4}, 00880 {{100,320},{120,300},3}, 00881 {{160,100},{200,60},4}, 00882 {{200,160},{220,140},4}, 00883 {{280,160},{300,140},1}, 00884 {{360,300},{400,260},3}, 00885 {{400,400},{500,300},1}, 00886 {{520,100},{680,-60},2}, 00887 {{700,340},{740,300},4}, 00888 {{300,60},{320,40},1}, 00889 {{380,60},{400,40},4}, 00890 {{740,440},{760,420},4}, 00891 {{740,300},{780,260},2}, 00892 {{740,200},{780,160},1}, 00893 {{780,440},{800,420},1}, 00894 {{800,380},{840,340},1}, 00895 {{900,380},{940,340},4}, 00896 {{900,100},{940,60},3}, 00897 {{940,440},{960,420},4}, 00898 {{940,-40},{960,-60},3}, 00899 {{980,440},{1000,420},1}, 00900 {{980,320},{1000,300},2}, 00901 {{1140,160},{1160,140},1}, 00902 {{1140,-40},{1160,-60},2}, 00903 //Outside 00904 {{-20,100},{20,60},2}, 00905 {{-20,-60},{20,-100},1}, 00906 {{60,440},{100,400},2}, 00907 {{60,300},{100,260},1}, 00908 {{140,120},{160,100},2}, 00909 {{160,200},{200,160},2}, 00910 {{300,200},{340,160},3}, 00911 {{340,260},{360,240},1}, 00912 {{420,440},{520,340},3}, 00913 {{540,60},{700,-100},4}, 00914 {{680,360},{700,340},2}, 00915 {{700,480},{740,440},2}, 00916 {{780,260},{800,240},4}, 00917 {{780,220},{800,200},3}, 00918 {{800,480},{840,440},3}, 00919 {{840,400},{860,380},3}, 00920 {{880,400},{900,380},2}, 00921 {{880,60},{900,40},1}, 00922 {{900,480},{940,440},2}, 00923 {{900,-60},{940,-100},1}, 00924 {{1000,480},{1040,440},3}, 00925 {{1000,300},{1040,260},4}, 00926 {{1160,200},{1200,160},3}, 00927 {{1160,-60},{1200,-100},4} 00928 }; 00929 00930 const Square_2D Map_3_Out_Of_Bounds_Square[18] = { 00931 //Inside 00932 {{50,30},{270,-30}}, 00933 {{230,130},{270,30}}, 00934 {{130,370},{390,330}}, 00935 {{270,10},{430,-30}}, 00936 {{430,120},{510,-30}}, 00937 {{430,310},{450,270}}, 00938 {{430,270},{710,120}}, 00939 {{710,140},{960,120}}, 00940 {{760,420},{780,310}}, 00941 {{780,30},{960,310}}, 00942 {{960,420},{980,330}}, 00943 {{960,140},{1140,-40}}, 00944 //Outside 00945 {{-100,240},{340,220}}, 00946 {{800,240},{1300,220}}, 00947 {{-200,700},{-100,-300}}, 00948 {{-100,700},{1300,600}}, 00949 {{1300,700},{1400,-300}}, 00950 {{-100,-200},{1300,-300}} 00951 }; 00952 00953 const Triangle_2D Map_3_Out_Of_Bounds_Triangle[12] = { 00954 {{370,330},{390,310},3}, 00955 {{390,370},{450,310},1}, 00956 {{390,310},{430,270},3}, 00957 {{450,310},{490,270},1}, 00958 {{510,120},{660,-30},2}, 00959 {{700,290},{720,270},4}, 00960 {{710,270},{720,260},2}, 00961 {{720,290},{740,270},2}, 00962 {{720,310},{740,290},4}, 00963 {{740,310},{760,290},2}, 00964 {{740,330},{760,310},4}, 00965 {{960,330},{980,310},2} 00966 }; 00967 00968 const Square_2D Map_3_Gates[17] = { 00969 {{-100,10},{50,0}}, 00970 {{100,220},{110,30}}, 00971 {{340,230},{430,220}}, 00972 {{130,330},{140,240}}, 00973 {{130,600},{140,370}}, 00974 {{500,600},{510,270}}, 00975 {{760,600},{770,420}}, 00976 {{960,600},{970,420}}, 00977 {{950,310},{960,240}}, 00978 {{710,230},{800,220}}, 00979 {{990,220},{1000,140}}, 00980 {{1140,100},{1300,90}}, 00981 {{1000,-40},{1010,-200}}, 00982 {{700,120},{710,-200}}, 00983 {{500,-30},{510,-200}}, 00984 {{300,-30},{310,-200}}, 00985 {{50,-30},{60,-200}} 00986 }; 00987 00988 const Triangle_2D Map_3_Boost_Plates[5] = { 00989 {{200,440},{220,420},2}, 00990 {{520,340},{540,320},2}, 00991 {{880,200},{900,180},2}, 00992 {{460,-60},{480,-80},4}, 00993 {{200,-60},{220,-80},4} 00994 };
Generated on Wed Jul 20 2022 17:42:24 by
1.7.2