Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //timers
- forward VehiclesU(vid, playerid);
- public VehiclesU(vid, playerid)
- {
- new Float:sx, Float:sy, Float:sz, Float:speed1, Float:speed2, speedo[40], kms[100], TW[100], oil[100], fuel[100], engine, lights, alarm, doors, bonnet, boot, objective;
- new buffer[vInfo];
- MEM::get_arr(LIST_IT::data_ptr(pvnode[playerid]), _, buffer);
- GetVehicleParamsEx(vid, engine, lights, alarm, doors, bonnet, boot, objective);
- //engine
- if(buffer[StartEng] >= 1)
- {
- printf("%d",buffer[StartEng]);
- if(buffer[StartEng] < 3)
- buffer[StartEng]++;
- else
- {
- SendClientMessage(playerid, X11_GREEN_4, "[INFO]: Engine Started.");
- buffer[StartEng] = 0;
- SetVehicleParamsEx(vid, 1, lights, alarm, doors, bonnet, boot, objective);
- }
- pvnode[playerid]=LIST::insert_arr(vList,pvnode[playerid],buffer);
- LIST::erase(vList,LIST_IT::next(pvnode[playerid]));
- return 1;
- }
- //speed
- GetVehicleVelocity(vid, sx, sy, sz);
- speed1 = (floatsqroot(sx*sx+sy*sy+sz*sz)*240)/1.229576;
- format(speedo, sizeof(speedo), "%0.0f Km/h", speed1);
- TextDrawSetString(Textdraw1[playerid], speedo);
- //Kilometers
- speed2 = (buffer[LSpeed]+speed1)/2.0;
- buffer[vKilometers] += speed2*0.00013888888888888888888888888888;
- buffer[LSpeed] = speed1;
- format(kms, sizeof(kms), "%0.2f Kms", buffer[vKilometers]);
- TextDrawSetString(Textdraw5[playerid], kms);
- //Tire Wear
- buffer[vTireWear] += speed2*0.00015;
- format(TW, sizeof(TW), "Tire Wear : %0.0f%", buffer[vTireWear]);
- new p, d, l, t;
- GetVehicleDamageStatus(vid, p, d, l, t);
- if(buffer[vTireWear] >= 85 && buffer[vTireWear] < 90)
- {
- TextDrawHideForPlayer(playerid, Textdraw12[playerid]);
- TextDrawHideForPlayer(playerid, Textdraw14[playerid]);
- TextDrawColor(Textdraw12[playerid], 0xFF0000AA);
- TextDrawColor(Textdraw14[playerid], 0x9B0000FF);
- TextDrawShowForPlayer(playerid, Textdraw12[playerid]);
- TextDrawShowForPlayer(playerid, Textdraw14[playerid]);
- if(speed2 > 0)
- {
- new rand = random(2000);
- if(rand >= 0 && rand < 1000)
- {
- new rand3 = random(4);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 1);
- buffer[vTireWear] = 90;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 2);
- buffer[vTireWear] = 90;
- }
- case 2:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 4);
- buffer[vTireWear] = 90;
- }
- case 3:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 8);
- buffer[vTireWear] = 90;
- }
- }
- }
- }
- }
- else if(buffer[vTireWear] >= 90 && buffer[vTireWear] < 95)
- {
- TextDrawHideForPlayer(playerid, Textdraw12[playerid]);
- TextDrawHideForPlayer(playerid, Textdraw14[playerid]);
- TextDrawColor(Textdraw12[playerid], 0xFF0000AA);
- TextDrawColor(Textdraw14[playerid], 0x9B0000FF);
- TextDrawShowForPlayer(playerid, Textdraw12[playerid]);
- TextDrawShowForPlayer(playerid, Textdraw14[playerid]);
- if(speed2 > 0)
- {
- new rand = random(2000), rand3;
- if(rand >= 0 && rand <= 1250)
- {
- switch(t) // 1, 2, 4 ou 8
- {
- case 1:
- {
- rand3 = random(3);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 3);
- buffer[vTireWear] = 95;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 5);
- buffer[vTireWear] = 95;
- }
- case 2:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 9);
- buffer[vTireWear] = 95;
- }
- }
- }
- case 2:
- {
- rand3 = random(3);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 3);
- buffer[vTireWear] = 95;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 6);
- buffer[vTireWear] = 95;
- }
- case 2:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 10);
- buffer[vTireWear] = 95;
- }
- }
- }
- case 4:
- {
- rand3 = random(3);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 5);
- buffer[vTireWear] = 95;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 6);
- buffer[vTireWear] = 95;
- }
- case 2:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 12);
- buffer[vTireWear] = 95;
- }
- }
- }
- case 8:
- {
- rand3 = random(3);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 9);
- buffer[vTireWear] = 95;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 10);
- buffer[vTireWear] = 95;
- }
- case 2:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 12);
- buffer[vTireWear] = 95;
- }
- }
- }
- }
- }
- }
- }
- else if(buffer[vTireWear] >= 95 && buffer[vTireWear] < 99)
- {
- TextDrawHideForPlayer(playerid, Textdraw12[playerid]);
- TextDrawHideForPlayer(playerid, Textdraw14[playerid]);
- TextDrawColor(Textdraw12[playerid], 0xFF0000AA);
- TextDrawColor(Textdraw14[playerid], 0x9B0000FF);
- TextDrawShowForPlayer(playerid, Textdraw12[playerid]);
- TextDrawShowForPlayer(playerid, Textdraw14[playerid]);
- if(speed2 > 0)
- {
- new rand = random(2000), rand3;
- if(rand >= 0 && rand <= 1500)
- {
- switch(t) // 3, 5, 6, 9, 10, 12
- {
- case 3:
- {
- rand3 = random(2);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 7);
- buffer[vTireWear] = 99;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 11);
- buffer[vTireWear] = 99;
- }
- }
- }
- case 5:
- {
- rand3 = random(2);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 7);
- buffer[vTireWear] = 99;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 13);
- buffer[vTireWear] = 99;
- }
- }
- }
- case 6:
- {
- rand3 = random(2);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 7);
- buffer[vTireWear] = 99;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 14);
- buffer[vTireWear] = 99;
- }
- }
- }
- case 9:
- {
- rand3 = random(2);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 11);
- buffer[vTireWear] = 99;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 13);
- buffer[vTireWear] = 99;
- }
- }
- }
- case 10:
- {
- rand3 = random(2);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 11);
- buffer[vTireWear] = 99;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 14);
- buffer[vTireWear] = 99;
- }
- }
- }
- case 12:
- {
- rand3 = random(2);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 13);
- buffer[vTireWear] = 99;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 14);
- buffer[vTireWear] = 99;
- }
- }
- }
- default:
- {
- rand3 = random(4);
- switch(rand3)
- {
- case 0:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 7);
- buffer[vTireWear] = 99;
- }
- case 1:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 11);
- buffer[vTireWear] = 99;
- }
- case 2:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 13);
- buffer[vTireWear] = 99;
- }
- case 3:
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 14);
- buffer[vTireWear] = 99;
- }
- }
- }
- }
- }
- }
- }
- else if(buffer[vTireWear] == 99)
- {
- TextDrawHideForPlayer(playerid, Textdraw12[playerid]);
- TextDrawHideForPlayer(playerid, Textdraw14[playerid]);
- TextDrawColor(Textdraw12[playerid], 0xFF0000AA);
- TextDrawColor(Textdraw14[playerid], 0x9B0000FF);
- TextDrawShowForPlayer(playerid, Textdraw12[playerid]);
- TextDrawShowForPlayer(playerid, Textdraw14[playerid]);
- if(speed2 > 0)
- {
- new rand = random(2000);
- if(rand >= 0 && rand < 1750)
- {
- UpdateVehicleDamageStatus(vid, p, d, l, 15);
- buffer[vTireWear] = 100;
- }
- }
- }
- else if(buffer[vTireWear] >= 100)
- {
- if(t !=15)
- {
- buffer[vTireWear] = 100;
- TextDrawHideForPlayer(playerid, Textdraw12[playerid]);
- TextDrawHideForPlayer(playerid, Textdraw14[playerid]);
- TextDrawColor(Textdraw12[playerid], 0xFF0000AA);
- TextDrawColor(Textdraw14[playerid], 0x9B0000FF);
- TextDrawShowForPlayer(playerid, Textdraw12[playerid]);
- TextDrawShowForPlayer(playerid, Textdraw14[playerid]);
- UpdateVehicleDamageStatus(vid, p, d, l, 15);
- }
- else
- {
- buffer[vTireWear] = 100;
- TextDrawHideForPlayer(playerid, Textdraw12[playerid]);
- TextDrawHideForPlayer(playerid, Textdraw14[playerid]);
- TextDrawColor(Textdraw12[playerid], 0xFF0000AA);
- TextDrawColor(Textdraw14[playerid], 0x9B0000FF);
- TextDrawShowForPlayer(playerid, Textdraw12[playerid]);
- TextDrawShowForPlayer(playerid, Textdraw14[playerid]);
- }
- }
- TextDrawSetString(Textdraw8[playerid], TW);
- //Oil
- buffer[vOil] = 100-((buffer[vKilometers]-buffer[vLastOilChange])/100);
- format(oil, sizeof(oil), "Oil Level : %0.0f%", buffer[vOil]);
- TextDrawSetString(Textdraw7[playerid], oil);
- if(buffer[vOil] <= 0)
- {
- buffer[vOil] = 0;
- TextDrawHideForPlayer(playerid, Textdraw11[playerid]);
- TextDrawHideForPlayer(playerid, Textdraw13[playerid]);
- TextDrawColor(Textdraw11[playerid], 0xFF0000AA);
- TextDrawColor(Textdraw13[playerid], 0x9B0000FF);
- TextDrawShowForPlayer(playerid, Textdraw11[playerid]);
- TextDrawShowForPlayer(playerid, Textdraw13[playerid]);
- SetVehicleParamsEx(vid, 0, lights, alarm, doors, bonnet, boot, objective);
- }
- else if(buffer[vOil] <= 5)
- {
- TextDrawHideForPlayer(playerid, Textdraw11[playerid]);
- TextDrawHideForPlayer(playerid, Textdraw13[playerid]);
- TextDrawColor(Textdraw11[playerid], 0xFF0000AA);
- TextDrawColor(Textdraw13[playerid], 0x9B0000FF);
- TextDrawShowForPlayer(playerid, Textdraw11[playerid]);
- TextDrawShowForPlayer(playerid, Textdraw13[playerid]);
- }
- //Fuel
- buffer[vFuel] -= speed2*0.00033+0.005;
- if(buffer[vFuel] <= 0)
- {
- buffer[vFuel] = 0;
- SetVehicleParamsEx(vid, 0, lights, alarm, doors, bonnet, boot, objective);
- }
- else if(buffer[vFuel] <= 25)
- {
- TextDrawHideForPlayer(playerid, Textdraw9[playerid]);
- TextDrawHideForPlayer(playerid, Textdraw10[playerid]);
- TextDrawColor(Textdraw9[playerid], 0xFF0000AA);
- TextDrawColor(Textdraw10[playerid], 0x9B0000FF);
- TextDrawShowForPlayer(playerid, Textdraw9[playerid]);
- TextDrawShowForPlayer(playerid, Textdraw10[playerid]);
- }
- format(fuel, sizeof(fuel), "Fuel : %0.0f%", buffer[vFuel]);
- TextDrawSetString(Textdraw6[playerid], fuel);
- pvnode[playerid]=LIST::insert_arr(vList,pvnode[playerid],buffer);
- LIST::erase(vList,LIST_IT::next(pvnode[playerid]));
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement