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

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

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

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

Тайник(Можно положить деньги,материалы,наркотики)

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

Пельмень

Компетентный
Ищем строчку enum pInfo и добавляем:

PHP:
ptMoney, 
ptDrugs, 
ptMats,
В public OnPlayerConnect добавляем:

PHP:
PlayerInfo[playerid][ptMoney] = 0; 
PlayerInfo[playerid][ptDrugs] = 0; 
PlayerInfo[playerid][ptMats] = 0;
В public OnPlayerRegister добавляем:
PHP:
format(var, 32, "TanikMoney=%d\n",PlayerInfo[playerid][ptMoney]);fwrite(hFile, var); 
format(var, 32, "TanikDrugs=%d\n",PlayerInfo[playerid][ptDrugs]);fwrite(hFile, var); 
format(var, 32, "TanikMats=%d\n",PlayerInfo[playerid][ptMats]);fwrite(hFile, var);
Ищем public SavePlayer(public OnPlayerUpdate_GF) и добавляем туда:

PHP:
format(var, 32, "TanikMoney=%d\n",PlayerInfo[playerid][ptMoney]);fwrite(hFile, var); 
format(var, 32, "TanikDrugs=%d\n",PlayerInfo[playerid][ptDrugs]);fwrite(hFile, var); 
format(var, 32, "TanikMats=%d\n",PlayerInfo[playerid][ptMats]);fwrite(hFile, var);
В public OnPlayerLogin добавляем:
PHP:
if( strcmp( key , "TanikMoney" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][ptMoney] = strval( val ); } 
if( strcmp( key , "TanikDrugs" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][ptDrugs] = strval( val ); } 
if( strcmp( key , "TanikMats" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][ptMats] = strval( val ); }
В public OnPlayerCommandText добавляем команды:

PHP:
if(strcmp(cmd, "/tinfo", true) == 0)// Команда показывает что лежит в тайнике 
    { 
        if(IsPlayerConnected(playerid)) 
        { 
             if(PlayerToPoint(5.0,playerid,539.8622,-506.1435,25.5234))// кординаты заменяйте на свои 
           { 
               SendClientMessage(playerid,COLOR_YELLOW,"*** Тайник ***"); 
               format(string,sizeof(string),"Деньги: %d$",PlayerInfo[playerid][ptMoney]); 
               SendClientMessage(playerid,COLOR_WHITE,string); 
               format(string,sizeof(string),"Наркотики: %d",PlayerInfo[playerid][ptDrugs]); 
               SendClientMessage(playerid,COLOR_WHITE,string); 
               format(string,sizeof(string),"Материалы: %d",PlayerInfo[playerid][ptMats]); 
               SendClientMessage(playerid,COLOR_WHITE,string); 
           } 
        } 
        return 1; 
    } 
    if(strcmp(cmd, "/tgive", true) == 0)// Командой класть вещи в тайник 
    { 
        if(IsPlayerConnected(playerid)) 
        { 
            new x_job[256]; 
            x_job = strtok(cmdtext, idx); 
            if(!strlen(x_job)) 
            { 
                SendClientMessage(playerid, COLOR_WHITE, "|__________________ Положить в тайник __________________|"); 
                SendClientMessage(playerid, COLOR_WHITE, "Используйте: /tgive [Название] [Кол-во]"); 
                SendClientMessage(playerid, COLOR_GREY, "Доступно: money, drugs, mats"); 
                SendClientMessage(playerid, COLOR_WHITE, "|____________________________________________|"); 
                return 1; 
            } 
            tmp = strtok(cmdtext, idx); 
            if(!strlen(tmp)) 
            { 
                SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /tgive [Название] [Кол-во]"); 
                return 1; 
            } 
            new kolvo = strval(tmp); 
            if(PlayerToPoint(5.0,playerid,539.8622,-506.1435,25.5234))// кординаты заменяйте на свои 
            { 
               if(strcmp(x_job,"money",true) == 0) 
               { 
                  if(kolvo > GetPlayerMoney(playerid)) 
                  { 
                     SendClientMessage(playerid,COLOR_GREY,"У тебя нет такой суммы."); 
                     return 1; 
                  } 
                  format(string,sizeof(string),"Вы положили %d$ в тайник",kolvo); 
                  SendClientMessage(playerid,COLOR_WHITE,string); 
                  PlayerInfo[playerid][ptMoney] += kolvo; 
                  GivePlayerMoney(playerid,-kolvo);// ваша переменная на получение денег 
               } 
               else if(strcmp(x_job,"drugs",true) == 0) 
               { 
                  if(kolvo > PlayerInfo[playerid][pDrugs]) 
                    { 
                     SendClientMessage(playerid,COLOR_GREY,"У тебя нет столько наркотиков."); 
                     return 1; 
                  } 
                  format(string,sizeof(string),"Вы положили %d грам наркоты в тайник",kolvo); 
                  SendClientMessage(playerid,COLOR_WHITE,string); 
                  PlayerInfo[playerid][ptDrugs] += kolvo; 
                  PlayerInfo[playerid][pDrugs] -= kolvo; 
               } 
               else if(strcmp(x_job,"mats",true) == 0) 
               { 
                  if(kolvo > PlayerInfo[playerid][pMats]) 
                  { 
                     SendClientMessage(playerid,COLOR_GREY,"У тебя нет столько материалов."); 
                     return 1; 
                  } 
                  format(string,sizeof(string),"Вы положили %d материалов в тайник",kolvo); 
                  SendClientMessage(playerid,COLOR_WHITE,string); 
                  PlayerInfo[playerid][ptMats] += kolvo; 
                  PlayerInfo[playerid][pMats] -= kolvo; 
               } 
            } 
        } 
        return 1; 
    } 
    if(strcmp(cmd, "/ttake", true) == 0)// Командой брать вещи из тайника 
    { 
        if(IsPlayerConnected(playerid)) 
        { 
            new x_job[256]; 
            x_job = strtok(cmdtext, idx); 
            if(!strlen(x_job)) 
            { 
                SendClientMessage(playerid, COLOR_WHITE, "|__________________ Взять из тайника __________________|"); 
                SendClientMessage(playerid, COLOR_WHITE, "Используйте: /ttake [Название] [Кол-во]"); 
                SendClientMessage(playerid, COLOR_GREY, "Доступно: money, drugs, mats"); 
                SendClientMessage(playerid, COLOR_WHITE, "|____________________________________________|"); 
                return 1; 
            } 
            tmp = strtok(cmdtext, idx); 
            if(!strlen(tmp)) 
            { 
                SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /ttake [Название] [Кол-во]"); 
                return 1; 
            } 
            new kolvo = strval(tmp); 
            if(PlayerToPoint(5.0,playerid,539.8622,-506.1435,25.5234))// кординаты заменяйте на свои 
            { 
               if(strcmp(x_job,"money",true) == 0) 
               { 
                  if(kolvo >  PlayerInfo[playerid][ptMoney]) 
                  { 
                     SendClientMessage(playerid,COLOR_GREY,"У тебя в хранилище нет такой суммы."); 
                     return 1; 
                  } 
                  format(string,sizeof(string),"Вы взяли %d$ из тайника",kolvo); 
                  SendClientMessage(playerid,COLOR_WHITE,string); 
                  PlayerInfo[playerid][ptMoney] -= kolvo; 
                  GivePlayerMoney(playerid,kolvo);// ваша переменная на дачю денег 
               } 
               else if(strcmp(x_job,"drugs",true) == 0) 
               { 
                  if(kolvo > PlayerInfo[playerid][ptDrugs]) 
                   { 
                     SendClientMessage(playerid,COLOR_GREY,"У тебя в хранилище нет столько наркотиков."); 
                     return 1; 
                  } 
                  format(string,sizeof(string),"Вы взяли %d грам наркоты из тайника",kolvo); 
                  SendClientMessage(playerid,COLOR_WHITE,string); 
                  PlayerInfo[playerid][ptDrugs] -= kolvo; 
                  PlayerInfo[playerid][pDrugs] += kolvo; 
               } 
               else if(strcmp(x_job,"mats",true) == 0) 
               { 
                  if(kolvo > PlayerInfo[playerid][ptMats]) 
                   { 
                     SendClientMessage(playerid,COLOR_GREY,"У тебя в хранилище нет столько материалов."); 
                     return 1; 
                  } 
                  format(string,sizeof(string),"Вы взяли %d материалов из тайника",kolvo); 
                  SendClientMessage(playerid,COLOR_WHITE,string); 
                  PlayerInfo[playerid][ptMats] -= kolvo; 
                  PlayerInfo[playerid][pMats] += kolvo; 
               } 
            } 
        } 
        return 1; 
    }
В public OnGameModeInit добавляем:
PHP:
Create3DTextLabel("[Тайник]\nИспользуйте /tgive что бы положить в тайник\nИспользуйте /ttake что бы забрать из тайника\nИспользуйте /tinfo информация о тайнике",0x0000FFAA,539.8622,-506.1435,25.5234,40.0,0, 1);// Координаты текста
AddStaticPickup(1239, 1, 539.8622,-506.1435,25.5234);//координаты пикапа

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