Система личных авто

Описание: Уроки по скриптингу
Модератор: SJplayer

Дим M
Автор темы, Администратор
Администратор
Аватара
Дим M
Автор темы, Администратор
Администратор
Сообщения: 1608
Зарегистрирован: 5 апреля 2013
С нами: 10 лет 11 месяцев

#1 Дим » 6 мая 2013, 11:36

Система личных авто
Автор: Kurt.Cobain

Вообщем суть такова.
Прописываешь /truck - покупаешь автомобиль (если нету) потом если есть автомобиль то в /truck появляется строка "Взять автомобиль" т.е автомобиль ТП к вам и автоматически садитесь в него.
Есть мини информация о автомобиле, я сделал 5 ТС для покупки.

Изображение


Ко всем new

Код: Выделить всё

#define CAR_INFO 1488
new LichCar[MAX_VEHICLES];
new 
createdvehs;
new 
CarInfo[MAX_PLAYERS]; 


и в enum pInfo

Код: Выделить всё

pCarc


в OnPlayerConnect:

Код: Выделить всё

PlayerInfo[playerid][pCarc] = 0


Далее сделайте сохранение для pCarc

В OnPlayerCommandText:

Код: Выделить всё

if(!strcmp(cmd"/truck"true))
    {
        if(
CarInfo[playerid] == && PlayerInfo[playerid][pCarc] != 0)
        {
            
SPD(playeridCAR_INFODIALOG_STYLE_LIST,"Меню автомобиля""Информация об автомобиле\nКупить автомобиль\nВзять автомобиль""Далее","Отмена");
        }
        else
        {
            
SPD(playeridCAR_INFODIALOG_STYLE_LIST,"Меню автомобиля""Информация об автомобиле\nКупить автомобиль""Далее","Отмена");
        }
        return 
1;
    } 


в OnDialogResponse:

Код: Выделить всё

    case CAR_INFO+1://КАР ИНФО
        
{
            if(
response)
            {
                if(
strval(inputtext) < || 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 
411ttext "10.000$";
                      case 
522ttext "20.000$";
                      case 
521ttext "30.000$";
                      case 
560ttext "40.000$";
                      case 
477ttext "50.000$";
                    }
                    new 
string[1044],text[256];
                    
format(text,sizeof(text), "{42aaff}CТАТИСТИКА:\n\n"),strcat(stringtext);
                    
format(text,sizeof(text), "{ffffff}Номер модели авто: %d\n",PlayerInfo[playerid][pCarc]),strcat(stringtext);
                    
format(text,sizeof(text), "{ffffff}Гос. стоимость: %s ",ttext),strcat(stringtext);
                    
ShowPlayerDialog(playerid1488DIALOG_STYLE_MSGBOX"Информация",string"Закрыть""");
                }
                case 
1:
                {
                    new 
string[1044],text[256];
                    
format(text,sizeof(text), "{ffffff}Для покупки нового автомобиля вам нужно\n"),strcat(stringtext);
                    
format(text,sizeof(text), "ввести номер присвоенный к данной модели транспорта\n\n"),strcat(stringtext);
                    
format(text,sizeof(text), "№ 1 - Infernus\t |\t{ff2900}10.000 рублей\n"),strcat(stringtext);
                    
format(text,sizeof(text), "{ffffff}№ 2 - NRG - 500 |\t{ff2900}20.000 рублей\n"),strcat(stringtext);
                    
format(text,sizeof(text), "{ffffff}№ 3 - FCR - 900 |\t{ff2900}30.000 рублей\n"),strcat(stringtext);
                    
format(text,sizeof(text), "{ffffff}№ 4 - Sultan\t |\t{ff2900}40.000 рублей\n"),strcat(stringtext);
                    
format(text,sizeof(text), "{ffffff}№ 5 - ZR-350\t |\t{ff2900}50.000 рублей\n"),strcat(stringtext);
                    
format(text,sizeof(text), "{ffffff}Чтобы выбрать один из автомобилей просто введите\n"),strcat(stringtext);
                    
format(text,sizeof(text), "{ffffff}его номер в строку ниже {7fff00}например "1" или "2"\n"),strcat(stringtext);
                    
ShowPlayerDialog(playeridCAR_INFO+1DIALOG_STYLE_INPUT"Покупка автомобиля",string"Купить""Закрыть");
                }
                case 
2:
                {
                    new 
Float:Xx,Float:Yy,Float:Zz;
                    
GetPlayerPos(playeridXx,Yy,Zz);
                    
LichCar[createdvehs] = CreateVehicle(PlayerInfo[playerid][pCarc], Xx,Yy,Zz0.01260000);
                    
CarInfo[playerid] = 1;
                    
PutPlayerInVehicle(playeridLichCar[createdvehs], 0);
                }
            }
        } 
[center]i love you [s]mxIni[/s] Mysql[/center]


  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Уроки»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 4 гостя