EgorTresh 0 Опубликовано 17 марта, 2019 Раньше заводился двигатель на CTRL, ничего не менял. На след.день не заводится двигатель. Бензин есть. CMD:engine(playerid, params[]) { if(GetPlayerState(playerid) != 2) return false; if(engines[playerid]>gettime())return SendClientMessage(playerid,COLOR_GREY,"Нельзя так часто заводить двигатель"); new carid = GetPlayerVehicleID(playerid), vehicleid = 0; if(IsAVel(carid)) return false; if(GetEngineStatus(carid) < 1) { new arend_id = INVALID_PLAYER_ID; if(GetArendCarID(vehicleid, arend_id) != (-1)) { new rc = GetArendCarID(vehicleid); if(ArendInfo[rc][aPlayerID] != playerid) return 1; } if(Fuel[carid] > 0.0) { if(IsASellCar(carid))return 1; if(!IsAOwnableCar(carid) || CarInfo[GetVehicleID(carid)][cKeyIN]) { new Float:Health, string[50]; GetVehicleHealth(carid, Health); if(Health > 1000) Health = 1000.0; else if(Health < 400) return SendClientMessage(playerid, COLOR_GREY, "Вы не можете завести двигатель. Для его починки вызовите механика"); new UNEngine = floatround(2000.0 - Health); if(UNEngine < 0) UNEngine = 0; else if(UNEngine > 2000) UNEngine = 2000; SetTimerEx("EngineVehicle", UNEngine, false, "ii", playerid, carid); format(string, sizeof(string), " %s пытается завести двигатель", GetName(playerid)); ProxDetector(25.0, playerid, string, COLOR_PURPLE); engines[playerid]=gettime()+4; } else return SendClientMessage(playerid,COLOR_GREY,"Ключи не вставлены"); } else return GameTextForPlayer(playerid, "~r~NO FUEL", 2000, 1); } else { new string[70]; SetEngineStatus(carid,false, playerid); format(string,sizeof(string)," %s заглушил(а) двигатель",GetName(playerid)); ProxDetector(25.0,playerid,string,COLOR_PURPLE); //SpeedOFF(playerid, carid, 2); } return true; } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
#meow 64 Опубликовано 17 марта, 2019 (изменено) Кидайте сюда ваш public OnPlayerStateChange Изменено 17 марта, 2019 пользователем #meow Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
EgorTresh 0 Опубликовано 17 марта, 2019 8 часов назад, #meow сказал: Кидайте сюда ваш public OnPlayerStateChange Спойлер public OnPlayerStateChange(playerid, newstate, oldstate) { pTemp[playerid][pAbletoGun] = 2; if(newstate == PLAYER_STATE_DRIVER) SetPVarInt(playerid,"VehicleEnters",GetPlayerVehicleID(playerid)),SetPVarInt(playerid,"exitedtrans",0); if(oldstate == PLAYER_STATE_DRIVER) { if(BanCar[GetPVarInt(playerid, "VehicleEnters")]) KillTimer(TimeUpdate[playerid]); TimeUpdate[playerid] = SetTimerEx("@UpdateVehiclePos", 10000, false, "ii", playerid, GetPVarInt(playerid, "VehicleEnters"), 1); BanCar[GetPVarInt(playerid, "VehicleEnters")] = true; DeletePVar(playerid, "VehicleEnters"); } if( newstate == PLAYER_STATE_DRIVER ) { new temp; temp = GetVehicleModel(GetPlayerVehicleID(playerid)); BE_Play_Check[playerid] = true; for(new i; i != sizeof(BE_Bad_Vehs); i++) { if(temp == BE_Bad_Vehs[i]) { BE_Play_Check[playerid] = false; break; } } } if(newstate==2) { new string[250]; new carid = GetPlayerVehicleID(playerid); if(VehicleInfo[carid][vJob] == 8) { if(InJob[playerid]!=1) { SendClientMessage(playerid,COLOR_RED,"[Ошибка] {FFFFFF}Вы не переоделись в рабочую одежду!"); RemovePlayerFromVehicle(playerid); return false; } SetPVarInt(playerid,"fermar",gettime()+170); format(string,sizeof(string),"{FFFFFF}Отправляйтесь по чекпоинтам для выполнения своей работы,\nполучить зарплату вы сможете в здании фермы.\n\nУдачной работы!"); ShowPlayerDialogEx(playerid,0,0," ",string,"Принять",""); TogglePlayerDynamicRaceCP(playerid,Tfarm_CP[0],true); InJob[playerid]=3; FarmJob[playerid]=0; } else if(VehicleInfo[carid][vJob] == 9) { if(InJob[playerid]!=1) { SendClientMessage(playerid,COLOR_RED,"[Ошибка] {FFFFFF}Вы не переоделись в рабочую одежду!"); RemovePlayerFromVehicle(playerid); return false; } SetPVarInt(playerid,"fermar",gettime()+120); format(string,sizeof(string),"{FFFFFF}Отправляйтесь по чекпоинтам для выполнения своей работы,\nполучить зарплату вы сможете в здании фермы.\n\nУдачной работы!"); ShowPlayerDialogEx(playerid,0,0," ",string,"Принять",""); TogglePlayerDynamicRaceCP(playerid,Kfarm_CP[0],true); InJob[playerid]=3; FarmJob[playerid]=0; } if(pInfo[playerid][pJob] == 7 ) { if(InJob[playerid] == 3) { TogglePlayerDynamicCP(playerid, MinerDownCP, false); SendClientMessage(playerid, COLOR_RED, "[Информация] {FFFFFF}Вы уронили сено!"); InJob[playerid] = 1; RemovePlayerAttachedObject(playerid, 7); for(new i; i < sizeof(MinPos); i ++) TogglePlayerDynamicCP(playerid, MinerCP[i], true); } } } if( oldstate == PLAYER_STATE_DRIVER ) { BE_Play_Check[ playerid ] = false; } if(!gPlayerLogged[playerid] && newstate != PLAYER_STATE_SPECTATING) return ToCheat(playerid, 1700); new vehicleid = 0, model = 0; new string[200]; if(newstate == PLAYER_STATE_PASSENGER) { vehicleid = GetPVarInt(playerid,"VehicleEnters"); model = GetVehicleModel(vehicleid); if(400 <= model <= 611) { model -= 400; new seat = GetPlayerVehicleSeat(playerid); if(seat != 128) { // model = (MaxPassengers[model >>> 3] >>> ((model & 7) << 2)) & 0xF; // if(!model || model == 15) return ToCheat(playerid, 116); // else if(!(0 < seat <= model) && (model != 431 || model != 437)) return ToCheat(playerid, 117); } else return ToCheat(playerid, 118); } } if(newstate == PLAYER_STATE_ONFOOT) { if(GetPVarInt(playerid, "DrivingTest")) { SendClientMessage(playerid, COLOR_RED, "У Вас есть 15 секунд, чтобы вернуться"); DisablePlayerRaceCheckpoint(playerid); DrivingTestTime[playerid] = 15; } if(GetPVarInt(playerid, "FlyTest")) { SendClientMessage(playerid, COLOR_RED, "У Вас есть 15 секунд, чтобы вернуться"); DisablePlayerRaceCheckpoint(playerid); FlyTestTime[playerid] = 15; } if(GetPVarInt(playerid, "WaterTest") && GetPVarInt(playerid, "WaterTestTimeOn")) { SendClientMessage(playerid, COLOR_RED, "У Вас есть 15 секунд, чтобы вернуться"); DisablePlayerRaceCheckpoint(playerid); WaterTestTime[playerid] = 15; } if(pInfo[playerid][pJob] == JOB_BUS && pTemp[playerid][pBusID] != INVALID_VEHICLE_ID) { DisablePlayerRaceCheckpoint(playerid); SendClientMessage(playerid, COLOR_RED, "У Вас есть 15 секунд, чтобы вернуться в автобус"); pTemp[playerid][pBusSpawnTimer] = SetTimerEx("@BusSpawn",15000,false,"i",playerid); SetPVarInt(playerid, "exitedtrans", 1); } if(pInfo[playerid][pJob] == JOB_TRUCKER && pTemp[playerid][pTruckID] != INVALID_VEHICLE_ID) { DisablePlayerRaceCheckpoint(playerid); SendClientMessage(playerid, COLOR_RED, "У Вас есть 15 секунд, чтобы вернуться в грузовик"); pTemp[playerid][pTruckSpawnTimer] = SetTimerEx("@TruckerSpawn",15000,false,"i",playerid); SetPVarInt(playerid,"exitedtrans",1); } if(GetPVarInt(playerid, "TruckerJob")) { SendClientMessage(playerid, COLOR_RED, "У вас есть 15 секунд, чтобы вернуться"); DisablePlayerRaceCheckpoint(playerid); SetPVarInt(playerid, "TruckerJobTime", 15); } } if(newstate == PLAYER_STATE_DRIVER) { vehicleid = GetPVarInt(playerid,"VehicleEnters"); model = GetVehicleModel(vehicleid); SetPVarInt(playerid,"AC_ANTIFLOOD", gettime()+3); SetPlayerArmedWeapon(playerid, 0); if(vehicleid) VehicleInfo[vehicleid][vDriver] = playerid; SetPVarInt(playerid, "exitedtrans", 0); if((GetTickCount()-GetPVarInt(playerid, "СarTime")) < 1000) { SetPVarInt(playerid, "TimeCar", GetPVarInt(playerid, "TimeCar")+5); if(GetPVarInt(playerid, "TimeCar") > 10) return ToCheat(playerid, 1132); } SetPVarInt(playerid, "СarTime", GetTickCount()); pTemp[playerid][pDeathCar] = vehicleid; new seat = GetPlayerVehicleSeat(playerid); if(seat != 128) { if(!seat) { if(!(400 <= model <= 611) || MaxPassengers[model - 400 >>> 3] >>> ((model - 400 & 7) << 2) & 0xF == 15) return ToCheat(playerid, 12); } else return ToCheat(playerid, 62); } if(!InShop[playerid]) { if(GetEngineStat(vehicleid) == 0 && IsAVel(vehicleid)) { new engine, lights, alarm, doors, bonnet, boot, objective; GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective); SetVehicleParamsEx(vehicleid, true, lights, alarm, doors, bonnet, boot, objective); } if(!IsAVel(vehicleid) && !IsABoat(vehicleid) && !IsAPlane(vehicleid)) { @UpdateCarInfo(playerid, vehicleid, 0); pTemp[playerid][pCarInfoTimer] = SetTimerEx("@UpdateCarInfo", 200, true, "iii", playerid, vehicleid, 0); } new carid = GetPlayerVehicleID(playerid); if(IsAOwnableCar(carid)) { new number = GetVehicleID(carid); if(IsASellCar(carid)) { format(string,sizeof(string),"{027BEB}Этот транспорт продается.\n\n{FFFFFF}Модель: {AFAFAF}%s{FFFFFF}\nСтоимость: {AFAFAF}%d рублей{FFFFFF}\n\n{FFFFFF}Чтобы купить нажмите {027BEB}'Купить'", VehicleName[GetVehicleModel(carid)-400],CarInfo[number][cCost]); ShowPlayerDialogEx(playerid,1571,0,"Транспорт продается",string,"Купить","Отмена"); } else { if(pInfo[playerid][pAdmin] > 1) { format(string,sizeof(string),"Этот транспорт зарегистрирован на жителя {9ACD32}%s",CarInfo[number][cOwner]); SendClientMessage(playerid,COLOR_WHITE,string); format(string,sizeof(string),"Налог этого транспорта составляет %d",CarInfo[number][cShtrafer]); SendClientMessage(playerid,COLOR_VALIK,string); } if(CarInfo[number][cAlarmON]) { SetAlarmStatus(carid,true); AlarmTime[carid] = 20; foreach(new i : Player) { if(IsPlayerHaveCar(i,carid)) { new Float:X,Float:Y,Float:Z; GetVehiclePos(carid, X,Y,Z); format(string,sizeof(string),"[Информация] {FFFFFF}На транспорте [%s] сработала сигнализация",OwnCarNumber(carid)); SendClientMessage(i,COLOR_YELLOW,string); SendClientMessage(i,COLOR_RED,"[Информация] {FFFFFF}Местоположение транспорта указано на карте!"); SetPlayerRaceCheckpoint(i, 1, X, Y, Z, 0.0, 0.0, 0.0, 5); break; } } } if(CarInfo[number][cShtraf] > 0) { format(string,sizeof(string),"{FFFFFF}Этот транспорт находится на штрафстоянке!\n\nВладелец должен внести за него залог.\nРазмер залога: %d рублей",CarInfo[number][cShtraf]); ShowPlayerDialogEx(playerid,0,0,"Запрещено!",string,"Ок",""); RemovePlayerFromVehicle(playerid); } } } if((vehicleid >= aTruck[0][0] && vehicleid <= aTruck[2][1])) { if(pInfo[playerid][pJob] != JOB_TRUCKER) { SendClientMessage(playerid,COLOR_GREY,"Вы не работаете дальнобойщиком"); RemovePlayerFromVehicle(playerid); return 1; } if(pTemp[playerid][pTruckID] == vehicleid) return 1; if(pTemp[playerid][pTruckID] != INVALID_VEHICLE_ID) { SendClientMessage(playerid,COLOR_GREY,"Вы уже арендуете тягач"); RemovePlayerFromVehicle(playerid); return 1; } foreach(new i: Player) { if(pTemp[i][pTruckID] == vehicleid) { SendClientMessage(playerid,COLOR_GREY,"Этот тягач уже арендуют."); RemovePlayerFromVehicle(playerid); return 1; } } new trucklevel,price; if((vehicleid >= aTruck[0][0] && vehicleid <= aTruck[0][1])) {trucklevel = 1; price = 200;} else if(vehicleid >= aTruck[1][0] && vehicleid <= aTruck[1][1]) {trucklevel = 2; price = 300;} else {trucklevel = 3; price = 350;} if((trucklevel == 2 && pInfo[playerid][pTruckSkill] < TRUCK_LEVEL_2) || (trucklevel == 3 && pInfo[playerid][pTruckSkill] < TRUCK_LEVEL_3)) { SendClientMessage(playerid,COLOR_GREY,"Ваш опыт работы дальнобойщиком не достаточен для этого транспорта"); RemovePlayerFromVehicle(playerid); return 1; } if(GetCash(playerid) < price) { format(string,sizeof(string),"Вам нужно %d чтобы арендовать этот грузовик",price); SendClientMessage(playerid,COLOR_GREY,string); return RemovePlayerFromVehicle(playerid); } SetPVarInt(playerid,"truckprice",price); format(string,sizeof(string),"{FFFFFF}Вы хотите арендовать этот грузовик за {63BD4E}%d рублей{FFFFFF},\n чтобы возить на нем грузы?",price); ShowPlayerDialog(playerid,dTruckJob,0,"{027BEB}Аренда грузовика",string,"Да","Нет"); } if(vehicleid >= aMech[0] && vehicleid <= aMech[1]) { if(pInfo[playerid][pJob] != JOB_MECHANIC) { SendClientMessage(playerid, COLOR_GREY, "Вы не автомеханик!"); RemovePlayerFromVehicle(playerid); return 1; } if(GetCash(playerid) < 200) { SendClientMessage(playerid, COLOR_GREY, "Вам нужно 200 рублей чтобы арендовать этот транспорт"); RemovePlayerFromVehicle(playerid); return 1; } if(pTemp[playerid][pMechID] == vehicleid) { } else { SetTimerEx("@CheckRentCar",8000,0,"i",playerid); format(stringer, 512, "{ffffff}Вы хотите арендовать данный транспорт?\n\nСтоимость: {33CCFF}%d рублей", GLS[15]); ShowPlayerDialog(playerid, dJob+15, DIALOG_STYLE_MSGBOX, "{027BEB}Аренда", stringer, "Арендовать", "Отмена"); } } if(vehicleid >= aTaxi[0] && vehicleid <= aTaxi[1]) { if(pInfo[playerid][pJob] != JOB_TAXI) { SendClientMessage(playerid, COLOR_GREY, "Вы не таксист!"); RemovePlayerFromVehicle(playerid); return 1; } if(GetCash(playerid) < 200) { SendClientMessage(playerid, COLOR_GREY, "Вам нужно 200 рублей чтобы арендовать это такси"); RemovePlayerFromVehicle(playerid); return 1; } if(pTemp[playerid][pTaxiID] == vehicleid) { } else { SetTimerEx("@CheckRentCar",8000,0,"i",playerid); format(stringer, 512, "{ffffff}Вы хотите арендовать данное такси?\nСтоимость аренды: {63BD4E}%d рублей", GLS[15]); ShowPlayerDialog(playerid, dJob+14, DIALOG_STYLE_MSGBOX, "{027BEB}Аренда такси", stringer, "Арендовать", "Отмена"); } } new arend_id = INVALID_PLAYER_ID; if(GetArendCarID(vehicleid, arend_id) != (-1)) { if(arend_id == INVALID_PLAYER_ID || !IsPlayerConnected(arend_id)) { new rc = GetArendCarID(vehicleid); new cost; switch(GetVehicleModel(rc)) { case 454: cost= 10000; case 484: cost = 12000; case 558: cost = 9000; case 541: cost = 22000; case 560: cost = 13000; case 409: cost = 10000; case 462: cost = 250; case 469: cost = 15000; case 487: cost = 20000; default: cost = GLS[14]; } format(string,sizeof(string), "{FFFFFF}Транспорт для аренды!\n\n- Модель: {63BD4E}%s{FFFFFF}\n- Стоимость: {63BD4E}%d{FFFFFF}\n\n{afafaf}Чтобы арендовать, нажмите `Аренда`", VehStats[model-400][vName], cost); ShowPlayerDialog(playerid, dJob+5, 0, "{027BEB}Аренда", string, "Аренда", "Отмена"); return 1; } else if(arend_id != playerid) { SendClientMessage(playerid, COLOR_GREY, "Этот транспорт уже арендуют"); RemovePlayerFromVehicle(playerid); return 1; } } if(vehicleid >= aAutoschool[0] && vehicleid <= aAutoschool[3]) { if((vehicleid >= aAutoschool[0] && vehicleid <= aAutoschool[3]) && GetPVarInt(playerid, "DrivingTest")) { if(UseGPS[playerid]) { DisablePlayerRaceCheckpoint(playerid); UseGPS[playerid] = false; for(new i; i < 3; i++) TextDrawHideForPlayer(playerid, GPSEnabled[i]); PlayerTextDrawHide(playerid,TD_GPS[playerid]); DeletePVar(playerid,"GPS_X"); DeletePVar(playerid,"GPS_Y"); DeletePVar(playerid,"GPS_Z"); } SendClientMessage(playerid, COLOR_BLUE, "Следуйте по чекпоинтам, соблюдая правила дорожного движения"); ShowPlayerDialog(playerid, dNull, 0, " ", "\n\n{ffffff}Ваша задача следовать по чекпоинтам. Вперед\n\n", "Закрыть", ""); new i = pPressed[playerid]; SetPlayerRaceCheckpoint(playerid,0,DrivingTest[i][0],DrivingTest[i][1],DrivingTest[i][2],DrivingTest[i][3],DrivingTest[i][4],DrivingTest[i][5],2.0); return 1; } /*else if((vehicleid >= aAutoschool[7] && vehicleid <= aAutoschool[8]) && GetPVarInt(playerid, "FlyTest")) { if(UseGPS[playerid]) { DisablePlayerRaceCheckpoint(playerid); UseGPS[playerid] = false; for(new i; i < 4; i++) TextDrawHideForPlayer(playerid, GPSEnabled[i]); } SendClientMessage(playerid, COLOR_BLUE, "Следуйте по чекпоинтам, соблюдая правила полёта"); ShowPlayerDialog(playerid, dNull, 0, " ", "\n\n{ffffff}Ваша задача следовать по чекпоинтам. Вперед\n\n", "Закрыть", ""); new i = pPressed[playerid]; SetPlayerRaceCheckpoint(playerid,3,FlyTest[i][0],FlyTest[i][1],FlyTest[i][2],FlyTest[i][3],FlyTest[i][4],FlyTest[i][5],5.0); return 1; } else if((vehicleid >= aAutoschool[10] && vehicleid <= aAutoschool[13]) && GetPVarInt(playerid, "WaterTest")) { if(UseGPS[playerid]) { DisablePlayerRaceCheckpoint(playerid); UseGPS[playerid] = false; for(new i; i < 4; i++) TextDrawHideForPlayer(playerid, GPSEnabled[i]); } SendClientMessage(playerid, COLOR_BLUE, "Следуйте по чекпоинтам, соблюдая правила движения"); ShowPlayerDialog(playerid, dNull, 0, " ", "\n\n{ffffff}Ваша задача следовать по чекпоинтам. Вперед\n\n", "Закрыть", ""); new i = pPressed[playerid]; if(!GetPVarInt(playerid, "WaterTestTimeOn")) SetPVarInt(playerid, "WaterTestTimeOn", 1); SetPlayerRaceCheckpoint(playerid,0,WaterTest[i][0],WaterTest[i][1],WaterTest[i][2],WaterTest[i][3],WaterTest[i][4],WaterTest[i][5],5.0); return 1; }*/ if(pInfo[playerid][pMember] == TEAM_AUTOSCHOOL || (GetPVarInt(playerid, "DrivingTest") || GetPVarInt(playerid, "FlyTest") || GetPVarInt(playerid, "WaterTest"))) { } else { SendClientMessage(playerid, COLOR_GREY, "Транспорт доступен только {027BEB}экзаменуемым {AFAFAF}или {027BEB}лицензерам{AFAFAF}!"); ExitCar(playerid); return 1; } } if(GetEngineStat(vehicleid) == 0 && !IsAVel(vehicleid) && IsAPlane(vehicleid) && !InShop[playerid]) { SendClientMessage(playerid, COLOR_RED, "[Подсказка] {FFFFFF}Завести/заглушить двигатель: {027BEB}/start (/st)"); } if(!IsAVel(vehicleid) && !IsABoat(vehicleid) && !IsAPlane(vehicleid) && !InShop[playerid]) { if(GetEngineStatus(carid) <= 0) { SendClientMessage(playerid,COLOR_GREEN,"[Информация] {FFFFFF}Если на этом авто установлен Perfomence Tuning. Нажмите {027BEB}'H'{FFFFFF}, чтобы активировать его."); SendClientMessage(playerid, COLOR_RED, "[Подсказка] {FFFFFF}Для того чтобы завести/заглушить двигатель автомобиля используйте клавишу {027BEB}L.CTRL"); SendClientMessage(playerid, COLOR_RED, "[Подсказка] {FFFFFF}Для того чтобы включить поворотники используйте клавиши {027BEB}NUM 4 и NUM 6{FFFFFF}. Аварийный сигнал: {027BEB}NUM 8"); if(!GetPVarInt(playerid, "BeltStatus")) SendClientMessage(playerid, COLOR_RED, "[Подсказка] {FFFFFF}Чтобы пристегнуть ремень безопасности или надеть шлем: {027BEB}NUM 2"); } } if(gVehicleGun[vehicleid][vGunLoading] || gVehicleGun[vehicleid][vGunUnloading]) { ShowPlayerDialog(playerid, dStopLoad, DIALOG_STYLE_MSGBOX, " ", "\n\n{FFFFFF}Вы хотите прекратить загрузку / разгрузку {027BEB}боеприпасов{FFFFFF}?\n\n", "Да", "Нет"); } if(gVehicleMed[vehicleid][vMedLoading] || gVehicleMed[vehicleid][vMedUnloading]) { ShowPlayerDialog(playerid, dMedStopLoad, DIALOG_STYLE_MSGBOX, " ", "\n\n{FFFFFF}Вы хотите прекратить загрузку / разгрузку {027BEB}медикаментов{FFFFFF}?\n\n", "Да", "Нет"); } if((newstate == 2 && oldstate == 3) || (newstate == 3 && oldstate == 2) || (newstate == 2 && oldstate == 2)) { SetPVarInt(playerid, "AC124", GetPVarInt(playerid,"AC124") + 1); if(GetPVarInt(playerid,"AC124") >= 3) { SetVehicleToRespawn(vehicleid); ToCheat(playerid, 115); } return 1; } if(vehicleid == TruckerCar[playerid])//дальнобойщик { if(GetPVarInt(playerid, "TruckerJob") == 1) { if(GetPVarInt(playerid, "TruckerJob") == 1) { SetPlayerCheckpoint(playerid, 2738.4316,-2273.2146,17.9269,5.0); } else if(GetPVarInt(playerid, "TruckerJob") == 2) { SetPlayerCheckpoint(playerid, 1760.3599,2285.4844,15.8538,5.0); } if(GetPVarInt(playerid, "TruckerJobFuel") == 1) { Fuel[GetPlayerVehicleID(playerid)] = 80; } DeletePVar(playerid, "TruckerJobTime"); DeletePVar(playerid, "TruckerJobTimeGoToCar"); DeletePVar(playerid, "TruckerJobFuel"); SendClientMessage(playerid, COLOR_BLUE, "Вы взяли грузовик, отправляйтесь на загрузку."); return 1; } } } } if(newstate == PLAYER_STATE_PASSENGER) { vehicleid = GetPVarInt(playerid,"VehicleEnters"); foreach(new i : Player) { if(!gPlayerLogged[i]) continue; if(IsPlayerInVehicle(i, vehicleid) && GetPlayerState(i) == 2) { if(GetPVarInt(i, "PriceTaxi") > 0) { if(GetCash(playerid) < GetPVarInt(i, "PriceTaxi")) { SendClientMessage(playerid, COLOR_RED,">>>>{FFFFFF} - У вас недостаточно денег. Вы можете пополнить свой баланс [/donate]"); RemovePlayerFromVehicle(playerid); } else { GiveMoney(playerid,-GetPVarInt(i, "PriceTaxi")); if(doubling_salary) pInfo[i][pPayCheck] += GetPVarInt(i, "PriceTaxi")*2; else pInfo[i][pPayCheck] += GetPVarInt(i, "PriceTaxi"); SetPVarInt(playerid, "TimeTaxi", 30); SetPVarInt(playerid, "TaxiPrice",GetPVarInt(i, "PriceTaxi")); SetPVarInt(playerid, "PlayerTaxi", i); if(doubling_salary) format(string, sizeof(string), "~b~+%i", GetPVarInt(i, "PriceTaxi")*2); else format(string, sizeof(string), "~b~+%i", GetPVarInt(i, "PriceTaxi")); GameTextForPlayer(i, string, 1000, 1); SetPVarInt(i, "TaxiMoney", GetPVarInt(i, "TaxiMoney") + GetPVarInt(i, "PriceTaxi")); } } } } } if(newstate == PLAYER_STATE_SPECTATING) { if(!gPlayerLogged[playerid] || !gPlayerSpawned[playerid] || pInfo[playerid][Spectating][0] != INVALID_PLAYER_ID) return 1; if(!pInfo[playerid][pAdmin] || !gAdminLogged[playerid]) return ToCheat(playerid, 1701); } if(oldstate == PLAYER_STATE_DRIVER) { vehicleid = GetPVarInt(playerid,"VehicleEnters"); model = GetVehicleModel(vehicleid); if(pTemp[playerid][pCarInfoTimer] != 0) { HideSpeedometer(playerid); KillTimer(pTemp[playerid][pCarInfoTimer]); pTemp[playerid][pCarInfoTimer] = 0; } if(model>=400) { @UpdateVehiclePos(playerid, vehicleid, 0); VehicleInfo[vehicleid][vDriver] = INVALID_PLAYER_ID; SetPVarInt(playerid, "lastveh", vehicleid); } } if(newstate == PLAYER_STATE_DRIVER) { // new vehicleid = GetPlayerVehicleID(playerid); // new model = GetVehicleModel(vehicleid); switch(model) { case 481, 509, 510 : { new _st, _objective; GetVehicleParamsEx(vehicleid, _st, _st, _st, _st, _st, _st, _objective); SetVehicleParamsEx(vehicleid, 1, 0, 0, 0, 0, 0, _objective); } } } return 1; } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
16Shadows 101 Опубликовано 17 марта, 2019 (изменено) У Вас сама команда не работает или только нажатие CTRL? Изменено 17 марта, 2019 пользователем 16Shadows Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
EgorTresh 0 Опубликовано 17 марта, 2019 1 час назад, 16Shadows сказал: У Вас сама команда не работает или только нажатие CTRL? И то и то Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
16Shadows 101 Опубликовано 22 марта, 2019 CMD:engine(playerid) { SendClientMessage(playerid, -1, "init"); if(GetPlayerState(playerid) != 2) return false; SendClientMessage(playerid, -1, "1"); if(engines[playerid]>gettime())return SendClientMessage(playerid,COLOR_GREY,"Нельзя так часто заводить двигатель"); SendClientMessage(playerid, -1, "2"); new carid = GetPlayerVehicleID(playerid), vehicleid = 0; if(IsAVel(carid)) return false; SendClientMessage(playerid, -1, "3"); if(GetEngineStatus(carid) < 1) { SendClientMessage(playerid, -1, "3.1"); new arend_id = INVALID_PLAYER_ID; if(GetArendCarID(vehicleid, arend_id) != (-1)) { SendClientMessage(playerid, -1, "4"); new rc = GetArendCarID(vehicleid); if(ArendInfo[rc][aPlayerID] != playerid) return 1; } SendClientMessage(playerid, -1, "5"); if(Fuel[carid] > 0.0) { SendClientMessage(playerid, -1, "6"); if(IsASellCar(carid))return 1; SendClientMessage(playerid, -1, "7"); if(!IsAOwnableCar(carid) || CarInfo[GetVehicleID(carid)][cKeyIN]) { SendClientMessage(playerid, -1, "8"); new Float:Health, string[50]; GetVehicleHealth(carid, Health); if(Health > 1000) Health = 1000.0; else if(Health < 400) return SendClientMessage(playerid, COLOR_GREY, "Вы не можете завести двигатель. Для его починки вызовите механика"); SendClientMessage(playerid, -1, "9"); new UNEngine = floatround(2000.0 - Health); if(UNEngine < 0) UNEngine = 0; else if(UNEngine > 2000) UNEngine = 2000; SetTimerEx("EngineVehicle", UNEngine, false, "ii", playerid, carid); format(string, sizeof(string), " %s пытается завести двигатель", GetName(playerid)); ProxDetector(25.0, playerid, string, COLOR_PURPLE); engines[playerid]=gettime()+4; } else return SendClientMessage(playerid,COLOR_GREY,"Ключи не вставлены"); } else return GameTextForPlayer(playerid, "~r~NO FUEL", 2000, 1); } else { SendClientMessage(playerid, -1, "3.2"); new string[70]; SetEngineStatus(carid,false, playerid); format(string,sizeof(string)," %s заглушил(а) двигатель",GetName(playerid)); ProxDetector(25.0,playerid,string,COLOR_PURPLE); //SpeedOFF(playerid, carid, 2); } return true; } Замените команду на такую, запустите её и скажите, что последним выдаёт в чат. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты