Проблема UdpateVehicleDamageStatus -
Ins1d3 - 27.01.2014
Всем привет, я решал сделать систему механников на сервер, и столкнулся с такой проблемой...
Я хочу чтобы делалались отдельные детали машины отдельно (бампера, капот/багажник, двигатель, фары, колёса)
с двигателем, фарами и колёсами проблем не возникло, а вот с оставшимися бамперами и капотом с багажником я не могу разобраться. Проблема вот в чём: если у тебя сломаны бампера и фары, то без починки фар бампера не починятся, та же ситуация с дверьми и капотом/багажником
Код:
PHP код:
case 270:
{
if(response){
switch(listitem){
case 0:{
//new panels, doors, lights, tires;
new vid = GetPlayerVehicleID(playerid);
GetVehicleDamageStatus(vid, panels, doors, lights, tires);
//tires = encode_tires(0, 0, 0, 0); // fix all tires
panels = encode_panels(0, 0, 0, 0, 0, 0, 0);
//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(vid, panels, doors, lights, tires);}
case 1:{
new vid = GetPlayerVehicleID(playerid);
GetVehicleDamageStatus(vid, panels, doors, lights, tires);
tires = encode_tires(0, 0, 0, 0); // fix all tires
//panels = encode_panels(0, 0, 0, 0, 0, 0, 0);
//doors = encode_doors(4, 4, 4, 4, 4, 4); // fix all doors //fell off - (4, 4, 4, 4, 0, 0)
//lights = encode_lights(0, 0, 0, 0); // fix all lights
UpdateVehicleDamageStatus(vid, panels, doors, lights, tires);}
case 2:{
new vid = GetPlayerVehicleID(playerid);
GetVehicleDamageStatus(vid, panels, doors, lights, tires);
UpdateVehicleDamageStatus(vid, panels, doors, 0000, tires);}
case 3:{
new vid = GetPlayerVehicleID(playerid);
GetVehicleDamageStatus(vid, panels, doors, lights, tires);
doors = encode_doors(0, 0, 0, 0, 0, 0);
UpdateVehicleDamageStatus(vid, panels, doors, lights, tires);}
case 4:{
VHealth[GetPlayerVehicleID(playerid)] = 1000.0;
SetVehicleHealth(GetPlayerVehicleID(playerid),1000.0);
return 1;
что не так?
Re: Проблема UdpateVehicleDamageStatus -
long76 - 28.01.2014
encode_tires(tire1, tire2, tire3, tire4) return tire1 | (tire2 << 1) | (tire3 << 2) | (tire4 << 3);
encode_panels(flp, frp, rlp, rrp, windshield, front_bumper, rear_bumper)
{
return flp | (frp << 4) | (rlp << 8) | (rrp << 12) | (windshield << 16) | (front_bumper << 20) | (rear_bumper << 24);
}
encode_doors(bonnet, boot, driver_door, passenger_door, behind_driver_door, behind_passenger_door)
{
#pragma unused behind_driver_door
#pragma unused behind_passenger_door
return bonnet | (boot << 8) | (driver_door << 16) | (passenger_door << 24);
}
encode_lights(light1, light2, light3, light4)
{
return light1 | (light2 << 1) | (light3 << 2) | (light4 << 3);
}
у тебя также?