13.02.2013, 09:13
Ребят, в каких случаях может не срабатывать OnPlayerKeyStateChange ( в авто )? Категорически не хочет брать Клавиши - KEY_WALK и KEY_SPRINT
Может где рука скривила?
P.S. Делал подобное шаманство:
итог: ON_FOOT => Тест 1 замечательно проходит , 2ой и не должен. А вот с Водилой траблы. Даже 1ая проверка не проходит.
Код:
if(newkeys & KEY_WALK) { if(GetPlayerState(playerid) == PlAYER_STATE_DRIVER) { new en,li,al,doors,bon,boot,ob; new veh = GetPlayerVehicleID(playerid); GetVehicleParamsEx(veh,en,li,al,doors,bon,boot,ob); if(Cardvig[veh][1] == 0) {SetVehicleParamsEx(veh,en,1,al,doors,bon,boot,ob);Cardvig[veh][1] = 1;} else if(Cardvig[veh][1] == 1) {SetVehicleParamsEx(veh,en,0,al,doors,bon,boot,ob);Cardvig[veh][1] = 0;} }
P.S. Делал подобное шаманство:
Код:
if(newkeys & KEY_WALK) { printf("Test 1!"); if(IsPlayerInAnyVehicle(playerid)) { printf("Test 2!"); new en,li,al,doors,bon,boot,ob; new veh = GetPlayerVehicleID(playerid); GetVehicleParamsEx(veh,en,li,al,doors,bon,boot,ob); if(Cardvig[veh][1] == 0) {SetVehicleParamsEx(veh,en,1,al,doors,bon,boot,ob);Cardvig[veh][1] = 1;} else if(Cardvig[veh][1] == 1) {SetVehicleParamsEx(veh,en,0,al,doors,bon,boot,ob);Cardvig[veh][1] = 0;} return 1; }