rendered paste body#include <a_samp>#include <dudb>// Sekcja Define#define COLOR_LIGHTBLUE 0x33CCFFAA#define MIN_VEHI_ID 400#define MAX_VEHI_ID 611#define PI 3.14#define CWEAPONS 34, 5000 , 24, 300 , 39, 500#define COLOR_SYSGREY 0xC6BEBDFF /* From DF */#define end; }#define begin {#define var new#define If%1%2%3then if(%1%2%3){#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1#define SPAWNY 23#define FILE_SETTINGS "rpgsettings.ini"// Koniec Define// Definicje zmiennychnew ONEHITKO;new Skins;new Float:ShipSpeed=0.0;new ShipDriver = -1;new ShipIcon;new vehicles;new Menu:CarBuy;new Text:BT;new Menu:menu1;new Menu:menu2;new Text:bombtext;new Text:text2;new Ship;new Menu:BTM;// Koniec Definicji// Definicje tablic dynamicznychnew DriftpNoC[200];new logged[100];new Float:ppos[MAX_PLAYERS][3];new DriftP[200];new Text:DriftText[6];new PlayerDocked[200];new Float:PlayerDockData[200][3];new weapmod[600] = {1212,331,333,334,335,336,337,338,339,341,321,322,323,324,325,326,342,343,344,345,345,345,346,347,348,349,350,351,352,353,355,356,372,357,358,359,360,361,362,363,364,365,366,367,368,369,371};new PickUpMoney[101] = {false, ...};new DropPick[101] = {false, ...};new Text:gVText[MAX_PLAYERS],gUseVText[MAX_PLAYERS] = false,gVTextNum[MAX_PLAYERS] = 0,Float:gX = 1.2, Float:gY = 2.5;new HideTextDef[Text:255];new Rows[300];new pexit[200];new exits[200];new PlayerPut[MAX_PLAYERS] = -1;new VehicleCreated[700] = {false, ...};new keydown[MAX_PLAYERS] = {false, ...};new playerbox[200]={255, ...};new objmvd[8000] = {false, ...};new Gangzone[200];new nrgexit[200];new models[700];new modelscreated;new ramptypes[6] = {1503,1660,1245,1631,1632,1655};new bomb[700];new bombarm[700][100];new playerramptypes[MAX_PLAYERS] = {0, ...};new oldkeys2[MAX_PLAYERS];new vehicleNames[212][]={"Landstalker","Bravura","Buffalo","Linerunner","Pereniel","Sentinel","Dumper","Firetruck","Trashmaster","Stretch","Manana","Infernus","Voodoo","Pony","Mule","Cheetah","Ambulance","Leviathan","Moonbeam","Esperanto","Taxi","Washington","Bobcat","MrWhoopee","BFInjection","Hunter","Premier","Enforcer","Securicar","Banshee","Predator","Bus","Rhino","Barracks","Hotknife","Trailer","Previon","Coach","Cabbie","Stallion","Rumpo","RCBandit","Romero","Packer","Monster","Admiral","Squalo","Seasparrow","Pizzaboy","Tram","Trailer","Turismo","Speeder","Reefer","Tropic","Flatbed","Yankee","Caddy","Solair","Berkley'sRCVan","Skimmer","PCJ-600","Faggio","Freeway","RCBaron","RCRaider","Glendale","Oceanic","Sanchez","Sparrow","Patriot","Quad","Coastguard","Dinghy","Hermes","Sabre","Rustler","ZR350","Walton","Regina","Comet","BMX","Burrito","Camper","Marquis","Baggage","Dozer","Maverick","NewsChopper","Rancher","FBIRancher","Virgo","Greenwood","Jetmax","Hotring","Sandking","BlistaCompact","PoliceMaverick","Boxville","Benson","Mesa","RCGoblin","HotringRacer","HotringRacer","BloodringBanger","Rancher","SuperGT","Elegant","Journey","Bike","MountainBike","Beagle","Cropdust","Stunt","Tanker","RoadTrain","Nebula","Majestic","Buccaneer","Shamal","Hydra","FCR-900","NRG-500","HPV1000","CementTruck","TowTruck","Fortune","Cadrona","FBITruck","Willard","Forklift","Tractor","Combine","Feltzer","Remington","Slamvan","Blade","Freight","Streak","Vortex","Vincent","Bullet","Clover","Sadler","Firetruck","Hustler","Intruder","Primo","Cargobob","Tampa","Sunrise","Merit","Utility","Nevada","Yosemite","Windsor","Monster","Monster","Uranus","Jester","Sultan","Stratum","Elegy","Raindance","RCTiger","Flash","Tahoma","Savanna","Bandito","Freight","Trailer","Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley","Stafford","BF-400","Newsvan","Tug","Trailer","Emperor","Wayfarer","Euros","Hotdog","Club","Trailer","Trailer","Andromada","Dodo","RCCam","Launch","PoliceCar","PoliceCar","PoliceCar","PoliceRanger","Picador","S.W.A.T.Van","Alpha","Phoenix","Glendale","Sadler","LuggageTrailer","LuggageTrailer","StairTrailer","Boxville","FarmPlow","UtilityTrailer"};new bombtextexit[200];new Float:Spawny[SPAWNY][4]={{-1675.1111,431.4987,7.1797,226.9177},{-1951.9447,281.9070,35.4688,90.3539},{-2648.3779,-28.9247,6.1328,179.7330},{-2539.5996,-620.6281,132.7109,0.1305},{-2546.5522,632.7516,14.4531,88.4092},{-2116.7483,926.5796,86.0791,175.1209},{-1695.3904,1336.4022,7.1797,43.7284},{-2627.8799,1404.3269,7.0938,249.3905},{-2767.0608,788.6513,52.7813,264.2817},{-1964.0610,639.5753,46.5625,1.4141},{-1715.8062,-41.3317,3.5547,34.6315},{-1422.2521,-288.5027,14.1484,138.0475},{-2064.6470,-962.3367,32.1719,270.3681},{-2157.8259,-399.0218,35.3359,33.8320},{-2322.2959,-156.1947,35.5547,268.6738},{-2124.7859,654.7659,52.3672,92.2084},{-2315.0190,1041.0239,61.8672,86.4601},{-1666.3882,719.7740,30.5007,138.5441},{-1226.9695,55.1305,14.1322,312.5888},{-2423.9507,336.3998,36.8118,240.5025},{-1616.3232,686.2570,7.1875,177.8793},{-1605.7732,731.8452,-5.2422,0.6189},{-1622.6561,660.6306,-5.2422,91.1497}};// Koniec tablic// Forwardowanie funkcjiforward DriftUpdate();forward Float:GetXYInFrontOfPlayerEx(playerid, &Float:x, &Float:y, Float:distance);forward Float:GetPlayerTheoreticAngle(i);forward DriftClear2(playerid, war);forward DriftClear(playerid);forward Speed();forward PickDestroy(o);forward OnPlayerPressShipKey(playerid,key);forward IsCar2(vid);forward ShipKeys();forward Connectcontinue(playerid);forward HideVehText(playerid);forward Random2(min, max);forward ShipIconUpdate();forward IsPlayerInArea(playerID, Float:data1,Float:data2,Float:data3,Float:data4);forward IsPlayerInCube(playerid, Float:xmin, Float:ymin, Float:zmin, Float:xmax, Float:ymax, Float:zmax);forward Float:GetXYZInFrontOfPos(&Float:x, &Float:y, &Float:Z, Float:rZ, Float:distance);forward NitroUpdate();forward GetDistanceBetweenPlayers(playerid,playerid2);forward Put();forward exitsclear(playerid);forward pexitclear(playerid);forward GetClosestCar(playerid);forward GetDistanceToCar(playerid, carid);forward Float:GetOptimumRampDistance(playerid);forward Float:GetXYInFrontOfPlayer(playerid, &Float:x, &Float:y, Float:distance);forward SetRandomCar();forward SetRandomBike();forward SetRandomPlane();forward SetRandomBoat();forward IsCar(model);forward IsPlane(model);forward IsBike(model);forward IsBoat(model);forward AddStaticVehicle2(random, modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:z_angle, color1, color2);forward Keys();forward RemoveRamp(playerid);forward SetTextShowTime(playerid, text, time);forward HideText(playerid, text);forward KeysTimer();forward OnPlayerPressKey(playerid, key);forward BlueTooth(playerid);// Koniec forwardowaniamain(){ SetTimer("DriftUpdate",500,true); SetTimer("Speed",100,true); SetTimer("ShipIconUpdate", 1, true); print("\n----------------------------------"); print(" Freeroam"); print("----------------------------------\n"); printf("%d pojazdów pojawiono.", vehicles); printf("\n%d modeli stworzono.\n", modelscreated+1); printf("\n%d skinów dodano.\n", Skins); bombtext = TextDrawCreate(250.0, 200.0, "Bomba Uzbrojona!"); TextDrawColor(bombtext, 0xFF0000FF); text2 = TextDrawCreate(200.0,400.0 ,"NRG-500 :: Pojawiono poprawnie."); TextDrawColor(text2, 0xFFFFFFFF); CarBuy = CreateMenu("Wybierz samochod", 80, 100.0, 200.0, 70.0, 60.0); menu1=CreateMenu("Booom Sklep:", 5, 300.0, 300.0, 179.0, 19.0); BTM=CreateMenu("Wyszukani gracze:", 5, 300.0, 300.0, 379.0, 19.0); menu2=CreateMenu("Booom Sklep:", 5, 300.0, 300.0, 179.0, 19.0); AddMenuItem(menu1, 0, "Zaloz bombe"); AddMenuItem(menu1, 0, "Wyjdz"); AddMenuItem(menu2, 0, "Bomba kupiona!"); AddMenuItem(menu2, 0, "Kliknij Enter"); AddMenuItem(menu2, 0, "Aby wyjsc"); AddMenuItem(CarBuy, 0, "Jester"); AddMenuItem(CarBuy, 0, "Elegy"); AddMenuItem(CarBuy, 0, "Sabre"); AddMenuItem(CarBuy, 0, "Turismo"); AddMenuItem(CarBuy, 0, "Bullet"); AddMenuItem(CarBuy, 0, "Flash"); AddMenuItem(CarBuy, 0, "Infernus"); AddMenuItem(CarBuy, 0, "Super GT"); AddMenuItem(CarBuy, 0, "ZR-350"); for(new x=0;x<3;x++)DisableMenuRow(menu2, x); for(new mon=1000;mon<5000;mon += 500){ new s[8];format(s, 8, "$%d", mon); AddMenuItem(CarBuy, 1, s); }}public OnGameModeInit(){SetTimer("HealthLoop", 500, true);new i;SetGameModeText("FreeRoam by Luby");for(i=0;i<299;i++)if(i!=3 && i!=4 && i!=5 && i!=6 && i!=8 && i!=42 && i!=65 && i!=74 && i!=86 && i!=119 && i!=149 && i!=208 && i!=265 && i!=266 && i!=267 && i!=268 && i!=269 && i!=270 && i!=271 && i!=272 && i!=273 && i!=289)AddPlayerClass(i,1958.3783,1343.1572,15.3746,269.1425,CWEAPONS);//-------Pojazdy-------//EnableTirePopping(1);ShowNameTags(0);AddStaticVehicle2(0,449,-2254.7393,5.1351,35.6223,178.5588,1,74); // enter to szesnascieAddStaticVehicle2(0,589,-2064.3489,-83.6028,34.8222,359.7387,22,22); // Car0AddStaticVehicle2(0,579,-2352.2151,-152.4933,35.2490,359.2793,10,10); // Car1AddStaticVehicle2(0,561,-2265.5530,149.0001,34.9765,269.7605,37,78); // Car2AddStaticVehicle2(0,560,-2231.2302,292.5879,34.8223,359.5409,21,1); // Car3AddStaticVehicle2(0,559,-1989.9603,245.8717,34.8292,126.6789,2,1); // Car4AddStaticVehicle2(0,558,-1990.5403,250.9810,34.8029,122.1951,30,1); // Car5AddStaticVehicle2(0,402,-1990.4186,255.9124,35.0036,120.6706,98,98); // Car6AddStaticVehicle2(0,581,-1947.7207,274.9619,35.0646,116.7659,87,1); // Car7AddStaticVehicle2(0,578,-1947.3562,266.2247,36.0966,132.6567,1,1); // Car8AddStaticVehicle2(0,541,-1922.4410,283.8629,40.6718,180.5041,68,8); // Car9AddStaticVehicle2(0,533,-2029.3663,157.8478,28.5450,180.2930,77,1); // Car10AddStaticVehicle2(0,544,-2054.9524,83.9640,28.6301,89.6418,3,1); // Car11AddStaticVehicle2(0,506,-2245.5811,550.5568,34.8620,358.7086,3,3); // Car12AddStaticVehicle2(0,459,-2422.4666,521.8275,29.9832,44.7564,51,51); // Car13AddStaticVehicle2(0,428,-2441.0808,524.6499,30.0373,180.2650,4,75); // Car14AddStaticVehicle2(0,415,-2415.7720,332.1354,34.7445,329.6694,92,1); // Car15AddStaticVehicle2(0,411,-2415.5925,970.5750,45.0240,179.5878,106,1); // Car16AddStaticVehicle2(0,602,-2343.7371,1023.5938,50.5008,271.1881,58,1); // Car17AddStaticVehicle2(0,589,-2521.7563,1229.6338,37.0864,211.7949,23,23); // Car18AddStaticVehicle2(0,586,-2620.1150,1352.1317,6.6628,271.9966,119,1); // Car19AddStaticVehicle2(0,431,-2597.2844,1326.6505,7.1396,315.5382,55,83); // Car20AddStaticVehicle2(0,429,-2627.6536,1378.8853,6.8267,268.2324,1,3); // Car21AddStaticVehicle2(0,595,-2905.0647,1227.5808,-0.1028,54.7403,112,20); // Car22AddStaticVehicle2(0,571,-2723.7944,975.9670,53.7465,1.9745,91,2); // Car23AddStaticVehicle2(0,559,-2638.3577,786.3449,49.6377,359.3007,68,8); // Car24AddStaticVehicle2(0,554,-2772.2556,766.0490,52.2670,88.3662,45,32); // Car25AddStaticVehicle2(0,522,-2588.0859,657.9186,14.0197,87.1983,39,106); // Car26AddStaticVehicle2(0,420,-1437.4301,-285.3463,13.8512,58.1474,6,1); // Car27AddStaticVehicle2(0,420,-1412.0313,-306.5768,13.8429,41.7395,6,1); // Car27AddStaticVehicle2(0,420,-1422.9659,-296.0504,13.8498,48.9702,6,1); // Car28AddStaticVehicle2(0,420,-1429.9578,-290.4146,13.8518,54.1493,6,1); // Car29AddStaticVehicle2(0,420,-1417.0731,-301.7200,13.8493,47.3480,6,1); // Car30AddStaticVehicle2(0,411,-1638.5371,-570.3789,13.8755,45.8323,80,1); // Car31AddStaticVehicle2(0,562,-1876.6797,-151.2075,11.5574,359.7178,11,1); // Car32AddStaticVehicle2(0,552,-1840.9132,113.5167,14.8097,271.0418,56,56); // Car33AddStaticVehicle2(0,543,-1677.6547,401.3784,7.0015,314.9850,11,11); // Car34AddStaticVehicle2(0,487,-1678.3958,415.8438,12.6142,225.0161,26,57); // Car35AddStaticVehicle2(0,522,-1681.8721,417.1670,6.7402,135.7626,7,79); // Car36AddStaticVehicle2(0,455,-1793.8912,799.0836,25.3282,0.1571,43,31); // Car37AddStaticVehicle2(0,528,-1592.1881,748.6324,-5.1967,358.2913,0,0); // Car38AddStaticVehicle2(0,597,-1638.2559,653.6831,-5.4740,89.6406,0,1); // Car39AddStaticVehicle2(0,597,-1638.4070,665.9108,-5.4741,90.1924,0,1); // Car40AddStaticVehicle2(0,597,-1638.4508,674.0391,-5.4742,90.5658,0,1); // Car41AddStaticVehicle2(0,597,-1608.3627,692.0750,-5.4744,359.8763,0,1); // Car42AddStaticVehicle2(0,597,-1583.9275,748.3524,-5.4733,359.6375,0,1); // Car43AddStaticVehicle2(0,597,-1596.5762,748.8917,-5.4744,359.4661,0,1); // Car44AddStaticVehicle2(0,427,-1616.6580,733.3532,-5.1103,180.5371,0,1); // Car45AddStaticVehicle2(0,523,-1616.6029,750.5240,-5.6763,181.9781,0,0); // Car45AddStaticVehicle2(0,523,-1612.5267,751.0443,-5.6730,178.3804,0,0); // Car46AddStaticVehicle2(0,523,-1574.0516,722.4843,-5.6719,266.4048,0,0); // Car47AddStaticVehicle2(0,523,-1636.4777,686.3693,-5.6715,87.8156,0,0); // Car48AddStaticVehicle2(0,523,-1637.5924,674.3074,-5.6714,90.2975,0,0); // Car49AddStaticVehicle2(0,597,-1593.7531,652.1309,6.9569,179.9545,0,1); // Car50AddStaticVehicle2(0,597,-1587.6298,652.3399,6.9547,181.0140,0,1); // Car51AddStaticVehicle2(0,597,-1581.5995,652.6622,6.9573,182.4822,0,1); // Car52AddStaticVehicle2(0,597,-1611.8439,673.4778,6.9567,359.5284,0,1); // Car53AddStaticVehicle2(0,497,-1679.1256,706.1049,30.7777,89.3071,0,1); // Car54AddStaticVehicle2(0,601,-1576.3329,682.8640,6.9463,180.5196,1,1); // Car55AddStaticVehicle2(0,597,-1594.2272,673.2219,6.9571,0.0300,0,1); // Car56AddStaticVehicle2(0,496,-1947.3781,584.5227,34.8535,0.2943,74,72); // Car57AddStaticVehicle2(0,587,-2044.7103,771.4896,60.3517,90.7277,95,1); // Car58AddStaticVehicle2(0,560,-2111.3552,910.4462,77.4575,67.6144,37,0); // Car59AddStaticVehicle2(0,541,-2285.3391,815.7601,49.1173,89.4732,51,1); // Car60AddStaticVehicle2(0,533,-2442.8376,740.2258,34.7247,359.5630,84,1); // Car61AddStaticVehicle2(0,518,-2544.3748,593.0107,14.1241,269.7502,56,29); // Car61AddStaticVehicle2(0,416,-2653.1941,629.0087,14.6022,90.7148,1,3); // Car62AddStaticVehicle2(0,409,-2560.5251,197.9444,6.4014,206.4671,1,1); // Car63AddStaticVehicle2(0,562,-2663.1609,204.5441,3.9951,0.5533,35,1); // Car64AddStaticVehicle2(0,561,-2675.7925,205.1529,4.1494,359.4789,57,8); // Car65AddStaticVehicle2(0,560,-2692.0769,204.9085,4.0412,359.4792,17,1); // Car66AddStaticVehicle2(0,559,-2649.0930,204.7240,3.9922,359.6417,58,8); // Car67AddStaticVehicle2(0,558,-2667.0317,204.5945,3.9657,358.3406,112,1); // Car68AddStaticVehicle2(0,557,-2746.8923,118.5041,7.7128,180.2202,1,1); // Car69Ship = CreateObject(8493, -1372.4438,-48.2332,90.5917, 0.0, 0.0, 138.3808);CreateObject(14548, -1373.74,-99.2669,15.5078, 14.0, 0.0, 170.0);CreateObject(13666, -1462.92, -131.372, 18.0, 0.0, 0.0, 0.0);CreateObject(13666, -1466.43, -125.686, 18.0, 0.0, 0.0, 0.0);BT=TextDrawCreate(200.0, 200.0, "Trwa Wyszukiwanie.. Prosze czekac.");for(new v=0;v<vehicles;v++){SetVehicleNumberPlate(v, ">By Luby<");SetVehicleToRespawn(v);//if(IsCar2(v))AddVehicleComponent(v, 1087);AddVehicleComponent(v, 1010);//if(GetVehicleModel(v)>=569 && GetVehicleModel(v) <= 598)AddVehicleComponent(v, 1073);}if(dini_Exists(FILE_SETTINGS)){new grav = strval(dini_Get(FILE_SETTINGS, "gravity"));new Float:grav2 = float(grav);SetGravity(floatdiv(grav2,1000));grav = strval(dini_Get(FILE_SETTINGS, "one-hit-ko"));if(grav)ONEHITKO = true;} else SetGravity(0.0060);return 1;}stock ShipRotationUpdate(){}public KeysTimer(){ for(new i=0;i<MAX_PLAYERS;i++) { if(IsPlayerConnected(i)) { new tmpkeys[3]; GetPlayerKeys(i,tmpkeys[0],tmpkeys[1],tmpkeys[2]); if(tmpkeys[0] != oldkeys2[i]) { GetPlayerKeys(i,oldkeys2[i],tmpkeys[1],tmpkeys[2]); OnPlayerPressKey(i,oldkeys2[i]); } } }}public ShipKeys(){ for(new i=0;i<MAX_PLAYERS;i++) { if(IsPlayerConnected(i) && ShipDriver == i) { new tmpkeys[2];// GetPlayerKeys(i,tmpkeys[0],tmpkeys[1],tmpkeys[2]);// if(tmpkeys[0] != oldkeys[i])// { GetPlayerKeys(i,oldkeys2[i],tmpkeys[0],tmpkeys[1]); OnPlayerPressShipKey(i,oldkeys2[i]);// } } }}public OnPlayerPressShipKey(playerid,key){ var Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ; if(key & 8192){ GetObjectRot(Ship, rX, rY, rZ); SetObjectRot(Ship, rX, rY, rZ+2.0); GetObjectRot(Ship, rX, rY, rZ); GetObjectPos(Ship, X, Y, Z); SetPlayerFacingAngle(ShipDriver,rZ); GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); MoveObject(Ship, X, Y, Z, ShipSpeed); } if(key & 16384){ GetObjectRot(Ship, rX, rY, rZ); SetObjectRot(Ship, rX, rY, rZ-2.0); GetObjectRot(Ship, rX, rY, rZ); SetPlayerFacingAngle(ShipDriver,rZ); GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); MoveObject(Ship, X, Y, Z, ShipSpeed); } if(key & 8){ GetObjectPos(Ship, X, Y, Z); SetObjectPos(Ship, X, Y, Z-1); GetObjectPos(Ship, X, Y, Z); GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); MoveObject(Ship, X, Y, Z, ShipSpeed); } if(key & 32){ GetObjectPos(Ship, X, Y, Z); SetObjectPos(Ship, X, Y, Z+1); GetObjectPos(Ship, X, Y, Z); GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); MoveObject(Ship, X, Y, Z, ShipSpeed); } if(key & 4){ GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); ShipSpeed-=0.5; MoveObject(Ship, X, Y, Z, ShipSpeed); } if(key & 512){ GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); ShipSpeed+=0.5; MoveObject(Ship, X, Y, Z, ShipSpeed); }}public OnPlayerPressKey(playerid,key){// new s[256];format(s, 256, "OnPlayerPressKey(PID:%d, KID:%d)", playerid, key);// SendClientMessage(playerid, 0xAAFFAAFF, s); new Float:x, Float:y, Float:z; if(key==512||key==520||key==544){ if(IsPlayerInAnyVehicle(playerid)){ if(bomb[GetPlayerVehicleID(playerid)] && !bombarm[GetPlayerVehicleID(playerid)][playerid]){ new Float:px, Float:py, Float:pz; GetPlayerPos(playerid, px, py, pz); PlayerPlaySound(playerid, 1057, px - 10 + random(10 * 2), py - 10 + random(10 * 2), pz); TextDrawShowForPlayer(playerid, bombtext); bombtextexit[playerid]=1; SetTimerEx("HideText", 1000, 0, "d", playerid); bombarm[GetPlayerVehicleID(playerid)][playerid] = true; } } else { for(new h=0;h<700;h++){ if(bomb[h]){ if(bombarm[h][playerid]){ GetVehiclePos(h, x, y, z); CreateExplosion(x, y, z, 1, 10); SetVehicleHealth(h, 0.0); bomb[h]=0; bombarm[h][playerid]=0; } } } } } else if(key==16){ new close = GetClosestCar(playerid); if(!IsPlayerInAnyVehicle(playerid)){ new temp; for(new i=0;i<100;i++){ if(IsPlayerConnected(i) && GetPlayerState(i)==PLAYER_STATE_DRIVER && GetPlayerVehicleID(playerid)==close){ temp++; } } if( temp > 0){}else PutPlayerInVehicle(playerid, close, 0); }}}IsVehicleInUseDF(vehicleid){new temp;for(new i=0;i<100;i++){if(IsPlayerConnected(i) && IsPlayerInVehicle(i, vehicleid)){temp++;}}if(temp > 0){ return true; } else return false;}#pragma unused IsVehicleInUseDFSetPlayerPos2(P, Float:X, Float:Y, Float:Z, Float:A){SetPlayerPos(P, X, Y, Z);SetPlayerFacingAngle(P,A);}IsVehicleInUseDF2(vehicleid){new temp;for(new i=0;i<100;i++){if(IsPlayerConnected(i) && GetPlayerState(i)==PLAYER_STATE_DRIVER && GetPlayerVehicleID(i)==vehicleid){temp++;}}if(temp > 0){ return true; } else return false;}public OnGameModeExit(){ return 1;}public OnPlayerRequestClass(playerid, classid){new dancemove = random(2);switch(dancemove) {case 0: SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE1);case 1: SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE2);case 2: SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE3);}printf("OnPlayerRequestClass(%d, %d) %d", playerid, classid, GetPlayerSkin(playerid));SetPlayerPos2(playerid,-1741.9491,-580.5571,34.7308, 90.6643);SetPlayerCameraPos(playerid,-1745.8644,-580.6480,34.6856);SetPlayerCameraLookAt(playerid,-1741.9491,-580.5571,34.7308);return 1;}public OnPlayerRequestSpawn(playerid){ AllowPlayerTeleport(playerid, 1); return 1;}public ShipIconUpdate(){new Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ;GetObjectPos(Ship, X, Y, Z);for(new playerid=0;playerid<200;playerid++){RemovePlayerMapIcon(playerid, ShipIcon);ShipIcon = SetPlayerMapIcon(playerid, 1,X,Y,Z, 5, 0xAAFFAAFF);if(PlayerDocked[playerid]){SetPlayerHealth(playerid, 100.0);SetPlayerPos(playerid, X+PlayerDockData[playerid][0], Y+PlayerDockData[playerid][1], Z+PlayerDockData[playerid][2]);}}if(ShipDriver!=-1){SetPlayerHealth(ShipDriver, 100.0);GetObjectRot(Ship, rX, rY, rZ);//GetXYZInFrontOfPos(X, Y, Z, rZ+85, 5.0);SetPlayerPos(ShipDriver,X,Y,Z-10);//GetXYZInFrontOfPos(X, Y, Z, rZ+85, -45.0);SetPlayerFacingAngle(ShipDriver,rZ);GetXYInFrontOfPlayer(ShipDriver, X, Y, -65.0);SetPlayerCameraPos(ShipDriver,X, Y, Z+50);GetObjectPos(Ship, X, Y, Z);SetPlayerCameraLookAt(ShipDriver, X, Y, Z);GetXYInFrontOfPlayer(ShipDriver, X, Y, -65.0);}return 1;}PlayerName(playerid){new n[256];GetPlayerName(playerid, n, 256);return n;}public OnPlayerConnect(playerid){new s[256];format(s, 256, "%s[V%d]", PlayerName(playerid), GetPlayerVirtualWorld(playerid));SetPlayerName(playerid, s);TogglePlayerClock(playerid, 1);SetPlayerTime(playerid, 0, 0);//SetTeamCount(1);AllowInteriorWeapons(1);EnableTirePopping(1);ShipIcon=SetPlayerMapIcon(playerid, 1,-1372.4438,-48.2332,90.5917, 5, 0xAAFFAAFF);//SetPlayerTeam(playerid, 0);AllowPlayerTeleport(playerid, 1);new str[256];SetTimerEx("Connectcontinue", 300, 0, "d", playerid);for(new x=0;x<200;x++)if(IsPlayerConnected(x)&&x!=playerid){format(str, 256, "*** %s dołączył do servera (ID:%d, IP:%s).***", PlayerName(playerid), playerid, ReturnIP(playerid));SendClientMessage(x, COLOR_SYSGREY, str);}/*DriftText[1] = TextDrawCreate(440.0, 150.0, "~n~~n~~n~~n~~n~~n~~n~~n~~n~");TextDrawUseBox(DriftText[1], true);TextDrawBoxColor(DriftText[1], 0x333300AA);TextDrawShowForPlayer(playerid, DriftText[1]);*//*DriftText[2] = TextDrawCreate(430.0, 180.0, "~n~~n~~n~");TextDrawUseBox(DriftText[2], true);TextDrawBoxColor(DriftText[2], 0x00000055);TextDrawShowForAll(DriftText[2]);DriftText[3] = TextDrawCreate(430.0, 210.0, "~n~~n~~n~");TextDrawUseBox(DriftText[3], true);TextDrawBoxColor(DriftText[3], 0x00000055);TextDrawShowForAll(DriftText[3]);*/return 1;}public Connectcontinue(playerid){new str[256];for(new z=0;z<200;z++){if(IsPlayerConnected(z) && z!=playerid){format(str, 256, "*** %s dołączył do servera (ID:%d, IP:%s, Ping:%d).***", PlayerName(z), z, ReturnIP(z), GetPlayerPing(playerid));SendClientMessage(playerid, COLOR_SYSGREY, str);}}}ReturnIP(playerid){new ip[17];GetPlayerIp(playerid, ip, 17);return ip;}public OnPlayerDisconnect(playerid, reason){new str[256];if(reason == 0)format(str, 256, "*** %s wyszedł z Servera ( Timeout ).***", PlayerName(playerid)); // Timeoutif(reason == 1)format(str, 256, "*** %s wyszedł z Servera ( Wyszedł ).***", PlayerName(playerid)); // Leaveif(reason == 2)format(str, 256, "*** %s wyszedł z Servera ( Kick ).***", PlayerName(playerid)); // Kickif(reason == 3)format(str, 256, "*** %s wyszedł z Servera ( Ban ).***", PlayerName(playerid)); // BanSendClientMessageToAll(COLOR_SYSGREY, str);TextDrawDestroy(gVText[playerid]);gUseVText[playerid] = false;gVTextNum[playerid] = 0;return 1;}public OnPlayerSpawn(playerid){if(ONEHITKO)SetPlayerHealth(playerid, 1.0);EnableTirePopping(1);new randspawn = random(SPAWNY);SetPlayerPos2(playerid, Spawny[randspawn][0],Spawny[randspawn][1],Spawny[randspawn][2],Spawny[randspawn][3]);SetPlayerCheckpoint(playerid, 1892.7771,1593.5656,10.6240, 3);return 1;}Float:GetPlayerArmourEx(p){new Float:a;GetPlayerArmour(p, a);return a;}public OnPlayerDeath(playerid, killerid, reason){new Float:X, Float:Y, Float:Z,weap[200],ammo,temp,s[256],PX,PY;SetPlayerScore(killerid, GetPlayerScore(killerid)+1);if(reason == 8)SendDeathMessage(killerid,playerid,40);else SendDeathMessage(killerid,playerid,reason);GetPlayerPos(playerid, X, Y, Z);for(new i=0;i<16;i++){ format(s, 256 ,"%.0f", X); temp = strval(s); PX = random((temp+2)-(temp-2))+(temp-2); format(s, 256 ,"%.0f", Y); temp = strval(s); PY = random((temp+2)-(temp-2))+(temp-2); if(i<12){ GetPlayerWeaponData(playerid, i, weap[i], ammo); if(weapmod[weap[i]] == 1212){ } else { DropPick[CreatePickup(weapmod[weap[i]], 3,PX, PY, Z)]=true; } } if(i==13)DropPick[CreatePickup(1240, 3,PX, PY, Z)]=true; if(i==14)if(GetPlayerArmourEx(playerid)>0.0)DropPick[CreatePickup(1242, 3,PX, PY, Z)]=true; else { } if(i==15){ new pickid = CreatePickup(1212, 3,PX, PY, Z); PickUpMoney[pickid]=true; DropPick[pickid]=true; } }return 1;}public OnVehicleSpawn(vehicleid){ return 1;}public Random2(min, max){return random(max-min)+min;}CreatePickup2(md, tp, Float:X, Float:Y, Float:Z){if(md == 1212){//PickUpMoney[CreatePickup(1212, tp, X, Y, Z)]=true;} else {CreatePickup(md, tp, X, Y, Z);}}public OnVehicleDeath(vehicleid, killerid){if(VehicleCreated[vehicleid]){DestroyVehicle(vehicleid);}return 1;}public OnPlayerText(playerid, text[]){for(new g=0;g<200;g++)if(IsPlayerConnected(g))SendPlayerMessageToPlayer(g, playerid, text);return 0;}public OnPlayerPrivmsg(playerid, recieverid, text[]){ return 1;}/* * Kody komend - DCMD oczywiscie. * By Luby © 2007 */dcmd_boom(playerid, params[]){#pragma unused paramsSetVehicleHealth(GetPlayerVehicleID(playerid), 0);return true;}dcmd_dock(playerid, params[]){#pragma unused paramsvar Float:oX, Float:oY, Float:oZ;var Float:pX, Float:pY, Float:pZ;var Float:dX, Float:dY, Float:dZ;GetObjectPos(Ship, oX, oY, oZ);if(IsPlayerInCube(playerid, oX-25.0, oY-25.0, oZ-15.0, oX+25.0, oY+25.0, oZ+15.0)){GetPlayerPos(playerid, pX, pY, pZ);/*if(oX<pX)*/dX=floatsub(pX, oX); //else dX=floatsub(oX, pX);/*if(oY<pY)*/dY=floatsub(pY, oY); //else dY=floatsub(oY, pY);/*if(oZ<pZ)*/dZ=floatsub(pZ, oZ); //else dZ=floatsub(oZ, pZ);PlayerDocked[playerid]=true;PlayerDockData[playerid][0]=dX;PlayerDockData[playerid][1]=dY;PlayerDockData[playerid][2]=dZ;}return true;}dcmd_undock(playerid, params[]){#pragma unused paramsPlayerDocked[playerid]=false;return true;}dcmd_specmy(playerid, params[]){#pragma unused paramsPlayerSpectateVehicle(playerid,GetPlayerVehicleID(playerid));return true;}dcmd_attach(playerid, params[]){#pragma unused paramsnew rd=random(vehicles);if(!IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid))){AttachTrailerToVehicle(rd, GetPlayerVehicleID(playerid));} else {for(new v=0;v<vehicles;v++){if(!IsTrailerAttachedToVehicle(v)){AttachTrailerToVehicle(vehicles+1, v);}}}return true;}dcmd_box(playerid, params[]){#pragma unused paramsnew Float:data[3];GetPlayerPos( playerid, data[0], data[1], data[2]);GetXYInFrontOfPlayer(playerid,data[0],data[1], 2.0);DestroyObject(playerbox[playerid]);playerbox[playerid] = CreateObject(1454, data[0], data[1], data[2], 0.0, 0.0, 0.0);return true;}dcmd_up(playerid, params[]){#pragma unused paramsnew Float:data[3];GetObjectPos(playerbox[playerid], data[0], data[1], data[2]);MoveObject(playerbox[playerid], data[0], data[1], data[2]+30.0, 2.0);return true;}dcmd_stop(playerid, params[]){#pragma unused paramsStopObject(playerbox[playerid]);return true;}dcmd_new(playerid, params[]){#pragma unused paramsnew Float:data[3];GetPlayerPos( playerid, data[0], data[1], data[2]);new vid = CreateVehicle(522, data[0], data[1], data[2], 0.0, -1, -1, 90);for(new d=0;d<200;d++)if(IsPlayerConnected(d)&&d!=playerid)SetVehicleParamsForPlayer(vid,playerid,0,1);VehicleCreated[vid]=true;TextDrawShowForPlayer(playerid, text2);nrgexit[playerid]=1;HideTextDef[text2]=true;SetTimerEx("HideText", 1000, 0, "d", playerid);return true;}dcmd_kup(playerid, params[]){#pragma unused paramsTogglePlayerControllable(playerid, 0);ShowMenuForPlayer(CarBuy, playerid);return true;}dcmd_lv(playerid, params[]){#pragma unused paramsif(IsPlayerInAnyVehicle(playerid)) {SetVehiclePos(GetPlayerVehicleID(playerid),1704.0,1365.0,10.0);} else {SetPlayerFacingAngle(playerid,360.0);SetPlayerPos(playerid,1704.0,1365.0,10.0);}GameTextForPlayer(playerid,"~w~Witamy w ~b~Las Venturas~w~.",2000,5);return true;}dcmd_sf(playerid, params[]){#pragma unused paramsif(IsPlayerInAnyVehicle(playerid)) {SetVehiclePos(GetPlayerVehicleID(playerid),-1397.0,-317.0,14.0);} else {SetPlayerFacingAngle(playerid,360.0);SetPlayerPos(playerid,-1397.0,-317.0,14.0);}GameTextForPlayer(playerid,"~w~Witamy w ~b~San Fierro~w~.",2000,5);return true;}dcmd_ls(playerid, params[]){#pragma unused paramsif(IsPlayerInAnyVehicle(playerid)) {SetVehiclePos(GetPlayerVehicleID(playerid),1642.0,-2332.0,13.0);} else {SetPlayerFacingAngle(playerid,360.0);SetPlayerPos(playerid,1642.0,-2332.0,13.0);}GameTextForPlayer(playerid,"~w~Witamy w ~b~Los Santos~w~.",2000,5);return true;}dcmd_bluetooth(playerid, params[]){#pragma unused paramsTextDrawShowForPlayer(playerid, BT);SetTimerEx("BlueTooth", 2000, 0, "d",playerid);return true;}dcmd_ship(playerid, params[]){#pragma unused paramsnew Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ;GetObjectRot(Ship, rX, rY, rZ);GetObjectPos(Ship, X, Y, Z);GetXYZInFrontOfPos(X, Y, Z, rZ+90, 5.0);GameTextForPlayer(playerid,"~w~Witamy na ~b~...~r~Statku Piratow! ~y~Oh Noes!~w~.",4000,5);//MoveObject(Ship, -2029.4065,-925.3747, Z, 5.0);if(IsPlayerInAnyVehicle(playerid)) {SetVehiclePos(GetPlayerVehicleID(playerid),X,Y,Z-10);} else {SetPlayerPos(playerid,X,Y,Z-10);}return true;}dcmd_shipster(playerid, params[]){#pragma unused params var Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ; GetObjectRot(Ship, rX, rY, rZ); GetObjectPos(Ship, X, Y, Z); if(playerid == ShipDriver){ SendClientMessage(playerid, 0xAAFFFAAFF, "Zakończyłeś kierowanie Statkiem Piratów."); ShipDriver = -1; SetCameraBehindPlayer(playerid); StopObject(Ship); ShipSpeed=0.0; } else { if(IsPlayerInCube(playerid, X-25.0, Y-25.0, Z-15.0, X+25.0, Y+25.0, Z+15.0)){ if(ShipDriver==-1){ ShipDriver = playerid; SendClientMessage(playerid, 0xAAFFFAAFF, "Witamy w Centrum Dowodzenia Latającym Statkiem Piratów!"); SendClientMessage(playerid, 0xAAFFFAAFF, "Użyj strzałek w Lewo <- i w ->Prawo znajdujących sie na NumPadzie aby kierować Statkiem"); GetXYZInFrontOfPos(X, Y, Z, rZ+85, 5000.0); MoveObject(Ship, X, Y, Z, ShipSpeed); } else SendClientMessage(playerid, 0xAAFFFAAFF, "Ktoś już kieruje Statkiem Piratów"); } else SendClientMessage(playerid, 0xAAFFFAAFF, "Musisz znajdować się na statku!"); } return true;}dcmd_heal(playerid, params[]){#pragma unused paramsif(IsPlayerInAnyVehicle(playerid)) {//ChangeVehicleColor(GetPlayerVehicleID(playerid), -1, -1);SetVehicleNumberPlate(GetPlayerVehicleID(playerid), ">By Luby<");SetVehicleHealth(GetPlayerVehicleID(playerid), 1000.0);//ChangeVehiclePaintjob(GetPlayerVehicleID(playerid), 0);ChangeVehicleColor(GetPlayerVehicleID(playerid), random(126), random(126));LinkVehicleToInterior(GetPlayerVehicleID(playerid), 0);SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), GetVehicleVirtualWorld(GetPlayerVehicleID(playerid)));SetPlayerHealth(playerid, 100.0);SetPlayerArmour(playerid, 100.0);new Float:x, Float:y, Float:z;GetPlayerPos(playerid, x, y, z);GetXYInFrontOfPlayer(playerid, x, y, 8.0);} else {SetPlayerHealth(playerid, 100.0);SetPlayerArmour(playerid, 100.0);}return true;}dcmd_v(playerid, params[]){#pragma unused paramsnew idx2, iString[256];new idx;iString = strtok(params, idx);if (!strlen(iString)) {SendClientMessage(playerid, 0xFF0000FF, "[UŻYJ]: /v ID Modelu / Nazwa Modelu");return true;}idx2 = GetVehicleModelIDFromName(iString);if(idx2 == -1) {idx2 = strval(iString);if (idx2 < MIN_VEHI_ID || idx2 > MAX_VEHI_ID) {SendClientMessage(playerid, 0xFF0000FF, "Niepoprawna nazwa pojazdu lub ID modelu");return true;}}new Float:x, Float:y, Float:z, Float:a;GetPlayerPos(playerid, x, y, z);GetXYInFrontOfPlayer(playerid, x, y, 8.0);GetPlayerFacingAngle(playerid, a);CreateVehicle(idx2, x, y, z + 1.0, a + 90.0, -1, -1, 5000);format(iString, 128, "Pojawiono %s'a poprawnie.", vehicleNames[idx2 - MIN_VEHI_ID], idx2);SendClientMessage(playerid, 0x00FF00FF, iString);return true;}dcmd_setramp(playerid, params[]){#pragma unused paramsnew ramp = strval(params[0]);if (ramp < 0 || ramp >= sizeof(ramptypes)) {SendClientMessage(playerid, 0xFFFFFFAA, "Zły id.");} else {playerramptypes[playerid] = ramp;}return true;}dcmd_jump(playerid, params[]){#pragma unused params new Float:x2, Float:y2, Float:z2; if(IsPlayerInAnyVehicle(playerid)){ GetVehiclePos(GetPlayerVehicleID(playerid), x2, y2, z2); } else { GetPlayerPos(playerid, x2, y2, z2); } new obj = CreateObject(1454, x2, y2, z2, 0.0, 0.0, 0.0); MoveObject(obj, x2, y2, z2+10.0, 10.0); return true;}public OnPlayerCommandText(playerid, cmdtext[]){ printf("Gracz %s wpisal komende : %s", PlayerName(playerid), cmdtext); dcmd(boom, 4,cmdtext); dcmd(dock, 4,cmdtext); dcmd(undock, 6,cmdtext); dcmd(attach, 6,cmdtext); dcmd(box, 3,cmdtext); dcmd(up, 2,cmdtext); dcmd(stop, 4,cmdtext); dcmd(new, 3,cmdtext); dcmd(kup, 3,cmdtext); dcmd(sf, 2,cmdtext); dcmd(lv, 2,cmdtext); dcmd(ls, 2,cmdtext); dcmd(bluetooth,9,cmdtext); dcmd(ship, 4,cmdtext); dcmd(shipster, 8,cmdtext); dcmd(heal, 4,cmdtext); dcmd(v, 1,cmdtext); dcmd(setramp, 7,cmdtext); dcmd(jump, 4,cmdtext); dcmd(specmy, 6,cmdtext); return 0;}/*public CPupdate(){for(new playerid=0;playerid<200;playerid++){}}*/IsKeyJustDown(key, newkeys, oldkeys){ if((newkeys & key) && !(oldkeys & key)) return 1; return 0;}#pragma unused IsKeyJustDown//------------------------------------------------public OnPlayerKeyStateChange(playerid, newkeys, oldkeys){ new Float:x, Float:y, Float:z, Float:angle; if(newkeys & 512||newkeys & 520||newkeys & 544){ if(IsPlayerInAnyVehicle(playerid)){ if(bomb[GetPlayerVehicleID(playerid)] && !bombarm[GetPlayerVehicleID(playerid)][playerid]){ new Float:px, Float:py, Float:pz; GetPlayerPos(playerid, px, py, pz); PlayerPlaySound(playerid, 1057, px - 10 + random(10 * 2), py - 10 + random(10 * 2), pz); TextDrawShowForPlayer(playerid, bombtext); bombtextexit[playerid]=1; SetTimerEx("HideText", 1000, 0, "d", playerid); bombarm[GetPlayerVehicleID(playerid)][playerid] = true; } } else { for(new h=0;h<700;h++){ if(bomb[h]){ if(bombarm[h][playerid]){ GetVehiclePos(h, x, y, z); CreateExplosion(x, y, z, 1, 10); SetVehicleHealth(h, 0.0); bomb[h]=0; bombarm[h][playerid]=0; } } } } } else if(newkeys & 16){ new close = GetClosestCar(playerid); if(!IsPlayerInAnyVehicle(playerid)){ new temp; for(new i=0;i<100;i++){ if(IsPlayerConnected(i) && GetPlayerState(i)==PLAYER_STATE_DRIVER && GetPlayerVehicleID(playerid)==close){ temp++; } } if( temp > 0){}else PutPlayerInVehicle(playerid, close, 0); }} if(ShipDriver == playerid){ var Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ; if(newkeys & 8192){ GetObjectRot(Ship, rX, rY, rZ); SetObjectRot(Ship, rX, rY, rZ+2.0); GetObjectRot(Ship, rX, rY, rZ); GetObjectPos(Ship, X, Y, Z); SetPlayerFacingAngle(ShipDriver,rZ); GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); MoveObject(Ship, X, Y, Z, ShipSpeed); } if(newkeys & 16384){ GetObjectRot(Ship, rX, rY, rZ); SetObjectRot(Ship, rX, rY, rZ-2.0); GetObjectRot(Ship, rX, rY, rZ); SetPlayerFacingAngle(ShipDriver,rZ); GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); MoveObject(Ship, X, Y, Z, ShipSpeed); } if(newkeys & 8){ GetObjectPos(Ship, X, Y, Z); SetObjectPos(Ship, X, Y, Z-1); GetObjectPos(Ship, X, Y, Z); GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); MoveObject(Ship, X, Y, Z, ShipSpeed); } if(newkeys & 32){ GetObjectPos(Ship, X, Y, Z); SetObjectPos(Ship, X, Y, Z+1); GetObjectPos(Ship, X, Y, Z); GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); MoveObject(Ship, X, Y, Z, ShipSpeed); } if(newkeys & 4){ GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); ShipSpeed-=0.5; MoveObject(Ship, X, Y, Z, ShipSpeed); } if(newkeys & 512){ GetXYInFrontOfPlayer(ShipDriver, X, Y, 5000.0); ShipSpeed+=0.5; MoveObject(Ship, X, Y, Z, ShipSpeed); }} if (newkeys & 2) { SetVehicleHealth(GetPlayerVehicleID(playerid), 1000.0); new Float:X, Float:Y, Float:Z; GetVehiclePos(GetPlayerVehicleID(playerid), X, Y, Z); CreateExplosion(X, Y, Z-1.5000, 3, 40); SetVehicleHealth(GetPlayerVehicleID(playerid), 1000.0); } else { if (newkeys & KEY_ACTION && IsPlayerInAnyVehicle(playerid)) { if (!keydown[playerid]) { keydown[playerid] = true; GetPlayerPos(playerid, x, y, z); angle = GetXYInFrontOfPlayerEx(playerid, x, y, GetOptimumRampDistance(playerid)); switch (playerramptypes[playerid]) { case 2: { angle -= 90.0; if (angle < 0.0) angle += 360.0; z += 0.5; } case 1: { z -= 0.5; } } new ramp; ramp = CreateObject(ramptypes[playerramptypes[playerid]], x, y, z - 0.5, 10.0, 0.0, angle); SetTimerEx("RemoveRamp", 1500, 0, "d", ramp); } } } return;}GetVehicleModelIDFromName(vname[]){ for(new i = 0; i < 211; i++) { if (strfind(vehicleNames[i], vname, true) != -1) { return i + MIN_VEHI_ID; } } return -1;}#pragma unused GetVehicleModelIDFromNamepublic OnPlayerInfoChange(playerid){ return 1;}public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger){return 1;}public HideVehText(playerid){if(gUseVText[playerid])TextDrawHideForPlayer(playerid, gVText[playerid]);TextDrawDestroy(gVText[playerid]);}public OnPlayerExitVehicle(playerid, vehicleid){pexit[playerid]=1;SetTimerEx("pexitclear", 4500, 0, "d", playerid);return 1;}public pexitclear(playerid){pexit[playerid]=0;}public Put(){for(new k=0;k<200;k++){if(IsPlayerConnected(k)){if(PlayerPut[k] >=0) PutPlayerInVehicle(k,PlayerPut[k], 0);}}}public OnPlayerStateChange(playerid, newstate, oldstate){if(pexit[playerid]==0){if(oldstate == PLAYER_STATE_DRIVER && newstate == PLAYER_STATE_ONFOOT){exits[playerid]++;if(exits[playerid] < 10){new close = GetClosestCar(playerid);if(!IsPlayerInAnyVehicle(playerid))if(!IsVehicleInUseDF2(close))PutPlayerInVehicle(playerid, close, 0);SetCameraBehindPlayer(playerid);}else if(oldstate == PLAYER_STATE_DRIVER && newstate == PLAYER_STATE_EXIT_VEHICLE){new close = GetClosestCar(playerid);if(!IsPlayerInAnyVehicle(playerid))if(!IsVehicleInUseDF2(close))PutPlayerInVehicle(playerid, close, 0);SetCameraBehindPlayer(playerid);}}}if(newstate==PLAYER_STATE_DRIVER){ TextDrawDestroy(gVText[playerid]); gVText[playerid] = TextDrawCreate(450 - strlen(vehicleNames[GetVehicleModel(GetPlayerVehicleID(playerid)) - 400]) * 30,320.0,vehicleNames[GetVehicleModel(GetPlayerVehicleID(playerid)) - 400]); TextDrawFont(gVText[playerid], 2); TextDrawLetterSize(gVText[playerid], gX, gY); TextDrawColor(gVText[playerid], 0xAAFFFF77); TextDrawSetOutline(gVText[playerid], 1); TextDrawSetShadow(gVText[playerid], 0); TextDrawSetProportional(gVText[playerid], true); TextDrawShowForPlayer(playerid,gVText[playerid]); gUseVText[playerid] = true; SetTimerEx("HideVehText", 2500, 0, "d", playerid); } else if(newstate==PLAYER_STATE_PASSENGER){ TextDrawDestroy(gVText[playerid]); gVText[playerid] = TextDrawCreate(450 - strlen(vehicleNames[GetVehicleModel(GetPlayerVehicleID(playerid)) - 400]) * 30,320.0,vehicleNames[GetVehicleModel(GetPlayerVehicleID(playerid)) - 400]); TextDrawFont(gVText[playerid], 2); TextDrawLetterSize(gVText[playerid], gX, gY); TextDrawColor(gVText[playerid], 0xFFFFAA77); TextDrawSetOutline(gVText[playerid], 1); TextDrawSetShadow(gVText[playerid], 0); TextDrawSetProportional(gVText[playerid], true); TextDrawShowForPlayer(playerid,gVText[playerid]); gUseVText[playerid] = true; SetTimerEx("HideVehText", 2500, 0, "d", playerid); }SetTimerEx("exitsclear", 4500, 0, "d", playerid);return 1;}public exitsclear(playerid)exits[playerid]=0;public OnPlayerEnterCheckpoint(playerid){if(IsPlayerInAnyVehicle(playerid) && !bomb[GetPlayerVehicleID(playerid)]){TogglePlayerControllable(playerid, 0);ShowMenuForPlayer(menu1, playerid);}return 1;}public OnPlayerLeaveCheckpoint(playerid){ return 1;}public OnPlayerEnterRaceCheckpoint(playerid){ return 1;}public OnPlayerLeaveRaceCheckpoint(playerid){ return 1;}public OnRconCommand(cmd[]){ return 1;}public OnObjectMoved(objectid){if(objectid!=Ship){if(objmvd[objectid]){objmvd[objectid]=0;}else{new Float:X, Float:Y, Float:Z;GetObjectPos(objectid, X, Y, Z);MoveObject(objectid, X, Y, Z-30.0, 3.0);objmvd[objectid]=1;}}return 1;}public OnPlayerObjectMoved(playerid, objectid){ return 1;}public OnPlayerPickUpPickup(playerid, pickupid){if(PickUpMoney[pickupid])GivePlayerMoney(playerid, random(2000-500)+500); // Will give you random$ when you pickup moneyif(DropPick[pickupid])SetTimerEx("PickDestroy", 500, 0, "d", pickupid); // Destroying pickupsreturn 1;}public NitroUpdate(){ for(new playerid=0;playerid<200;playerid++){ if(IsPlayerConnected(playerid))if(IsPlayerInAnyVehicle(playerid)){ new keys, updown, leftright; if (IsPlayerConnected(playerid)) { GetPlayerKeys(playerid, keys, updown, leftright); if (keys & 2) { SetVehicleHealth(GetPlayerVehicleID(playerid), 1000.0); new Float:X, Float:Y, Float:Z; GetVehiclePos(GetPlayerVehicleID(playerid), X, Y, Z);// GetXYInFrontOfPlayer(playerid, X, Y, -1.0);// CreateExplosion(X, Y, Z+0.5000, 1, 4);// CreateExplosion(X, Y, Z+0.5000, 2, 4);// CreateExplosion(X, Y, Z+0.5000, 3, 40); CreateExplosion(X, Y, Z-1.5000, 3, 40);/* CreateExplosion(X, Y, Z-1.5000, 10, 40); CreateExplosion(X, Y, Z-1.5000, 10, 40); CreateExplosion(X, Y, Z-1.5000, 10, 40); CreateExplosion(X, Y, Z-1.5000, 10, 40); CreateExplosion(X, Y, Z-1.5000, 10, 40); CreateExplosion(X, Y, Z-1.5000, 10, 40); CreateExplosion(X, Y, Z-1.5000, 10, 40); CreateExplosion(X, Y, Z-1.5000, 10, 40); CreateExplosion(X, Y, Z-1.5000, 10, 40); */// CreateExplosion(X, Y, Z+0.5000, 10, 4);// CreateExplosion(X, Y, Z+0.5000, 4, 4);// CreateExplosion(X, Y, Z+0.5000, 5, 4);// CreateExplosion(X, Y, Z+0.5000, 6, 4);// CreateExplosion(X, Y, Z+0.5000, 7, 4);// CreateExplosion(X, Y, Z+0.5000, 8, 4); SetVehicleHealth(GetPlayerVehicleID(playerid), 1000.0); } else {new Float:x, Float:y, Float:z, Float:angle;if (keys & KEY_ACTION && IsPlayerInAnyVehicle(playerid)) {if (!keydown[playerid]) {keydown[playerid] = true;GetPlayerPos(playerid, x, y, z);angle = GetXYInFrontOfPlayerEx(playerid, x, y, GetOptimumRampDistance(playerid));switch (playerramptypes[playerid]) {case 2:{angle -= 90.0;if (angle < 0.0) angle += 360.0;z += 0.5;}case 1:{z -= 0.5;}}new ramp;ramp = CreateObject(ramptypes[playerramptypes[playerid]], x, y, z - 0.5, 10.0, 0.0, angle);SetTimerEx("RemoveRamp", 1500, 0, "d", ramp);}}if(keys & 2){GetPlayerPos(playerid, x, y, z);for(new bom=5;bom>0;bom--){GetXYInFrontOfPlayer(playerid, x, y, 50);CreateExplosion(x, y, z+(bom*3), 10, 4900.0);GetXYInFrontOfPlayer(playerid, x, y, 50-5);CreateExplosion(x, y, z+(bom*3), 10, 4900.0);GetXYInFrontOfPlayer(playerid, x, y, 50-10);CreateExplosion(x, y, z+(bom*3), 10, 4900.0);GetXYInFrontOfPlayer(playerid, x, y, 50-15);CreateExplosion(x, y, z+(bom*3), 10, 4900.0);GetXYInFrontOfPlayer(playerid, x, y, 50-20);CreateExplosion(x, y, z+(bom*3), 10, 4900.0);GetXYInFrontOfPlayer(playerid, x, y, 50-25);CreateExplosion(x, y, z+(bom*3), 10, 4900.0);GetXYInFrontOfPlayer(playerid, x, y, 50-30);CreateExplosion(x, y, z+(bom*3), 10, 4900.0);GetXYInFrontOfPlayer(playerid, x, y, 50-35);CreateExplosion(x, y, z+(bom*3), 10, 4900.0);GetXYInFrontOfPlayer(playerid, x, y, 50-40);CreateExplosion(x, y, z+(bom*3), 10, 4900.0);}PlayerPlaySound(playerid, 20600, x, y, z);}else keydown[playerid] = false; } } } } }public OnPlayerSelectedMenuRow(playerid, row){new s[256];HideMenuForPlayer(menu1, playerid);if(row == 0 && GetPlayerMenu(playerid) == menu1){bomb[GetPlayerVehicleID(playerid)] = true;ShowMenuForPlayer(menu2, playerid);TogglePlayerControllable(playerid, 0);}if(row == 1 && GetPlayerMenu(playerid) == menu1){TogglePlayerControllable(playerid, 1);HideMenuForPlayer(menu1, playerid);}if(GetPlayerMenu(playerid) == CarBuy){new Float:X, Float:Y, Float:Z;GetPlayerPos(playerid, X, Y, Z);GetXYInFrontOfPlayer(playerid, X, Y, 7.0);TogglePlayerControllable(playerid, 1);switch (row){case 0:VehicleCreated[CreateVehicle(559, X, Y, Z, 0.0, -1, -1, 99999999999999999999999999*9999999999999999999999999999*99999999999999999999)]=true;case 1:VehicleCreated[CreateVehicle(562, X, Y, Z, 0.0, -1, -1, 99999999999999999999999999*9999999999999999999999999999*99999999999999999999)]=true;case 2:VehicleCreated[CreateVehicle(475, X, Y, Z, 0.0, -1, -1, 99999999999999999999999999*9999999999999999999999999999*99999999999999999999)]=true;case 3:VehicleCreated[CreateVehicle(451, X, Y, Z, 0.0, -1, -1, 99999999999999999999999999*9999999999999999999999999999*99999999999999999999)]=true;case 4:VehicleCreated[CreateVehicle(541, X, Y, Z, 0.0, -1, -1, 99999999999999999999999999*9999999999999999999999999999*99999999999999999999)]=true;case 5:VehicleCreated[CreateVehicle(565, X, Y, Z, 0.0, -1, -1, 99999999999999999999999999*9999999999999999999999999999*99999999999999999999)]=true;case 6:VehicleCreated[CreateVehicle(411, X, Y, Z, 0.0, -1, -1, 99999999999999999999999999*9999999999999999999999999999*99999999999999999999)]=true;case 7:VehicleCreated[CreateVehicle(506, X, Y, Z, 0.0, -1, -1, 99999999999999999999999999*9999999999999999999999999999*99999999999999999999)]=true;case 8:VehicleCreated[CreateVehicle(477, X, Y, Z, 0.0, -1, -1, 99999999999999999999999999*9999999999999999999999999999*99999999999999999999)]=true;}}if(GetPlayerMenu(playerid)==BTM){/* * BlueTooth Code - By Luby */format(s, 256, "Gracz %s nawiazal z twoim telefonem połączenie BlueTooth", PlayerName(playerid));new Text:ZAL2=TextDrawCreate(0.0, 300.0, s);TextDrawShowForPlayer(playerid, ZAL2);}return 1;}public OnPlayerExitedMenu(playerid){TogglePlayerControllable(playerid, 1);return 1;}public SetTextShowTime(playerid, text, time){TextDrawShowForPlayer(playerid, Text:text);SetTimerEx("HideText", time, 0, "d, d", playerid, text);}public HideText(playerid,text){if(bombtextexit[playerid])TextDrawHideForPlayer(playerid, bombtext);if(nrgexit[playerid])TextDrawHideForPlayer(playerid, text2);}public RemoveRamp(playerid){ DestroyObject(playerid);}Float:GetOptimumRampDistance(playerid){new ping = GetPlayerPing(playerid), Float:dist;dist = floatpower(ping, 0.25);dist = dist*4.0;dist = dist+2.0;return dist;}Float:GetXYInFrontOfPlayer(playerid, &Float:x, &Float:y, Float:distance){new Float:a;GetPlayerPos(playerid, x, y, a);if (IsPlayerInAnyVehicle(playerid)) GetVehicleZAngle(GetPlayerVehicleID(playerid), a);else GetPlayerFacingAngle(playerid, a);x += (distance * floatsin(-a, degrees));y += (distance * floatcos(-a, degrees));return a;}Float:GetXYInFrontOfPlayerEx(playerid, &Float:x, &Float:y, Float:distance){new Float:a;GetPlayerPos(playerid, x, y, a);a = GetPlayerTheoreticAngle(playerid);x += (distance * floatsin(-a, degrees));y += (distance * floatcos(-a, degrees));return a;}Float:GetXYZInFrontOfPos(&Float:x, &Float:y, &Float:Z, Float:rZ, Float:distance) // By Luby - Based on Mike's GetXYInFrontOfPlayer{x += (distance * floatsin(rZ, degrees));y += (distance * floatcos(rZ, degrees));Z = Z;return rZ;}public GetClosestCar(playerid) //By Darkrealm{if (!IsPlayerConnected(playerid)) {return -1;}new Float:prevdist = 100000.000;new prevcar;for (new carid = 0; carid < MAX_VEHICLES; carid++) {new Float:dist = GetDistanceToCar(playerid,carid);if ((dist < prevdist)) {prevdist = dist;prevcar = carid;}}return prevcar;}public GetDistanceToCar(playerid,carid) //By Darkrealm (Edited by Sacky){new Float:dis;new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;if (!IsPlayerConnected(playerid)) {return -1;}GetPlayerPos(playerid,x1,y1,z1);GetVehiclePos(carid,x2,y2,z2);dis = floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));return floatround(dis);}//----------------------------------//new RandomBoat[3] = { 493, //jetmax - boat// 595, //launch - boat 484, //marquis - boat 454 //tropic - boat};new RandomPlanes[8] = { 425, //hunter - heli 487, //maverick, //heli 447, //seaspar - heli 520, //hydra - plane 476, //rustler - plane 519, //shamal - plane 513, //stunt - plane};new RandomBikes[5] = { 463, //freeway - bike 522, //nrg500 - bike 522, //nrg500 - bike 481, //bmx - bmx 471 //quad - quad};new RandomCar[34] = { 443, //packer - car 470, //patriot - car //432, //rhino - car// 408, //trash - car 444, //monster - mtruck 416, //ambulan - car 602, //alpha - car 429, //banshee - car 424, //bfinject, //car 402, //buffalo - car 541, //bullet - car 415, //cheetah - car 480, //comet - car 596, //copcarla, //car 562, //elegy - car 427, //enforcer, //car 528, //fbitruck, //car 565, //flash - car 434, //hotknife, //car 502, //hotrina - car 411, //infernus, //car 559, //jester - car 400, //landstal, //car 603, //phoenix - car// 489, //rancher - car 534, //remingtn, //car 475, //sabre - car 495, //sandking, //car 535, //slamvan - car 560, //sultan - car 506, //supergt - car 574, //sweeper - car 549, //tampa - car 420, //taxi - car 451, //turismo - car 558, //uranus - car 412, //voodoo - car};public SetRandomCar(){new rand = random(sizeof(RandomCar));return RandomCar[rand];}public SetRandomBike(){new rand = random(sizeof(RandomBikes));return RandomBikes[rand];}public SetRandomPlane(){new rand = random(sizeof(RandomPlanes));return RandomPlanes[rand];}public SetRandomBoat(){new rand = random(sizeof(RandomBoat));return RandomBoat[rand];}public AddStaticVehicle2(random, modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:z_angle, color1, color2) //By Luby{if(random == 1){if(IsCar(modelid)){new newmodel = SetRandomCar();//CreateVehicle(newmodel, spawn_x, spawn_y, spawn_z, z_angle, color1, color2, 0);AddStaticVehicle(newmodel, spawn_x, spawn_y, spawn_z, z_angle, color1, color2);new tmp = newmodel - 400;printf("Stworzono pojazd : %s : X:%.0f Y:%.0f Z:%.0f", vehicleNames[tmp], spawn_x, spawn_y, spawn_z);vehicles++;if(models[newmodel-400] != 1){models[newmodel-400] = 1;modelscreated++;}} else if(IsBike(modelid)){new newmodel = SetRandomBike();//CreateVehicle(newmodel, spawn_x, spawn_y, spawn_z, z_angle, color1, color2, 0);AddStaticVehicle(newmodel, spawn_x, spawn_y, spawn_z, z_angle, color1, color2);new tmp = newmodel - 400;printf("Stworzono pojazd : %s : X:%.0f Y:%.0f Z:%.0f", vehicleNames[tmp], spawn_x, spawn_y, spawn_z);vehicles++;if(models[newmodel-400] != 1){models[newmodel-400] = 1;modelscreated++;}} else if(IsBoat(modelid)){new newmodel = SetRandomBoat();//CreateVehicle(newmodel, spawn_x, spawn_y, spawn_z, z_angle, color1, color2, 0);AddStaticVehicle(newmodel, spawn_x, spawn_y, spawn_z, z_angle, color1, color2);new tmp = newmodel - 400;printf("Stworzono pojazd : %s : X:%.0f Y:%.0f Z:%.0f", vehicleNames[tmp], spawn_x, spawn_y, spawn_z);if(models[newmodel-400] != 1){models[newmodel-400] = 1;modelscreated++;}} else {//CreateVehicle(modelid, spawn_x, spawn_y, spawn_z, z_angle, color1, color2, 0);AddStaticVehicle(modelid, spawn_x, spawn_y, spawn_z, z_angle, color1, color2);new tmp = modelid - 400;printf("Stworzono pojazd : %s : X:%.0f Y:%.0f Z:%.0f", vehicleNames[tmp], spawn_x, spawn_y, spawn_z);vehicles++;if(models[modelid-400] != 1){models[modelid-400] = 1;modelscreated++;}}} else{//CreateVehicle(modelid, spawn_x, spawn_y, spawn_z, z_angle, color1, color2, 0);AddStaticVehicle(modelid, spawn_x, spawn_y, spawn_z, z_angle, color1, color2);new tmp = modelid - 400;printf("Stworzono pojazd : %s : X:%.0f Y:%.0f Z:%.0f", vehicleNames[tmp], spawn_x, spawn_y, spawn_z);vehicles++;if(models[modelid-400] != 1){models[modelid-400] = 1;modelscreated++;}}}public IsCar(model) //By Luby{switch(model){case 443:return 0;case 448:return 0;case 461:return 0;case 462:return 0;case 463:return 0;case 468:return 0;case 521:return 0;case 522:return 0;case 523:return 0;case 581:return 0;case 586:return 0;case 481:return 0;case 509:return 0;case 510:return 0;case 430:return 0;case 446:return 0;case 452:return 0;case 453:return 0;case 454:return 0;case 472:return 0;case 473:return 0;case 484:return 0;case 493:return 0;case 595:return 0;case 417:return 0;case 425:return 0;case 447:return 0;case 465:return 0;case 469:return 0;case 487:return 0;case 488:return 0;case 497:return 0;case 501:return 0;case 548:return 0;case 563:return 0;case 406:return 0;case 444:return 0;case 556:return 0;case 557:return 0;case 573:return 0;case 460:return 0;case 464:return 0;case 476:return 0;case 511:return 0;case 512:return 0;case 513:return 0;case 519:return 0;case 520:return 0;case 539:return 0;case 553:return 0;case 577:return 0;case 592:return 0;case 593:return 0;case 471:return 0;}return 1;}public IsCar2(vid) //By Luby{new model = GetVehicleModel(vid);switch(model){case 443:return 0;case 448:return 0;case 461:return 0;case 462:return 0;case 463:return 0;case 468:return 0;case 521:return 0;case 522:return 0;case 523:return 0;case 581:return 0;case 586:return 0;case 481:return 0;case 509:return 0;case 510:return 0;case 430:return 0;case 446:return 0;case 452:return 0;case 453:return 0;case 454:return 0;case 472:return 0;case 473:return 0;case 484:return 0;case 493:return 0;case 595:return 0;case 417:return 0;case 425:return 0;case 447:return 0;case 465:return 0;case 469:return 0;case 487:return 0;case 488:return 0;case 497:return 0;case 501:return 0;case 548:return 0;case 563:return 0;case 406:return 0;case 444:return 0;case 556:return 0;case 557:return 0;case 573:return 0;case 460:return 0;case 464:return 0;case 476:return 0;case 511:return 0;case 512:return 0;case 513:return 0;case 519:return 0;case 520:return 0;case 539:return 0;case 553:return 0;case 577:return 0;case 592:return 0;case 593:return 0;case 471:return 0;}return 1;}public IsPlane(model) //By Luby{switch(model){case 460:return 1;case 464:return 1;case 476:return 1;case 511:return 1;case 512:return 1;case 513:return 1;case 519:return 1;case 520:return 1;case 539:return 1;case 553:return 1;case 577:return 1;case 592:return 1;case 593:return 1;case 417:return 1;case 425:return 1;case 447:return 1;case 465:return 1;case 469:return 1;case 487:return 1;case 488:return 1;case 497:return 1;case 501:return 1;case 548:return 1;case 563:return 1;}return 0;}public IsBike(model) //By Luby{switch(model){case 471:return 1;case 481:return 1;case 509:return 1;case 510:return 1;case 448:return 1;case 461:return 1;case 462:return 1;case 463:return 1;case 468:return 1;case 521:return 1;case 522:return 1;case 523:return 1;case 581:return 1;case 586:return 1;}return 0;}public IsBoat(model) //By Luby{switch(model){case 430:return 1;case 446:return 1;case 452:return 1;case 453:return 1;case 454:return 1;case 472:return 1;case 473:return 1;case 484:return 1;case 493:return 1;case 595:return 1;}return 0;}/*strtok(const string[], &index){ // Created by Compuphase new length = strlen(string); while ((index < length) && (string[index] <= ' ')) { index++; } new offset = index; new result[20]; while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1))) { result[index - offset] = string[index]; index++; } result[index - offset] = EOS; return result;}*/public BlueTooth(playerid){TextDrawHideForPlayer(playerid, BT);new Float:X, Float:Y, Float:Z;GetPlayerPos(playerid, X,Y,Z);Gangzone[playerid]=GangZoneCreate(X-150.0, Y-150.0, X+150.0, Y+150.0);GangZoneShowForPlayer(playerid, Gangzone[playerid], 0x0088FF77);GangZoneFlashForPlayer(playerid, Gangzone[playerid], 0x00FFFF77);new Items;for(new p=0;p<200;p++){if(IsPlayerConnected(p)){if(GetDistanceBetweenPlayers(playerid,p) < 300){Items++;if(Items < 40){AddMenuItem(BTM, 0, PlayerName(p));Rows[Items-1]=p;} else AddMenuItem(BTM, 1, PlayerName(p));}}}ShowMenuForPlayer(BTM, playerid);}public GetDistanceBetweenPlayers(playerid,playerid2) //By Slick (Edited by Sacky){new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;new Float:tmpdis;GetPlayerPos(playerid,x1,y1,z1);GetPlayerPos(playerid2,x2,y2,z2);tmpdis = floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));return floatround(tmpdis);}public IsPlayerInArea(playerID, Float:data1,Float:data2,Float:data3,Float:data4){ new Float:X, Float:Y, Float:Z; GetPlayerPos(playerID, X, Y, Z); if(X >= data1 && X <= data2 && Y >= data3 && Y <= data4) { return 1; } return 0;}Float:GetPlayerTheoreticAngle(i){ new Float:sin; new Float:dis; new Float:angle2; new Float:x,Float:y,Float:z; new Float:tmp3; new Float:tmp4; new Float:MindAngle; if(IsPlayerConnected(i)){ GetPlayerPos(i,x,y,z); dis = floatsqroot(floatpower(floatabs(floatsub(x,ppos[i][0])),2)+floatpower(floatabs(floatsub(y,ppos[i][1])),2)); if(IsPlayerInAnyVehicle(i))GetVehicleZAngle(GetPlayerVehicleID(i), angle2); else GetPlayerFacingAngle(i, angle2); if(x>ppos[i][0]){tmp3=x-ppos[i][0];}else{tmp3=ppos[i][0]-x;} if(y>ppos[i][1]){tmp4=y-ppos[i][1];}else{tmp4=ppos[i][1]-y;} if(ppos[i][1]>y && ppos[i][0]>x){ //1 sin = asin(tmp3/dis); MindAngle = floatsub(floatsub(floatadd(sin, 90), floatmul(sin, 2)), -90.0); } if(ppos[i][1]<y && ppos[i][0]>x){ //2 sin = asin(tmp3/dis); MindAngle = floatsub(floatadd(sin, 180), 180.0); } if(ppos[i][1]<y && ppos[i][0]<x){ //3 sin = acos(tmp4/dis); MindAngle = floatsub(floatadd(sin, 360), floatmul(sin, 2)); } if(ppos[i][1]>y && ppos[i][0]<x){ //4 sin = asin(tmp3/dis); MindAngle = floatadd(sin, 180); } } return MindAngle;}#pragma unused GetPlayerTheoreticAnglepublic IsPlayerInCube(playerid, Float:xmin, Float:ymin, Float:zmin, Float:xmax, Float:ymax, Float:zmax){ new Float:x, Float:y, Float:z; GetPlayerPos(playerid, x, y, z); if(x > xmin && y > ymin && z > zmin && x < xmax && y < ymax && z < zmax)return 1; return 0;}//public DriftClear2(playerid, war)//{//if(DriftP[playerid] > war){}else DriftpNoC[playerid]=false;//}public DriftClear(playerid){if(DriftpNoC[playerid]){}else SetPlayerScore(playerid,GetPlayerScore(playerid)+DriftP[playerid]); DriftP[playerid]=0;}public DriftUpdate(){ new count; new count2 = 1; new oldscore = 1; new ScoreArray[200]; new s[256]; for(new playerid=0;playerid<200;playerid++)if(IsPlayerConnected(playerid)){ if(DriftP[playerid] > oldscore){ for(new x=0;x<199;x++){ ScoreArray[x+1]=ScoreArray[x]; } ScoreArray[0] = playerid; } if(DriftP[playerid] > oldscore && playerid !=ScoreArray[0]){ for(new x=0;x<199;x++){ ScoreArray[x+1]=ScoreArray[x]; oldscore = DriftP[playerid]; } ScoreArray[1] = playerid; } if(DriftP[playerid] > oldscore && playerid !=ScoreArray[1] && playerid !=ScoreArray[0]){ for(new x=0;x<199;x++){ ScoreArray[x+1]=ScoreArray[x]; } ScoreArray[2] = playerid; } if(DriftP[playerid] > oldscore && playerid !=ScoreArray[2] && playerid !=ScoreArray[1]&& playerid !=ScoreArray[0]){ for(new x=0;x<199;x++){ ScoreArray[x+1]=ScoreArray[x]; } ScoreArray[3] = playerid; } if(DriftP[playerid] > oldscore && playerid !=ScoreArray[3] && playerid !=ScoreArray[2]&& playerid !=ScoreArray[1]&& playerid !=ScoreArray[0]){ for(new x=0;x<199;x++){ ScoreArray[x+1]=ScoreArray[x]; } ScoreArray[4] = playerid; } if(DriftP[playerid] > oldscore && playerid !=ScoreArray[4] && playerid !=ScoreArray[3] && playerid !=ScoreArray[2] && playerid !=ScoreArray[1] && playerid !=ScoreArray[0]){ for(new x=0;x<199;x++){ ScoreArray[x+1]=ScoreArray[x]; } ScoreArray[5] = playerid; } count++; if(ScoreArray[0] == ScoreArray[1] && ScoreArray[1] == ScoreArray[2]){ format(s, 256, "Ranking Driftu:~n~~y~1st - %s:~n~%d~w~" , PlayerName(ScoreArray[0]),ScoreArray[0], DriftP[ScoreArray[0]]); } else if((ScoreArray[0] == ScoreArray[1] && ScoreArray[0]!= ScoreArray[2])|| (ScoreArray[0] == ScoreArray[2] && ScoreArray[0]!=ScoreArray[1])||( ScoreArray[1] == ScoreArray[2] && ScoreArray[1] != ScoreArray[0])){ format(s, 256, "Ranking Driftu:~n~~r~1st - %s:%d~w~2st - %s:%d" , PlayerName(ScoreArray[0]),ScoreArray[0], DriftP[ScoreArray[0]], PlayerName(ScoreArray[1]),ScoreArray[1], DriftP[ScoreArray[1]]); } else { format(s, 256, "Ranking Driftu:~n~~r~1st - %s:%d~w~~n~~n~2st - %s:%d~n~~n~3st - %s:%d" , PlayerName(ScoreArray[0]),ScoreArray[0], DriftP[ScoreArray[0]], PlayerName(ScoreArray[1]),ScoreArray[1], DriftP[ScoreArray[1]], PlayerName(ScoreArray[2]),ScoreArray[2], DriftP[ScoreArray[2]]); } TextDrawHideForAll(DriftText[0]); TextDrawDestroy(DriftText[0]); DriftText[0] = TextDrawCreate(450.0, 150.0, s);// TextDrawUseBox(DriftText[0], true);// TextDrawBoxColor(DriftText[0], 0x000000AA);// TextDrawAlignment(DriftText[0], 2);// TextDrawTextSize(DriftText[0], 2.9, 2.9); TextDrawSetOutline(DriftText[0], 2);// TextDrawColor(DriftText[0], 0x00000000); TextDrawShowForAll(DriftText[0]);/* TextDrawHideForAll(DriftText[1]); TextDrawDestroy(DriftText[1]); format(s, 256, "%s : %d", PlayerName(ScoreArray[0]), DriftP[ScoreArray[0]]); DriftText[1] = TextDrawCreate(400.0, floatadd(205.0, (1*5)), s); TextDrawShowForAll(DriftText[1]); */ /* TextDrawHideForAll(DriftText[1]); TextDrawDestroy(DriftText[1]); format(s, 256, "%s : %d", PlayerName(0), DriftP[0]); DriftText[1] = TextDrawCreate(400.0, floatadd(205.0, (1*5)), s); TextDrawShowForAll(DriftText[1]); TextDrawHideForAll(DriftText[1]); TextDrawDestroy(DriftText[1]); format(s, 256, "%s : %d", PlayerName(1), DriftP[1]); DriftText[1] = TextDrawCreate(400.0, floatadd(205.0, (1*5)), s); TextDrawShowForAll(DriftText[1]);*/ /* TextDrawHideForAll(DriftText[2]); TextDrawDestroy(DriftText[2]); format(s, 256, "%s : %d", PlayerName(ScoreArray[1]), DriftP[ScoreArray[1]]); DriftText[2] = TextDrawCreate(400.0, floatadd(205.0, (2*5)), s); TextDrawShowForAll(DriftText[2]); TextDrawHideForAll(DriftText[3]); TextDrawDestroy(DriftText[3]); format(s, 256, "%s : %d", PlayerName(ScoreArray[2]), DriftP[ScoreArray[2]]); DriftText[3] = TextDrawCreate(400.0, floatadd(205.0, (3*5)), s); TextDrawShowForAll(DriftText[3]); TextDrawHideForAll(DriftText[4]); TextDrawDestroy(DriftText[4]); format(s, 256, "%s : %d", PlayerName(ScoreArray[3]), DriftP[ScoreArray[3]]); DriftText[4] = TextDrawCreate(400.0, floatadd(205.0, (4*5)), s); TextDrawShowForAll(DriftText[4]); TextDrawHideForAll(DriftText[5]); TextDrawDestroy(DriftText[5]); format(s, 256, "%s : %d", PlayerName(ScoreArray[4]), DriftP[ScoreArray[4]]); DriftText[5] = TextDrawCreate(400.0, floatadd(205.0, (5*5)), s); TextDrawShowForAll(DriftText[5]);*/ count2++; }}public Speed(){ new Float:dis; new Float:x,Float:y,Float:z; new Drift[200]; new round; new i; new Float:RelAngle; new Float:TheAngle; for(i=0;i<MAX_PLAYERS;i++)if(IsPlayerConnected(i)){ GetPlayerPos(i, x, y, z); TheAngle = GetPlayerTheoreticAngle(i); GetVehicleZAngle(GetPlayerVehicleID(i), RelAngle); if(IsPlayerInAnyVehicle(i)) { if(RelAngle < TheAngle){ Drift[i] = floatround(floatsub(TheAngle, RelAngle)); } else { Drift[i] = floatround(floatsub(RelAngle, TheAngle)); } dis = floatsqroot(floatpower(floatabs(floatsub(x,ppos[i][0])),2)+floatpower(floatabs(floatsub(y,ppos[i][1])),2)); round = floatround(floatmul((((dis/1000.0)*60.0)*60.0), 10.0)); if(Drift[i] > 20 && Drift[i] < 120 && TheAngle!=0.00000 && round > 10 && round < 500){ DriftP[i]+=(1*round*Drift[i])/6;// new s[256]; format(s, 256, "~w~Drift : %d", DriftP[i]);// GameTextForPlayer(i,s,100,5); } ppos[i][0] = x; ppos[i][1] = y; ppos[i][2] = z; } }}#pragma unused CreatePickup2#pragma unused GetPlayerArmourExpublic PickDestroy(o)if(o!=Ship)DestroyPickup(o); // Destroy pickup ! Muha xD!