Sziasztok!
Hogyan oldhatnám meg azt hogy a kilyukadt kerekeket javítani? Az az hogyan kérdezhetem le hogy lyukas-e mondjuk a bal elsõ kerék?
Meg azt hogyan lehet le kérdezni hogy megvan-e törve a motorháztetõ??
Google-n ezt találtam:
new panels, doors, lights, tires;
GetVehicleDamageStatus(vehicleid, panels, doors, lights, tires);
tires = encode_tires(0, 0, 0, 0); // fix all tires
panels = encode_panels(0, 0, 0, 0, 0, 0, 0); // fix all panels //fell off - (3, 3, 3, 3, 3, 3, 3)
doors = encode_doors(0, 0, 0, 0, 0, 0); // fix all doors //fell off - (4, 4, 4, 4, 0, 0)
lights = encode_lights(0, 0, 0, 0); // fix all lights
UpdateVehicleDamageStatus(vehicleid, panels, doors, lights, tires);
new panels, doors, lights, tires;
GetVehicleDamageStatus(vehicleid, panels, doors, lights, tires);
itt van a lekérdezés
doors A variable to store the door damage data in, passed by reference.[/quote]
http://wiki.sa-mp.com/wiki/DoorStates
itt leírja bit és byte szinten és megmutatja példával is, hogy melyik mit jelent
és itt egy tutorial a bit mûveletekrõl: ( lehet elsõre nem érted meg, ajánlatos többször elolvasni, és lassan kitisztul a kép :) )
Részben tartalmazza azt a tudást amire szükséged van.
http://sampforum.hu/index.php?topic=29621.0
decode_panels(panels, &flp, &frp, &rlp, &rrp, &windshield, &front_bumper, &rear_bumper)
{
flp = panels & 15;
frp = panels >> 4 & 15;
rlp = panels >> 8 & 15;
rrp = panels >> 12 & 15;
windshield = panels >> 16 & 15;
front_bumper= panels >> 20 & 15;
rear_bumper = panels >> 24 & 15;
}
jó tanulást, ha még nem ismernéd a bit mûveleteket :)
new panels, doors, lights, tires;
GetVehicleDamageStatus(vehicleid, panels, doors, lights, tires);
tires &= encode_tire(1,1,1,0);
Oda írd a 0-t amelyiket szerelni akarod
nem csak lyukas marad ha az volt
tires &= encode_tire(1,1,1,0);
bit szinten ez így néz ki: ( mondjuk a 2. és a 4. lyukas és te a 4.-et javítod )
0101
1110
------
0100