Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Такси как на Fortune

Статус
В этой теме нельзя размещать новые ответы.

Sam_Fisher_Gta

Специалист
-Автор данной команды Crazy_Str.
-Вырезал я: из мода Fortune.
-Если захотите дать + до дайте их Crazy_Str.
-Я всего лишь вырезал команду.


Ко всем new:

PHP:
new TransportDuty[MAX_PLAYERS];
new TransportValue[MAX_PLAYERS];
new idtr[MAX_PLAYERS];
new summatr[MAX_PLAYERS];
Если у вас есть эти new то заменяйте

Заменяем свою команду на эту:

PHP:
if(strcmp(cmd,"/fare",true)==0)
	{
		new Veh = GetPlayerVehicleID(playerid);
		if(PlayerInfo[playerid][pJob] == 4)
		{
			if(TransportDuty[playerid] == 1) return SendClientMessage(playerid, COLOR_GRAD1, "Вы уже начали рабочий день");
			if(Veh >= taxicar[0] && Veh <= taxicar[1])
			{
				if(GetPlayerState(playerid) == 2)
				{
					tmp = strtok(cmdtext, idx);
					if(!strlen(tmp)) return SPD(playerid, 9398 , 1, "{ffcc00}Настройка счетчика", "{FFFFFF}Укажите тариф по которому будет работать Ваше такси\nЭта сумма будет сниматься с пассажира каждые 30 секунд поездки\nТарифная ставка может быть от 0 до 200$", "Ок", "Отмена");
					moneys = strval(tmp);
					if(moneys < 1 || moneys > 200) return SendClientMessage(playerid, COLOR_GREY, "Цена должна быть не меньше 1 и не больше 200!");
					TaxiDrivers += 1;
					TransportDuty[playerid] = 1;
					TransportValue[playerid] = moneys;
					new length = strlen(cmdtext);
					while ((idx < length) && (cmdtext[idx] <= ' '))
					{
						idx++;
					}
					new offset = idx;
					new result[10];
					while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
					{
						result[idx - offset] = cmdtext[idx];
						idx++;
					}
					result[idx - offset] = EOS;
					GetPlayerName(playerid,sendername,sizeof(sendername));
					format(string, sizeof(string), "{007fff}%s\n{efd334}Тариф: %d вирт",(result), TransportValue[playerid]);
					taxi3d[Veh] = Create3DTextLabel(string,COLOR_YELLOW3d,9999.0, 9999.0, 9999.0, 30.0, 0, 1);
					Attach3DTextLabelToVehicle(taxi3d[Veh], Veh, 0, 0, 1.5);
					format(string, sizeof(string), "%s начал(а) рабочий день. Тариф: %d вирт", sendername, TransportValue[playerid]);
					ProxDetector(20.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
					SendClientMessage(playerid, 0x6495EDFF, "Вы начали рабочий день");
					OnPlayerUpdate(playerid);
				}
				else
				{
					SendClientMessage(playerid, COLOR_GRAD1, "Вы должны быть на водительском месте!");
					return true;
				}
			}
			else
			{
				SendClientMessage(playerid, COLOR_GRAD1, "Вы не в служебной машине!");
			}
		}
		else
		{
			SendClientMessage(playerid, COLOR_GREY, "Вы не таксист!");
			return true;
		}
		return true;
	}
Ко всем диалогам:

PHP:
case 9398:
		{
			if(response)
			{
				if(!strlen(inputtext)) return SPD(playerid, 9398, 1, "{ffcc00}Настройка счетчика", "{FFFFFF}Укажите тариф по которому будет работать Ваше такси\nЭта сумма будет сниматься с пассажира каждые 30 секунд поездки\nТарифная ставка может быть от 0 до 200$", "Далее", "Отмена");
				idtr[playerid] = strval(inputtext);
				SPD(playerid, 9399, 1,"{ffcc00}Название такси","{FFFFFF}Придумайте название для вашего такси\nМаксимальная длинна 15 символов\n\nЕсли вы не хотите как то называться\n нажмите кнопку ''Пропустить''","Ок","Пропустить");
			}
		}
	case 9399:
		{
			if(response)
			{
				if(!strlen(inputtext)) return SPD(playerid, 9399 , 1, "{ffcc00}Название такси","{FFFFFF}Придумайте название для вашего такси\nМаксимальная длинна 15 символов\n\nЕсли вы не хотите как то называться\n нажмите кнопку ''Пропустить''","Ок","Пропустить");
				summatr[playerid]= strval(inputtext);
				format(string,sizeof(string),"/fare %d %s",idtr[playerid],(inputtext));
				OnPlayerCommandText(playerid,string);
			}
		}
Замените или добавьте к public OnPlayerStateChange(playerid, newstate, oldstate)

PHP:
if(newstate == PLAYER_STATE_PASSENGER)
	{
		new name[24];
		GetPlayerName(playerid, name, sizeof(name));
		new vehicleid = GetPlayerVehicleID(playerid);
		for(new i=0;i<MaxPlayers;i++)
		{
			if(IsPlayerConnected(i))
			{
				if(IsPlayerInVehicle(i, vehicleid) && GetPlayerState(i) == 2 && TransportDuty[i] > 0)
				{
					if(PlayerInfo[playerid][pCash] < TransportValue[i])
					{
						format(string, sizeof(string), "Вам нужно %d вирт, чтобы сесть в машину.", TransportValue[i]);
						SendClientMessage(playerid, 0x6495EDFF, string);
						RemovePlayerFromVehicle(playerid);
						return true;
					}
					if(TransportDuty[i] == 1)
					{
						if(PlayerInfo[playerid][pLevel] > 1 && PlayerInfo[playerid][pCash] < TransportValue[i])
						{
							format(string, sizeof(string), "Вам нужно %d$, чтобы сесть в такси.", TransportValue[i]);
							SendClientMessage(playerid, COLOR_GREEN, string);
							RemovePlayerFromVehicle(playerid);
						}
						if(PlayerInfo[playerid][pLevel] == 1)
						{
							format(string, sizeof(string), "Для Вас проезд бесплатный");
							SendClientMessage(playerid, COLOR_BLUE, string);
							format(string, sizeof(string), "Отвезите его на работу шахтера или на работу грузчика, и получите премию", name);
							SendClientMessage(i, COLOR_GREEN, string);
							SetPlayerCheckpoint(i,2223.4639,-2219.3965,13.5469,6.0);
							CP[i] = 500;
							return true;
						}
						format(string, sizeof(string), "Вы заплатили таксисту %d вирт", TransportValue[i]);
						SendClientMessage(playerid, 0x6495EDFF, string);
						format(string, sizeof(string), "Пасcажир %s сел в ваше такси", name);
						SendClientMessage(i, 0x6495EDFF, string);
						PlayerInfo[playerid][pCash] -=  TransportValue[i];
						PlayerInfo[i][pCash] +=  TransportValue[i];
						return true;
					}
				}
			}
		}
	}
	if(newstate == PLAYER_STATE_ONFOOT)
	{
		DeletePVar(playerid,"NoAB");
		new Veh = GetPlayerVehicleID(playerid);
		if(TransportDuty[playerid] == 1)
		{
			TaxiDrivers -= 1;
			Delete3DTextLabel(taxi3d[Veh]);
		}
		TelePos[playerid][0] = 0.0;
		TelePos[playerid][1] = 0.0;
	}
Будут ошибки пишите
Если я что то забыл добавить то лучше просто скажите мне)
 
Последнее редактирование модератором:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу