Aleksandr_Fedosov 87 Опубликовано 19 ноября, 2015 Доброго времени суток.Уважаемые форумчане мне нужна ваша помощь.Помогите решить проблему.Когда таксист уходит с /fare текст остается.Заранее спасибо. if(strcmp(cmd,"/fare",true)==0) { if(IsPlayerConnected(playerid)) { if(PlayerInfo[playerid][pMember] == 9||PlayerInfo[playerid][pLeader] == 9|| PlayerInfo[playerid][pMember] == 17||PlayerInfo[playerid][pLeader] == 17|| PlayerInfo[playerid][pJob] == 14) { if(TransportDuty[playerid] > 0) { if(TransportDuty[playerid] == 1) { TaxiDrivers -= 1; } else if(TransportDuty[playerid] == 2) { BusDrivers -= 1; } new Text3D:vehicle3Dtext; TransportDuty[playerid] = 0; format(string, sizeof(string), "Вы закончили дежурство и заработали $%d.", TransportMoney[playerid]); SCM(playerid, COLOR_LIGHTBLUE, string); Delete3DTextLabel(Text3D:vehicle3Dtext); GiveMoneyAntiCheat(playerid, TransportMoney[playerid]); ConsumingMoney[playerid] = 1; TransportValue[playerid] = 0; TransportMoney[playerid] = 0; return 1; } new Veh = GetPlayerVehicleID(playerid); new model = GetVehicleModel(Veh); if(model == 420 || model == 438 || model == 466 || model == 551 || model == 426) { if(GetPlayerState(playerid) == 2) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SCM(playerid, COLOR_WHITE, "*Подсказка: /fare [price]"); return 1; } moneys = strval(tmp); if(moneys < 15 || moneys > 150) { SCM(playerid, COLOR_GREY, " Невозможно меньше 15 и больше 150 !"); return 1; } TaxiDrivers += 1; TransportDuty[playerid] = 1; TransportValue[playerid] = moneys; GetPlayerName(playerid,sendername,sizeof(sendername)); new vehicle_id, Text3D:vehicle3Dtext; new currentveh; currentveh = GetPlayerVehicleID(playerid); new Float:vehx, Float:vehy, Float:vehz; GetVehiclePos(currentveh, vehx, vehy, vehz); format(string,sizeof(string),"<< Тариф: %d$ >>",TransportValue[playerid]); vehicle3Dtext = Create3DTextLabel(string,COLOR_YELLOW3d,9999.0, 9999.0, 9999.0, 30.0, 0, 1); vehicle_id = currentveh; Attach3DTextLabelToVehicle( vehicle3Dtext, vehicle_id, 0.0, 0.0, 1.5); } else { SCM(playerid, COLOR_GREY, "Вы не водитель !"); return 1; } } else if(model == 418 || model == 414) { if(GetPlayerState(playerid) == 2) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SCM(playerid, COLOR_WHITE, "*Подсказка: /fare [price]"); return 1; } moneys = strval(tmp); if(moneys < 1 || moneys > 299) { SCM(playerid, COLOR_GREY, " Невозможно меньше 1 и больше 299 !"); return 1; } BusDrivers += 1; TransportDuty[playerid] = 2; TransportValue[playerid]= moneys; GetPlayerName(playerid,sendername,sizeof(sendername)); format(string, sizeof(string), "Bus Driver %s is On Duty, fare: $%d.", sendername, TransportValue[playerid]); OOCNews(TEAM_GROVE_COLOR,string); } else { SCM(playerid, COLOR_GREY, " Вы не Водитель !"); return 1; } } else { SCM(playerid, COLOR_GREY, "Вы не в такси/автобусе!"); } } else { SCM(playerid,COLOR_GREY," Вы не водитель такси/автобуса !"); SCM(playerid, COLOR_GREEN, "Тарифный план таксиста "); return 1; } } return 1; } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mark' 4 Опубликовано 19 ноября, 2015 (изменено) ко всем переменным new Text3D:vehicle3Dtext[MAX_VEHICLES]; команда: if(strcmp(cmd,"/fare",true)==0) { if(!IsPlayerConnected(playerid)) return 1; if(PlayerInfo[playerid][pMember] == 9||PlayerInfo[playerid][pLeader] == 9|| PlayerInfo[playerid][pMember] == 17||PlayerInfo[playerid][pLeader] == 17|| PlayerInfo[playerid][pJob] == 14) { if(TransportDuty[playerid] > 0) { if(GetPlayerState(playerid) == 2) { if(TransportDuty[playerid] == 1) TaxiDrivers -= 1; else if(TransportDuty[playerid] == 2) BusDrivers -= 1; TransportDuty[playerid] = 0; format(string, sizeof(string), "Вы закончили дежурство и заработали $%d.", TransportMoney[playerid]); SCM(playerid, COLOR_LIGHTBLUE, string); Delete3DTextLabel(Text3D:vehicle3Dtext[GetPlayerVehicleID(playerid)]); GiveMoneyAntiCheat(playerid, TransportMoney[playerid]); ConsumingMoney[playerid] = 1; TransportValue[playerid] = 0; TransportMoney[playerid] = 0; return 1; } else { SCM(playerid, COLOR_GREY, "Вы не водитель !"); return 1; } } new Veh = GetPlayerVehicleID(playerid); new model = GetVehicleModel(Veh); if(model == 420 || model == 438 || model == 466 || model == 551 || model == 426) { if(GetPlayerState(playerid) == 2) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SCM(playerid, COLOR_WHITE, "*Подсказка: /fare [price]"); return 1; } moneys = strval(tmp); if(moneys < 15 || moneys > 150) { SCM(playerid, COLOR_GREY, " Невозможно меньше 15 и больше 150 !"); return 1; } TaxiDrivers += 1; TransportDuty[playerid] = 1; TransportValue[playerid] = moneys; GetPlayerName(playerid,sendername,sizeof(sendername)); new Float:vehx, Float:vehy, Float:vehz; GetVehiclePos(GetPlayerVehicleID(playerid), vehx, vehy, vehz); format(string,sizeof(string),"<< Тариф: %d$ >>",TransportValue[playerid]); vehicle3Dtext[Veh] = Create3DTextLabel(string,COLOR_YELLOW3d,9999.0, 9999.0, 9999.0, 30.0, 0, 1); Attach3DTextLabelToVehicle(vehicle3Dtext[Veh], GetPlayerVehicleID(playerid), 0.0, 0.0, 1.5); } else { SCM(playerid, COLOR_GREY, "Вы не водитель !"); return 1; } } else if(model == 418 || model == 414) { if(GetPlayerState(playerid) == 2) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SCM(playerid, COLOR_WHITE, "*Подсказка: /fare [price]"); return 1; } moneys = strval(tmp); if(moneys < 1 || moneys > 299) { SCM(playerid, COLOR_GREY, " Невозможно меньше 1 и больше 299 !"); return 1; } BusDrivers += 1; TransportDuty[playerid] = 2; TransportValue[playerid]= moneys; GetPlayerName(playerid,sendername,sizeof(sendername)); format(string, sizeof(string), "Bus Driver %s is On Duty, fare: $%d.", sendername, TransportValue[playerid]); OOCNews(TEAM_GROVE_COLOR,string); } else { SCM(playerid, COLOR_GREY, " Вы не Водитель !"); return 1; } } else SCM(playerid, COLOR_GREY, "Вы не в такси/автобусе!"); } else { SCM(playerid,COLOR_GREY," Вы не водитель такси/автобуса !"); SCM(playerid, COLOR_GREEN, "Тарифный план таксиста "); return 1; } return 1; } Изменено 19 ноября, 2015 пользователем Mark' 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты