AlexPlay 2 Опубликовано 16 февраля, 2016 Ребят, помогите. Хочу сделать так что бы при починке авто выдавалась разная цена, а то не по РП, у меня команда /repair установлена только на 1 сумму. А я хочу, чтобы допустим, если дымок то починка будет стоить 170.000. Вот сама команда. //============================================================================== if(strcmp(cmd, "/repair", true) == 0) { if(IsPlayerConnected(playerid)) { if(!PlayerToPoint(50.0, playerid, 2151.7766,-1850.0043,18.8203)) if(!PlayerToPoint(50.0, playerid, 2948.6731,-715.0797,12.8098)) if(!PlayerToPoint(50.0, playerid, 715.7493,573.4566,12.5234)) if(!PlayerToPoint(50.0, playerid, -2216.2415,-1737.8108,9.7234)) if(!PlayerToPoint(50.0, playerid, -848.1907,1939.0267,45.8934)) { SendClientMessage(playerid, COLOR_GRAD1, "Вы не в автомастерской!"); return 1; } new summa; summa = 5000; if(PlayerInfo[playerid][pCash]<summa) { SendClientMessage(playerid, COLOR_GRAD1, "У вас недостаточно денег!Стоимость ремонта состовляет 5000 рублей"); return 1; } if(IsPlayerInAnyVehicle(playerid)) { tmp = strtok(cmdtext, idx); new carid = strval(tmp); if(!strlen(tmp)) carid = GetPlayerVehicleID(playerid); tmp = strtok(cmdtext, idx); new Float:heal = floatstr(tmp); if(!strlen(tmp)) heal = 1000.0; PlayerInfo[playerid][pCash]-=summa; SetVehicleHealth(carid, heal); RepairVehicle(carid); SendClientMessage(playerid, COLOR_YELLOW, "Вы починили свой автомобиль!"); SendClientMessage(playerid, COLOR_GREY,"Сумма починки составит: 5000 рублей."); } } return 1; } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Predator 428 Опубликовано 16 февраля, 2016 Проверку на состояние хпшек авто и результат if() { //действие } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Max_Eitzen 337 Опубликовано 17 февраля, 2016 Воспользуйтесь поиском, я уже давал ответ на этот вопрос. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
FanHamMеr 32 Опубликовано 17 февраля, 2016 (изменено) new Float:healthCar; GetVehicleHealth(carid, healthCar); if(healthCar > 650) { summa = 0; } else if(healthCar >= 650 && healthCar { summa = 150; } else if(healthCar >= 550 && healthCar { summa = 200; } else if(healthCar >= 390 && healthCar { summa = 350; } PlayerInfo[playerid][pCash] -= summa; Изменено 17 февраля, 2016 пользователем FanHamMеr Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Smolin 1,410 Опубликовано 17 февраля, 2016 @FanHamMеr, new Float:healthCar; GetVehicleHealth(carid, healthCar); switch(healthCar) { case 0..389: summa = 350; case 390..549: summa = 200; case 550..649: summa = 150; default: summa = 0; } PlayerInfo[playerid][pCash] -= summa; 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
FanHamMеr 32 Опубликовано 17 февраля, 2016 @Smolin, советую прочитать тему про переключатели. В данном случае, мой вариант будет быстрей обрабатываться. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты