SCRIPTMAN 358 Опубликовано 2 января, 2017 Привет! Парни расскажите, как сделать. Например жмёшь CTRL. Тебе пишет: Имя_Фамилия попытался завести авто (неудачно) - авто не завелось, Имя_Фамилия попытался завести авто (удачно) - авто завелось. Через рандом. Как это, объясните пожалуйста. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
FLASHup 59 Опубликовано 2 января, 2017 (изменено) ,это ? { if(IsPlayerInVehicle(playerid, carid)) { new sendername[MAX_PLAYER_NAME]; new string[64]; GetPlayerName(playerid, sendername, sizeof(sendername)); new chance = random(10); if(chance >= 0 && chance <= 8) { Engine[carid] = 1; GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_ON,VEHICLE_PARAMS_OFF,alarm,doors,bonnet,boot,objective); SendClientMessage(playerid, COLOR_GREY, "Вы успешно запустили двигатель."); format(string, sizeof(string), "* %s вставил ключ в замок зажигания и пытается завести двигатель.", sendername); ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); return 1; } else { SendClientMessage(playerid, COLOR_GREY, "Вам не удалось запустить двигатель."); } } } @FLASHup, if(engine1[vehicleid] == 2) { if(vhealth >= 410) { if(rand > 10) { engine1[vehicleid] = 1; GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective); SetTimerEx("DamagedEngine", 1000, 1, "i", playerid); GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "Двигатель завелся (( %s ))", sendername); ProxDetector(10.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); } else { engine1[vehicleid] = 0; GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective); SendClientMessage(playerid, COLOR_RED, "Двигатель не заводится, попробуйте ещё раз"); GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "Двигатель не завелся (( %s ))", sendername); ProxDetector(10.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); } } else if(vhealth <= 400) { engine1[vehicleid] = 0; GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective); SendClientMessage(playerid, COLOR_RED, "Двигатель не заводится, попробуйте ещё раз"); GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "Двигатель не завелся (( %s ))", sendername); ProxDetector(10.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); } } } return 1; Изменено 2 января, 2017 пользователем FLASHup Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SCRIPTMAN 358 Опубликовано 2 января, 2017 @FLASHup,Похоже, но. Смотрите. Нажимает CTRL. В чат пишет: "Nick_Name заводит двигатель - (удачно)" - значит завёлся двигатель. А если пишет: "Nick_Name заводит двигатель - (неудачно)" - значит не завёлся двигатель. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
FLASHup 59 Опубликовано 2 января, 2017 ,ща попробую так сделать,если норм то скину Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
EgasVegas 841 Опубликовано 2 января, 2017 Почему бы не использовать команду такого типа? if(strcmp(cmd, "/try", true) == 0) //тут пиши команду свою и делай активацию на клавишу { new randa = random(2)+1; { if(randa == 1) format(string, sizeof(string), "*** %s пытается %s и у него получается", sendername, result); //тут на своё меняешь. else format(string, sizeof(string), "*** %s пытается %s, но у него не получается", sendername, result); } return 1; //тут попробуешь поставить return, если ошибка в этой строке будет просто пример. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 2 января, 2017 На вырезали, на вырезали.. Даже не указали на необходимый паблик и ид клавишы. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
EgasVegas 841 Опубликовано 2 января, 2017 , Кто хоть это не умеет делать? Если бы он спросил - ответили бы. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SCRIPTMAN 358 Опубликовано 2 января, 2017 7F8000Да, но как сделать чтобы если удачно - завелась, неудачно - не завелась. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
EgasVegas 841 Опубликовано 2 января, 2017 Ну функцию скажи по заводке двигателя у тебя в моде Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SCRIPTMAN 358 Опубликовано 2 января, 2017 if(vid > ALLCARS && vid <= ALLCARS+TOTALCARS)//Если в личном авто сидим { if(Player[playerid][pAdmin] < 4) { if(!strcmp(CarInfo[vid][cOwner], "None", true)) return SCM(playerid, COLOR_GRAD1, "Данный транспорт на продаже."); else { if(!GetPlayerCar(playerid)) return SCM(playerid, COLOR_GRAD1, "У Вас нет ключей от чужого транспорта."); else if(GetPlayerCar(playerid)) { if(Player[playerid][pVIP] == 0) { if(GetPlayerVehicleID(playerid) != GetPVarInt(playerid, "PlayerCar1")) return SCM(playerid, COLOR_GRAD1, "У вас нет ключей от чужого транспорта!"); } else { if(GetPlayerVehicleID(playerid) != GetPVarInt(playerid, "PlayerCar1")) return SCM(playerid, COLOR_GRAD1, "Вы не можете завести транспорт."); // GetPlayerVehicleID(playerid) != GetPVarInt(playerid, "PlayerCar2")) return SCM(playerid, COLOR_GRAD1, "У вас нет ключей от чужого транспорта!"); } // if(GetPlayerVehicleID(playerid) != GetPVarInt(playerid, "PlayerCar1") || GetPlayerVehicleID(playerid) != GetPVarInt(playerid, "PlayerCar2")) return SCM(playerid, COLOR_GRAD1, "У вас нет ключей от чужого транспорта!"); } } } } if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER && EngineCar[vid] == 0) { /*GetVehicleHealth(vid, CarHP); if(CarHP <= 350) { EngineCar[vid] = 0, GetVehicleParamsEx(vid,engine,liights,alarm,doors,bonnet,boot,objective), SetVehicleParamsEx(vid,0,liights,0,doors,bonnet,boot,objective), SCM(playerid, COLOR_LIGHTRED, "Ваш транспорт заглох. Вызовите механика или сходите на СТО за инструментами для починки."), TextDrawHealthUpdate(playerid); return true; }*/ if(BrokenCar[vid] != 0) return SCM(playerid, COLOR_LIGHTRED, "Машина сломана. Подойдите к капоту и напишите /autorepair, чтобы починить её."); if(GetPVarInt(playerid, "DBLOADING") == 1) return SCM(playerid, COLOR_GRAD1, "В данный момент идет загрузка товара."); EngineCar[vid] = 1; GetVehicleParamsEx(vid,engine,liights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(vid,1,liights,0,doors,bonnet,boot,objective); } else if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER && EngineCar[vid] == 1) { EngineCar[vid] = 0; GetVehicleParamsEx(vid,engine,liights,alarm,doors,bonnet,boot,objective); SetVehicleParamsEx(vid,0,liights,0,doors,bonnet,boot,objective); } return true; } Это для личного Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 2 января, 2017 @EgasVegas, Если даешь ответ по теме, то стоит давать качественный и развернутый ответ. А не вырезки быдлокода без пояснений. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты