1 function detectMap() |
1 local maps = { |
|
2 ["Border,60526986531,M838018718Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #1" |
|
3 , ["Border,71022545335,M-490229244Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #2" |
|
4 , ["Border,40469748943,M806689586Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #3" |
|
5 , ["85940488650,M-134869715Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #4" |
|
6 , ["62080348735,M-661895109Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #5" |
|
7 , ["56818170733,M479034891Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #6" |
|
8 , ["Border,25372705797,M1770509913Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #7" |
|
9 , ["Border,10917540013,M1902370941Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #8" |
|
10 , ["Border,43890274319,M185940363Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #9" |
|
11 , ["Border,27870148394,M751885839Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #10" |
|
12 , ["Border,22647869226,M178845011Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #11" |
|
13 , ["Border,46954401793,M706743197Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #12" |
|
14 , ["Border,60760377667,M157242054Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #13" |
|
15 , ["Border,51825989393,M-1585582638Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #14" |
|
16 , ["81841189250,M256715557Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #15" |
|
17 , ["Border,44246064625,M-528106034Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #16" |
|
18 , ["60906776802,M-1389184823Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #17" |
|
19 , ["Border,70774747774,M-534640804Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #18" |
|
20 , ["Border,50512019610,M-1839546856Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #19" |
|
21 , ["60715683005,M-281312897Scripts/Multiplayer/Racer.lua"] = "Racer Challenge #20" |
|
22 -- tech racer |
|
23 , ["Border,19661006772,M-975391975Scripts/Multiplayer/TechRacer.lua"] = "Tech Racer #1" |
|
24 , ["Border,19661306766,M-975391975Scripts/Multiplayer/TechRacer.lua"] = "Tech Racer #2" |
|
25 , ["Border,19661606760,M-975391975Scripts/Multiplayer/TechRacer.lua"] = "Tech Racer #3" |
|
26 , ["Border,19661906754,M-975391975Scripts/Multiplayer/TechRacer.lua"] = "Tech Racer #4" |
|
27 , ["Border,19662206748,M-975391975Scripts/Multiplayer/TechRacer.lua"] = "Tech Racer #5" |
|
28 , ["Border,19662506742,M-975391975Scripts/Multiplayer/TechRacer.lua"] = "Tech Racer #6" |
|
29 , ["Border,19662806736,M-975391975Scripts/Multiplayer/TechRacer.lua"] = "Tech Racer #7" |
|
30 , ["Border,19663106730,M-975391975Scripts/Multiplayer/TechRacer.lua"] = "Tech Racer #8" |
|
31 } |
|
32 |
|
33 -- modified Adler hash |
|
34 local hashA = 0 |
|
35 local hashB = 0 |
|
36 local hashModule = 299993 |
|
37 |
|
38 function resetHash() |
|
39 hashA = 0 |
|
40 hashB = 0 |
|
41 end |
|
42 |
|
43 function addHashData(i) |
|
44 hashA = (hashA + i + 65536) % hashModule |
|
45 hashB = (hashB + hashA) % hashModule |
|
46 end |
|
47 |
|
48 function hashDigest() |
|
49 return(hashB * hashModule + hashA) |
|
50 end |
|
51 |
|
52 function detectMapWithDigest() |
2 if RopePercent == 100 and MinesNum == 0 then |
53 if RopePercent == 100 and MinesNum == 0 then |
3 -- challenges with border |
54 mapString = hashDigest() .. "," .. LandDigest |
|
55 |
4 if band(GameFlags, gfBorder) ~= 0 then |
56 if band(GameFlags, gfBorder) ~= 0 then |
5 if LandDigest == "M838018718Scripts/Multiplayer/Racer.lua" then |
57 mapString = "Border," .. mapString |
6 return("Racer Challenge #1") |
|
7 elseif LandDigest == "M-490229244Scripts/Multiplayer/Racer.lua" then |
|
8 return("Racer Challenge #2") |
|
9 elseif LandDigest == "M806689586Scripts/Multiplayer/Racer.lua" then |
|
10 return("Racer Challenge #3") |
|
11 elseif LandDigest == "M1770509913Scripts/Multiplayer/Racer.lua" then |
|
12 return("Racer Challenge #7") |
|
13 elseif LandDigest == "M1902370941Scripts/Multiplayer/Racer.lua" then |
|
14 return("Racer Challenge #8") |
|
15 elseif LandDigest == "M185940363Scripts/Multiplayer/Racer.lua" then |
|
16 return("Racer Challenge #9") |
|
17 elseif LandDigest == "M751885839Scripts/Multiplayer/Racer.lua" then |
|
18 return("Racer Challenge #10") |
|
19 elseif LandDigest == "M178845011Scripts/Multiplayer/Racer.lua" then |
|
20 return("Racer Challenge #11") |
|
21 elseif LandDigest == "M706743197Scripts/Multiplayer/Racer.lua" then |
|
22 return("Racer Challenge #12") |
|
23 elseif LandDigest == "M157242054Scripts/Multiplayer/Racer.lua" then |
|
24 return("Racer Challenge #13") |
|
25 elseif LandDigest == "M-1585582638Scripts/Multiplayer/Racer.lua" then |
|
26 return("Racer Challenge #14") |
|
27 elseif LandDigest == "M-528106034Scripts/Multiplayer/Racer.lua" then |
|
28 return("Racer Challenge #16") |
|
29 elseif LandDigest == "M-534640804Scripts/Multiplayer/Racer.lua" then |
|
30 return("Racer Challenge #18") |
|
31 elseif LandDigest == "M-1839546856Scripts/Multiplayer/Racer.lua" then |
|
32 return("Racer Challenge #19") |
|
33 end |
|
34 -- challenges without border |
|
35 elseif LandDigest == "M-134869715Scripts/Multiplayer/Racer.lua" then |
|
36 return("Racer Challenge #4") |
|
37 elseif LandDigest == "M-661895109Scripts/Multiplayer/Racer.lua" then |
|
38 return("Racer Challenge #5") |
|
39 elseif LandDigest == "M479034891Scripts/Multiplayer/Racer.lua" then |
|
40 return("Racer Challenge #6") |
|
41 elseif LandDigest == "M256715557Scripts/Multiplayer/Racer.lua" then |
|
42 return("Racer Challenge #15") |
|
43 elseif LandDigest == "M-1389184823Scripts/Multiplayer/Racer.lua" then |
|
44 return("Racer Challenge #17") |
|
45 end |
58 end |
|
59 |
|
60 --WriteLnToConsole(mapString) |
|
61 return(maps[mapString]) |
46 end |
62 end |
47 end |
63 end |