Перейти к содержанию
Авторизация  
NOBOOK

Ошибка с арендой транспорта

Рекомендуемые сообщения

NOBOOK

Здравствуйте. Не могу понять, в чем проблема? При аренде авто все хорошо. Но когда к примеру я пишу /unrent, и пытаюсь арендовать что-то другое, то пишет "Вы уже арендуете транспорт", а когда прописываю еще раз /unrent, то все нормально.. могу арендовать транспорт. Если не трудно, то посмотрите пожалуйста код

			if(!response) return RemovePlayerFromVehicle(playerid);
			new arid = GetArendCarID(GetPlayerVehicleID(playerid));
			if(arid != -1)
			{
				if(GetPVarInt(playerid, "arendkey") == -1)
				{
					if(ArendInfo[arid][aPlayerID] == INVALID_PLAYER_ID || !IsPlayerConnected(ArendInfo[arid][aPlayerID]))
					{
						if(GetMoney(playerid) >= ArendInfo[arid][aCost])
						{
							SetPVarInt(playerid, "arendkey", arid);
							GiveMoney(playerid,-ArendInfo[arid][aCost], "Аренда т/с");
							ArendInfo[arid][aPlayerID] = playerid;
							SendClientMessage(playerid, COLOR_FADE1, "Вы успешно арендовали этот транспорт");
							ShowPlayerDialogEx(playerid, 0, 0, "{4582A1}>> Вы успешно арендовали этот транспорт", "{FFFFFF}Список доступных команд:\n\n{46ca00}/lock 2{FFFFFF} - закрыть/открыть арендованный транспорт\n{46ca00}/unrent{FFFFFF} - отказаться от аренды\n\n{afafaf}При отдалении от ТС на 2км контракт автоматически расторгается", "Закрыть", "");
						}
						else
						{
							SendClientMessage(playerid, COLOR_FADE1, "У вас не хватает денег");
							RemovePlayerFromVehicle(playerid);
						}
					}
					else
					{
						SendClientMessage(playerid, COLOR_FADE1, "Этот транспорт уже арендуют");
						RemovePlayerFromVehicle(playerid);
					}
				}
				else
				{
					SendClientMessage(playerid, COLOR_FADE1, "Вы уже арендуете транспорт.");
					RemovePlayerFromVehicle(playerid);
				}
			}
			return 1;
		}
cmd:unrent(playerid)
{
	if(GetPVarInt(playerid, "arendkey") == -1) return SendClientMessage(playerid, COLOR_FADE1, "Вы не арендуете транспорт.");
	new rc = GetPVarInt(playerid, "arendkey");
	if(ArendInfo[rc][aPlayerID] != playerid)
	{
		SendClientMessage(playerid, COLOR_FADE1, "Вы не арендуете транспорт.");
		SetPVarInt(playerid, "arendkey", -1);
		return 1;
	}
	ShowPlayerDialogEx(playerid, D_CANCELRENT, 0, "{4582A1}>> Отмена аренды", "{FFFFFF}Вы действительно хотите отменить аренду транспорта?\nДальнейшее его использование станет не доступным,\nдо нового заключения договора на аренду транспорта.", "Принять", "Отмена");
	return 1;
}
		if(GetPVarInt(playerid, "arendkey") == -1) return SendErr(playerid, "Вы не арендуете транспорт");
				new rc = GetPVarInt(playerid, "arendkey");
				if(ArendInfo[rc][aPlayerID] != playerid)
    {
                                        SendErr(playerid, "Вы не арендуете транспорт");
					SetPVarInt(playerid, "arendkey", -1);
					return 1;
				}


{
			if(!response) return 1;
			SendClientMessage(playerid, COLOR_FADE1, "Вы отказались от аренды транспорта");
			new rc = GetPVarInt(playerid, "arendkey");
			ArendInfo[rc][aPlayerID] = INVALID_PLAYER_ID;
			AC_SetVehicleToRespawn(ArendInfo[rc][aID]);
			CarDoorsEx(ArendInfo[rc][aID], 0);
		}
Изменено пользователем Nikita870

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NOBOOK

Прошу хотя бы даже не исправить, а дать намек в какой строке ошибка) дальше сам разберусь. Прошу уделить время моей проблеме :). Если еще что нибудь нужно будет, то обязательно предоставлю

Изменено пользователем Nikita870

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
failed

Код ошибки в студию!

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NOBOOK

@failed, Без понятия в какой строке ошибка, я сам прошу помочь мне ее найти. Уже пол дня на это убил...  (Код скинул)

Изменено пользователем Nikita870

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NOBOOK

up

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NOBOOK

Помогите кто нибудь, буду благодарен... Никто не понимает как исправить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NOBOOK

up

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
klukwa

плохо скинул коды, ничего не понятно. возможно ошибка тут

CarDoorsEx(ArendInfo[rc][aID], 0);

попробуй заменить 0 на единицу, если не получится, пиши мне в ВК

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NOBOOK

UP

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
failed

@Nikita870, скомпилируй и скопируй то что там написано!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
16Shadows

У вас при проверке на наличие арендованной машины проверяется PVar "arendkey", которому присваивается нужное значение -1 только в команде. Вам нужно присваивать ему значение -1 и в диалоге.

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.