//--------------------------------------------------------- // // MidtownMayhem // by Mar-C //--------------------------------------------------------- #include #define COLOR_RED 0xAA3333AA #define COLOR_GREEN 0x33AA33AA #define COLOR_PURPLE 0xcc00ffAA #define COLOR_BLUE 0x0099ffAA #define COLOR_YELLOW 0xffff33AA #define COLOR_GREY 0xc6c6c6AA #define TEAM_EINS 1 #define TEAM_LEITUNG 2 static gTeam[MAX_PLAYERS]; // Verfolgt die Teamzuweisung new startTimer; new IsRunning=false; #define CP_COUNTER 106 new gPlayerClass[MAX_PLAYERS]; new Float:CPR[][4] = { {-2256.2903,-89.3658,34.7919,30.0}, {-2253.3164,61.8389,34.7961,30.0}, {-2251.3416,216.4965,34.7961,30.0}, {-2251.9636,325.1821,34.7940,30.0}, {-2295.3423,406.1028,34.6355,30.0}, {-2379.0642,521.5454,27.6208,30.0}, {-2386.7568,610.3460,29.8726,30.0}, {-2385.8687,717.4634,34.6398,30.0}, {-2386.9824,863.3997,42.5194,30.0}, {-2364.1208,958.1926,44.9240,30.0}, {-2263.4656,947.7628,66.1149,30.0}, {-2231.9866,918.2057,66.1148,30.0}, {-2128.3679,918.3046,79.5037,30.0}, {-2028.5654,924.8950,46.3818,30.0}, {-2004.2565,901.9951,44.9281,30.0}, {-2004.3494,827.5429,44.9206,30.0}, {-2004.7007,697.6481,44.9185,30.0}, {-1985.6074,606.3219,34.6407,30.0}, {-1870.6764,605.9247,34.6403,30.0}, {-1714.7094,642.0043,24.3566,30.0}, {-1713.9769,754.4935,24.3615,30.0}, {-1713.8214,881.2040,24.3664,30.0}, {-1714.0304,961.2604,24.3669,30.0}, {-1714.1403,1116.3187,44.7989,30.0}, {-1734.0795,1186.4155,24.5989,30.0}, {-1794.4825,1165.4569,27.1258,30.0}, {-1794.3367,1083.2059,44.8282,30.0}, {-1794.0273,1011.8592,24.3608,30.0}, {-1812.6895,925.2176,24.3670,30.0}, {-1916.6718,925.1807,35.2708,30.0}, {-2004.1620,950.2017,44.9176,30.0}, {-1986.1893,1055.2131,55.1924,30.0}, {-1885.3010,1035.0699,43.7847,30.0}, {-1899.4531,902.8668,34.6388,30.0}, {-1881.2645,845.0837,34.6317,30.0}, {-1778.1407,845.4779,24.3569,30.0}, {-1692.4360,845.6349,24.3590,30.0}, {-1559.3848,819.4901,6.6576,30.0}, {-1576.2113,731.1161,6.8799,30.0}, {-1733.1177,731.0167,25.2492,30.0}, {-1913.1245,731.5505,44.9204,30.0}, {-2022.2649,731.1178,46.3604,30.0}, {-2088.6946,712.7893,69.0408,30.0}, {-2068.7356,566.0001,34.6420,30.0}, {-2004.2578,547.1472,34.6418,30.0}, {-2021.1919,504.0563,34.6425,30.0}, {-2165.3755,506.4942,34.6403,30.0}, {-2260.8914,583.9662,35.7503,30.0}, {-2260.7688,690.1485,48.9211,30.0}, {-2260.4497,825.0114,51.4331,30.0}, {-2260.9224,964.2000,66.4474,30.0}, {-2236.1226,1093.6516,79.4776,30.0}, {-2143.0139,1105.4850,78.8463,30.0}, {-2164.2688,1176.8788,55.2035,30.0}, {-2289.6477,1176.3479,53.6133,30.0}, {-2391.1665,1176.3412,36.2395,30.0}, {-2478.0461,1223.1337,34.6502,30.0}, {-2620.5938,1190.6754,34.6456,30.0}, {-2731.0347,1079.4917,46.1654,30.0}, {-2736.2056,1004.1300,53.9845,30.0}, {-2587.6985,1004.3406,77.7658,30.0}, {-2526.6145,988.8438,77.7803,30.0}, {-2526.6475,895.9871,64.2936,30.0}, {-2527.0278,797.0154,49.2446,30.0}, {-2541.5850,707.9794,27.4373,30.0}, {-2619.1882,707.9655,27.4360,30.0}, {-2750.9448,719.4147,40.9353,30.0}, {-2734.7002,813.0244,52.6875,30.0}, {-2589.7087,808.5349,49.4524,30.0}, {-2516.0894,807.8109,49.3404,30.0}, {-2369.7246,807.5565,35.2569,30.0}, {-2261.7681,788.4954,48.9186,30.0}, {-2261.1528,650.0513,48.9211,30.0}, {-2288.8401,566.2847,34.6401,30.0}, {-2407.2761,566.0828,24.3663,30.0}, {-2542.3945,565.8621,14.0851,30.0}, {-2606.6892,547.2767,14.0876,30.0}, {-2606.6162,449.9949,14.0768,30.0}, {-2609.1418,308.2101,3.8076,30.0}, {-2663.4648,288.3731,3.8106,30.0}, {-2706.5618,273.0284,3.8065,30.0}, {-2707.0552,207.3308,3.8030,30.0}, {-2689.4553,157.7803,3.8061,30.0}, {-2604.3420,142.6286,3.8080,30.0}, {-2587.1985,85.3609,4.1994,30.0}, {-2544.6956,137.7854,15.8493,30.0}, {-2497.9792,79.4672,24.8936,30.0}, {-2420.9485,65.6293,34.6415,30.0}, {-2421.1646,-88.7636,34.7961,30.0}, {-2431.0439,-202.1592,34.8004,30.0}, {-2523.3027,-210.4226,21.3098,30.0}, {-2664.0359,-210.3971,3.8184,30.0}, {-2808.9365,-194.2206,6.6563,30.0}, {-2791.6042,-70.1330,6.6635,30.0}, {-2688.7437,-70.1005,3.8035,30.0}, {-2582.9607,-70.3896,4.7417,30.0}, {-2482.7537,-70.1322,27.2789,30.0}, {-2356.5598,-70.2563,34.7883,30.0}, {-2241.5129,-70.1088,34.7967,30.0}, {-2155.0239,-69.9935,34.7979,30.0}, {-1992.8104,-69.3749,34.0593,30.0}, {-1880.8763,-110.5338,13.5209,30.0}, {-1799.4297,-98.6343,6.3028,30.0}, {-1807.9252,103.6716,14.5852,30.0}, {-1733.2925,320.4166,6.6565,30.0}, {-1572.0087,484.0610,6.657,30.0} }; // This is how long the round lasts before exiting // Set to 0 to disable the timer //new gRoundTime = 1200000; new gRoundTime = 0; //--------------------------------------------------------- main() { print("\n----------------------------------"); print(" MidtownMayhem v1\n"); print("----------------------------------\n"); } //--------------------------------------------------------- public OnGameModeInit() { SetGameModeText("MidtownMayhem"); ShowNameTags(1); ShowPlayerMarkers(1); SetTeamCount(30); SetWorldTime(14); // Players AddPlayerClass(247,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(248,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(21,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(22,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(122,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(34,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(109,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(7,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(192,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(72,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(188,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(206,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(181,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(23,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(100,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(233,-2254.9961,-173.5401,35.1719,4.5779,0,0,0,0,0,0); // BikerSpawn AddPlayerClass(275,-2250.0,-232.0,35.0,90.0,0,0,0,0,0,0); // HeliSpawn AddPlayerClass(217,-2250.0,-236.0,35.0,90.0,0,0,0,0,0,0); // SUVSpawn AddPlayerClass(211,-2340.4460,-139.6645,35.5547,23.0393,0,0,0,0,0,0); // Manda //Cars AddStaticVehicle(581,-2250.0,-172.5,35.0,90.0,0,1); // Bike1 AddStaticVehicle(581,-2250.0,-167.5,35.0,90.0,1,0); // Bike2 AddStaticVehicle(581,-2250.0,-162.5,35.0,90.0,2,0); // Bike3 AddStaticVehicle(581,-2250.0,-157.5,35.0,90.0,3,0); // Bike4 AddStaticVehicle(581,-2250.0,-152.5,35.0,90.0,5,0); // Bike5 AddStaticVehicle(581,-2250.0,-147.5,35.0,90.0,6,0); // Bike6 AddStaticVehicle(581,-2250.0,-142.5,35.0,90.0,11,0); // Bike7 AddStaticVehicle(581,-2250.0,-137.5,35.0,90.0,16,0); // Bike8 AddStaticVehicle(581,-2250.0,-132.5,35.0,90.0,20,0); // Bike9 AddStaticVehicle(581,-2250.0,-127.5,35.0,90.0,25,1); // Bike10 AddStaticVehicle(581,-2250.0,-122.5,35.0,90.0,30,1); // Bike11 AddStaticVehicle(581,-2250.0,-117.5,35.0,90.0,38,0); // Bike12 AddStaticVehicle(581,-2250.0,-112.5,35.0,90.0,44,0); // Bike13 AddStaticVehicle(581,-2250.0,-107.5,35.0,90.0,54,0); // Bike14 AddStaticVehicle(581,-2250.0,-102.5,35.0,90.0,61,0); // Bike15 AddStaticVehicle(581,-2250.0,-97.5,35.0,90.0,65,0); // Bike16 AddStaticVehicle(581,-2250.0,-92.5,35.0,90.0,99,0); // Bike17 AddStaticVehicle(581,-2250.0,-87.5,35.0,90.0,113,0); // Bike18 //Leitung,Filmer,Support AddStaticVehicle(561,-2352.1416,-125.5769,34.9379,177.7434,103,103); // Stratum AddStaticVehicle(561,-2341.0359,-125.8178,34.9383,180.7228,113,113); // Stratum AddStaticVehicle(487,-2087.0,-508.0,35.0,181.0,1,4); // Heli1 AddStaticVehicle(487,-2067.0,-508.0,35.0,181.0,1,4); // Heli2 AddStaticVehicle(487,-2047.0,-508.0,35.0,181.0,1,4); // Heli3 AddStaticVehicle(487,-2027.0,-508.0,35.0,181.0,1,4); // Heli4 AddStaticVehicle(490,-2215.2693,-422.8755,50.4877,44.5437,3,0); // SUV1 AddStaticVehicle(400,-2209.3508,-428.8883,50.4941,44.5436,103,0); // SUV2 AddStaticVehicle(579,-2202.0298,-436.3257,50.2951,44.5444,44,44); // SUV3 //Sonstige AddStaticVehicle(439,-2266.5437,97.5013,34.9857,268.7476,-1,-1); // Stallion AddStaticVehicle(529,-2266.1099,113.2704,34.9856,269.3621,-1,-1); // Willard AddStaticVehicle(418,-2265.8186,141.1002,34.9729,268.8637,-1,-1); // Moonbeam AddStaticVehicle(404,-2265.9478,196.6796,34.9778,270.5386,-1,-1); // Peren AddStaticVehicle(562,-2067.7385,963.1244,60.4394,203.4644,-1,-1); // Elegy AddStaticVehicle(588,-1731.4021,591.7669,24.6887,359.3704,-1,-1); // Hotdog AddStaticVehicle(458,-1708.0386,761.4536,24.5482,0.1378,-1,-1); // Solair AddStaticVehicle(498,-1708.0608,787.7702,24.5492,0.0153,123,123); // Boxville AddStaticVehicle(547,-1708.0323,805.1715,24.5482,359.9090,-1,-1); // Primo AddStaticVehicle(436,-1720.3556,802.5471,24.5482,179.5172,-1,-1); // Previon AddStaticVehicle(421,-1720.3215,767.0352,24.5477,181.1890,-1,-1); // Washing AddStaticVehicle(492,-1707.7440,878.3550,24.5561,358.8945,-1,-1); // Greenwood AddStaticVehicle(418,-1707.8372,892.4620,24.5557,0.8304,-1,-1); // Moonbeam AddStaticVehicle(536,-1720.3093,895.2213,24.5558,180.1536,-1,-1); // Blade AddStaticVehicle(420,-1720.2848,878.1064,24.5561,180.0633,-1,-1); // Taxi AddStaticVehicle(440,-1707.7762,954.5103,24.5557,359.5722,-1,-1); // Rumpo AddStaticVehicle(561,-1693.9644,937.4454,24.5561,90.3136,-1,-1); // Stratum AddStaticVehicle(414,-1700.0393,1035.8728,45.0243,89.1961,-1,-1); // Mule AddStaticVehicle(483,-1720.4657,1039.4050,44.8760,179.9847,-1,-1); // Camper AddStaticVehicle(400,-1720.3352,1074.6196,44.9666,179.8069,-1,-1); // Landstal AddStaticVehicle(426,-1707.9258,1058.6429,44.8761,359.5786,-1,-1); // Premier AddStaticVehicle(507,-1758.1416,1180.0674,24.7899,269.9012,-1,-1); // Elegant AddStaticVehicle(557,-1776.9906,1204.7684,24.9382,265.9949,-1,-1); // Monster AddStaticVehicle(434,-1799.3093,1194.6759,24.7905,91.7729,-1,-1); // Hotknife AddStaticVehicle(419,-1800.4087,983.5687,24.5482,180.3908,-1,-1); // Esperant AddStaticVehicle(566,-1800.4503,956.8032,24.5480,179.8322,-1,-1); // Tahoma AddStaticVehicle(410,-1814.5360,937.4411,24.5561,90.1146,-1,-1); // Manana AddStaticVehicle(562,-1812.7018,912.3241,24.5556,271.1669,-1,-1); // Elegy AddStaticVehicle(561,-1905.5439,896.5035,34.8292,180.6484,-1,-1); // Stratum AddStaticVehicle(529,-1905.3723,879.5571,34.8295,180.5558,-1,-1); // Willard AddStaticVehicle(414,-1893.3063,875.2924,34.8294,0.3561,-1,-1); // Mule AddStaticVehicle(439,-1893.3574,884.8749,34.8295,0.2802,-1,-1); // Stallion AddStaticVehicle(458,-1914.4814,834.7111,35.1131,269.9268,-1,-1); // Solair AddStaticVehicle(551,-1786.6139,834.5414,24.5482,270.5344,-1,-1); // Merit AddStaticVehicle(492,-1754.1664,834.7874,24.5481,270.3890,-1,-1); // Greenwood AddStaticVehicle(445,-1743.4949,855.9380,24.5480,88.4999,-1,-1); // Admiral AddStaticVehicle(437,-1767.9733,856.0518,24.5479,90.8631,-1,-1); // Coach AddStaticVehicle(529,-1688.7935,834.8677,24.5485,270.7183,-1,-1); // Willard AddStaticVehicle(405,-1610.2792,858.1068,7.3556,90.5306,-1,-1); // Sentinel AddStaticVehicle(533,-1593.6372,858.1629,7.3517,89.8938,-1,-1); // Feltzer AddStaticVehicle(436,-1757.1489,737.5372,29.7841,90.2672,-1,-1); // Previon AddStaticVehicle(546,-1793.7892,724.9922,34.8292,270.2897,-1,-1); // Intruder AddStaticVehicle(498,-1966.7638,737.3898,45.1107,90.6596,123,123); // Boxville AddStaticVehicle(426,-1975.8285,725.3296,45.1109,270.0886,-1,-1); // Premier AddStaticVehicle(421,-1945.5837,725.3313,45.1116,269.9569,-1,-1); // Washing AddStaticVehicle(579,-2719.2334,983.2329,54.2742,8.2846,-1,-1); // Huntley AddStaticVehicle(411,-2724.7502,981.2331,54.2741,7.9999,17,17); // Infernus AddStaticVehicle(414,-2461.1077,786.6041,34.9853,90.4343,2,-1); // SMule AddStaticVehicle(414,-2460.8914,780.0016,34.9853,90.2567,2,-1); // SMule AddStaticVehicle(560,-2714.0386,201.4086,4.1427,122.8538,5,5); // Sultan AddStaticVehicle(558,-2714.4863,196.3036,4.1441,126.3149,1,1); // Uranus AddStaticVehicle(562,-2714.1367,191.8465,4.1434,127.0413,86,86); // Elegy AddStaticVehicle(541,-2068.4644,-84.0388,34.9776,359.4154,0,86); // Bullet AddStaticVehicle(451,-2085.4221,-84.6227,34.9781,358.7676,6,6); // Turismo AddStaticVehicle(582,-1593.5948,468.3912,6.8451,135.1314,-1,-1); // Newsvan AddStaticVehicle(588,-1551.5536,485.3991,6.9926,27.8614,-1,-1); // Hotdog AddStaticVehicle(423,-1545.7089,497.3155,6.9923,64.8067,-1,-1); // Whoopee AddStaticVehicle(470,-1523.4222,495.0816,6.9929,274.7975,-1,-1); // Patriot AddStaticVehicle(582,-1561.0293,470.0255,7.0002,331.8170,-1,-1); // Newsvan AddStaticVehicle(416,-1571.1592,498.5970,6.8449,159.3849,-1,-1); // Ambulance //a lil som' som' //----------------------------------------------------- if (gRoundTime > 0) { SetTimer("GameModeExitFunc", gRoundTime, 0); } return 1; } //--------------------------------------------------------- new PlayerOnCP[MAX_PLAYERS]=0; public OnPlayerConnect(playerid) { GameTextForPlayer(playerid,"~w~G:A MidtownMayhem",5000,5); PlayerOnCP[playerid]=0; return 1; } //--------------------------------------------------------- public OnPlayerSpawn(playerid) { SetPlayerInterior(playerid,0); if(gTeam[playerid] == TEAM_EINS) { SetPlayerColor(playerid,COLOR_YELLOW); // Rot } else if(gTeam[playerid] == TEAM_LEITUNG) { SetPlayerColor(playerid,COLOR_BLUE); // Blau } SetPlayerCheckpoint(playerid, -2256.2903,-89.3658,34.7919,30.0); //Start return 1; } //--------------------------------------------------------- public SetupPlayerForClassSelection(playerid) { SetPlayerPos(playerid,-2516.5488,808.2844,49.8085); SetPlayerCameraPos(playerid,-2519.9785,808.2826,49.8275); SetPlayerCameraLookAt(playerid,-2516.5488,808.2844,49.8085); SetPlayerFacingAngle(playerid, 90.0); } //--------------------------------------------------------- public SetPlayerToTeam(playerid, classid) { if( classid < 16 ) { gTeam[playerid] = TEAM_EINS; //Zuordnung der Player zu Teams } else if(classid == 16 || classid == 17 || classid == 18 ) { gTeam[playerid] = TEAM_LEITUNG; } } //--------------------------------------------------------- public OnPlayerRequestClass(playerid, classid) { SetPlayerToTeam(playerid, classid); SetupPlayerForClassSelection(playerid); gPlayerClass[playerid] = classid; switch (classid) { case 0: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 1: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 2: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 3: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 4: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 5: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 6: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 7: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 8: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 9: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 10: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 11: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 12: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 13: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 14: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 15: { GameTextForPlayer(playerid, "~g~Rennfahrer", 500, 3); } case 16: { GameTextForPlayer(playerid, "~b~Support", 500, 3); } case 17: { GameTextForPlayer(playerid, "~b~Filmer", 500, 3); } case 18: { GameTextForPlayer(playerid, "~b~Leitung", 500, 3); } } return 1; } //--------------------------------------------------------- strtok(const string[], &index,seperator=' ') { new length = strlen(string); new offset = index; new result[255]; while ((index < length) && (string[index] != seperator) && ((index - offset) < (sizeof(result) - 1))) { result[index - offset] = string[index]; index++; } result[index - offset] = EOS; if ((index < length) && (string[index] == seperator)) { index++; } return result; } //--------------------------------------------------------- new startcount=5; public StartCounter() { if (startcount!=0) { new string[256]; format(string, sizeof(string), "%d", startcount); GameTextForAll(string, 1000, 6); startcount--; } else { GameTextForAll("GO!", 1000, 6); KillTimer(startTimer); startcount=5; for(new p=0;p