Автор: Kurt.Cobain
Вообщем суть такова.
Прописываешь /truck - покупаешь автомобиль (если нету) потом если есть автомобиль то в /truck появляется строка "Взять автомобиль" т.е автомобиль ТП к вам и автоматически садитесь в него.
Есть мини информация о автомобиле, я сделал 5 ТС для покупки.
Ко всем new
Code: Select all
#define CAR_INFO 1488
new LichCar[MAX_VEHICLES];
new createdvehs;
new CarInfo[MAX_PLAYERS];
и в enum pInfo
Code: Select all
pCarc,
в OnPlayerConnect:
Code: Select all
PlayerInfo[playerid][pCarc] = 0;
Далее сделайте сохранение для pCarc
В OnPlayerCommandText:
Code: Select all
if(!strcmp(cmd, "/truck", true))
{
if(CarInfo[playerid] == 0 && PlayerInfo[playerid][pCarc] != 0)
{
SPD(playerid, CAR_INFO, DIALOG_STYLE_LIST,"Меню автомобиля", "Информация об автомобиле\nКупить автомобиль\nВзять автомобиль", "Далее","Отмена");
}
else
{
SPD(playerid, CAR_INFO, DIALOG_STYLE_LIST,"Меню автомобиля", "Информация об автомобиле\nКупить автомобиль", "Далее","Отмена");
}
return 1;
}
в OnDialogResponse:
Code: Select all
case CAR_INFO+1://КАР ИНФО
{
if(response)
{
if(strval(inputtext) < 1 || strval(inputtext) > 5) return SCM(playerid, -1, "Неверный номер.");
if(strval(inputtext) == 1)
{
if(PlayerInfo[playerid][pCash] < 10000) return SCM(playerid, -1,"У вас не достаточно денег");
PlayerInfo[playerid][pCarc] = 411;
SCM(playerid, -1,"Вы успешно приобрели {42aaff}INFERNUS{ffffff} за 10.000 рублей");
}
if(strval(inputtext) == 2)
{
if(PlayerInfo[playerid][pCash] < 20000) return SCM(playerid, -1,"У вас не достаточно денег");
PlayerInfo[playerid][pCarc] = 522;
SCM(playerid, -1,"Вы успешно приобрели {42aaff}NRG-500{ffffff} за 20.000 рублей");
}
if(strval(inputtext) == 3)
{
if(PlayerInfo[playerid][pCash] < 30000) return SCM(playerid, -1,"У вас не достаточно денег");
PlayerInfo[playerid][pCarc] = 521;
SCM(playerid, -1,"Вы успешно приобрели {42aaff}FCR-900{ffffff} за 30.000 рублей");
}
if(strval(inputtext) == 4)
{
if(PlayerInfo[playerid][pCash] < 40000) return SCM(playerid, -1,"У вас не достаточно денег");
PlayerInfo[playerid][pCarc] = 560;
SCM(playerid, -1,"Вы успешно приобрели {42aaff}SULTAN{ffffff} за 40.000 рублей");
}
if(strval(inputtext) == 5)
{
if(PlayerInfo[playerid][pCash] < 50000) return SCM(playerid, -1,"У вас не достаточно денег");
PlayerInfo[playerid][pCarc] = 477;
SCM(playerid, -1,"Вы успешно приобрели {42aaff}ZR-350{ffffff} за 50.000 рублей");
}
}
else return 1;
}
case CAR_INFO:
{
if(!response) return 1;
switch(listitem)
{
case 0:
{
if(PlayerInfo[playerid][pCarc] == 0) return SCM(playerid,-1, "У вас нет автомобиля");
new ttext[10];
switch(PlayerInfo[playerid][pCarc])
{
case 411: ttext = "10.000$";
case 522: ttext = "20.000$";
case 521: ttext = "30.000$";
case 560: ttext = "40.000$";
case 477: ttext = "50.000$";
}
new string[1044],text[256];
format(text,sizeof(text), "{42aaff}CТАТИСТИКА:\n\n"),strcat(string, text);
format(text,sizeof(text), "{ffffff}Номер модели авто: %d\n",PlayerInfo[playerid][pCarc]),strcat(string, text);
format(text,sizeof(text), "{ffffff}Гос. стоимость: %s ",ttext),strcat(string, text);
ShowPlayerDialog(playerid, 1488, DIALOG_STYLE_MSGBOX, "Информация",string, "Закрыть", "");
}
case 1:
{
new string[1044],text[256];
format(text,sizeof(text), "{ffffff}Для покупки нового автомобиля вам нужно\n"),strcat(string, text);
format(text,sizeof(text), "ввести номер присвоенный к данной модели транспорта\n\n"),strcat(string, text);
format(text,sizeof(text), "№ 1 - Infernus\t |\t{ff2900}10.000 рублей\n"),strcat(string, text);
format(text,sizeof(text), "{ffffff}№ 2 - NRG - 500 |\t{ff2900}20.000 рублей\n"),strcat(string, text);
format(text,sizeof(text), "{ffffff}№ 3 - FCR - 900 |\t{ff2900}30.000 рублей\n"),strcat(string, text);
format(text,sizeof(text), "{ffffff}№ 4 - Sultan\t |\t{ff2900}40.000 рублей\n"),strcat(string, text);
format(text,sizeof(text), "{ffffff}№ 5 - ZR-350\t |\t{ff2900}50.000 рублей\n"),strcat(string, text);
format(text,sizeof(text), "{ffffff}Чтобы выбрать один из автомобилей просто введите\n"),strcat(string, text);
format(text,sizeof(text), "{ffffff}его номер в строку ниже {7fff00}например "1" или "2"\n"),strcat(string, text);
ShowPlayerDialog(playerid, CAR_INFO+1, DIALOG_STYLE_INPUT, "Покупка автомобиля",string, "Купить", "Закрыть");
}
case 2:
{
new Float:Xx,Float:Yy,Float:Zz;
GetPlayerPos(playerid, Xx,Yy,Zz);
LichCar[createdvehs] = CreateVehicle(PlayerInfo[playerid][pCarc], Xx,Yy,Zz, 0.0, 1, 2, 60000);
CarInfo[playerid] = 1;
PutPlayerInVehicle(playerid, LichCar[createdvehs], 0);
}
}
}