• Страница 1 из 1
  • 1
Модератор форума: [east_side]_trane, drifter-dron, valych, admin  
pawno урок покупка телефона
adminДата: Понедельник, 15.04.2013, 01:19:38 | Сообщение # 1

Группа: Администраторы
Сообщений: 3869
В этом уроке я расскажу как создать покупку телефона по команде! по запросу dimos для rp серверов!
верху мода найдем строчку
Код
enum pinfo
туда вставляем:

Код
pTelefon


примерно так должно у вас быть

Код
enum pinfo


Код
enum pInfo   
{   
pTelefon ,   
}


Потом ищем

Код
public OnPlayerConnect


и туда вставляем:

Код
PlayerInfo [playerid][pTelefon]= 0;


примерно так должен быть

Код
public OnPlayerConnect


Код
public OnPlayerConnect(playerid)   
{   
PlayerInfo [playerid][pTelefon]= 0;   
return 1;   
}


потом ищем

Код
public OnPlayerRegister


и туда вставляем:

Код
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);


примерно так должен быть у вас

Код
public OnPlayerRegister


Код
public OnPlayerRegister(playerid, password[]){   
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);       
       return 1;   
}


потом ищем

Код
public OnPlayerSave(playerid)


и туда вставляем:

Код
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);


примерно так должен быть у вас

Код
public OnPlayerSave(playerid)   
{   
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);   
return 1;   
}


Потом ищем

Код
public OnPlayerUpdateRL


и туда вставляем:

Код
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);

примерно так должен у вас быть public:

Код
public OnPlayerUpdateRL(playerid)   
{   
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);   
return 1;   
}


Потом ищем

Код
public OnPlayerLogin(playerid,password[])


и туда вставляем:

Код
ini_getInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);

примерно так должен быть public:

Код
public OnPlayerLogin(playerid,password[])   
{   
ini_getInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);   
return 1;   
}


После этого ищем команду /sms и туда добавляем эту строчку

Код
if(PlayerInfo [playerid][pTelefon]== 1) return    SendClientMessage(playerid, COLOR_WHITE, "Ошибка: У вас нет телефона! Купить его можно в любом магазине 24/7");


И потом заменим команду /buy на

Код
else if(strcmp(cmd, "/buy", true) == 0)
      {
          for(new i = 0; i < sizeof(BizzInfo); i++)
          {
              new inter = GetPlayerInterior(playerid);
              new bizinfo[400];
              new cena = BizzInfo[i][bCena];
              new cena2 = BizzInfo [i][bCena]* 2;
              new cena3 = BizzInfo [i][bCena]* 3;
              new cena4 = BizzInfo [i][bCena]* 4;
              new cena5 = BizzInfo [i][bCena]* 5;
              if (PlayerToPoint(10, playerid,BizzInfo[i][bBarX], BizzInfo[i][bBarY], BizzInfo[i][bBarZ]))
              {
                  if( inter == 17 ||  inter == 16 ||  inter == 10 ||  inter == 18)
                  {
                      format(bizinfo,sizeof(bizinfo),"1. Телефон [$%d]\n2. Телефонная книга [$%d]\n3. Справочник [$%d]\n4. Аптечки [$%d]\n5. Фотоаппарат [$%d]",cena,cena2,cena3,cena4,cena5);
                      ShowPlayerDialog(playerid, 5589, DIALOG_STYLE_LIST, "{1e90ff}Магазин 24/7", bizinfo, "Выбрать", "Закрыть");
                  }
              }
          }
          return true;
      }


Ищим case 5589: и заменяем на

Код
case 5589:   
             {   
                 new sendername[MAX_PLAYER_NAME];   
                 GetPlayerName(playerid, sendername, sizeof(sendername));   
                 for(new h = 0; h < sizeof(BizzInfo); h++)   
                 {   
                     new cena = BizzInfo[h][bCena];   
                     new cena2 = BizzInfo [h][bCena]* 2;   
                     new cena3 = BizzInfo [h][bCena]* 3;   
                     new cena4 = BizzInfo [h][bCena]* 4;   
                     new cena5 = BizzInfo [h][bCena]* 5;   
                     if(response)   
                     {   
                         if(listitem == 0)   
                         {   
                             new Float:health;   
                             GetPlayerHealth(playerid,health);   
                             if (PlayerToPoint(3, playerid,BizzInfo[h][bBarX], BizzInfo[h][bBarY], BizzInfo[h][bBarZ]))   
                             {   
                       //if(BizzInfo [h][bProducts]<= 0) return SendClientMessage(playerid, COLOR_GREY,"Нет продуктов");   
                       if(PlayerInfo [playerid][pCash]< cena) return SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет столько денег на руках!");   
                       BizzInfo[h][b2Till] +=cena;   
                       BizzInfo[h][bProducts]-=100;   
                       PlayerInfo [playerid][pCash]-=cena;   
                       new randphone = 1000 + random(8999);//minimum 1000  max 999999   
                       PlayerInfo [playerid][pPnumber]= randphone;   
                       PlayerInfo [playerid][pTelefon]= 1;   
                       format(string, sizeof(string), "Вы купили телефон. Ваш номер: %d", randphone);   
                       SendClientMessage(playerid, COLOR_BLUE, string);   
                       return true;   
                             }   
                         }   
                         else if(listitem == 1)////////////////////////////////////////////////////////////////   
                         {   
                             new Float:health;   
                             GetPlayerHealth(playerid,health);   
                             if(PlayerToPoint(3, playerid,BizzInfo[h][bBarX], BizzInfo[h][bBarY], BizzInfo[h][bBarZ]))   
                             {   
                       //if(BizzInfo [h][bProducts]<= 0) return SendClientMessage(playerid, COLOR_GREY,"Нет продуктов");   
                       if(PlayerInfo [playerid][pCash]< cena2) return SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет столько денег на руках!");   
                       BizzInfo[h][b2Till] += cena2;   
                       BizzInfo[h][bProducts]-=100;   
                       PlayerInfo [playerid][pCash]-=cena2;   
                       PlayerInfo [playerid][pPhoneBook]= 1;   
                       SendClientMessage(playerid, 0x6495EDFF,"Вы купили телефонную книгу");   
                       return true;   
                             }   
                         }   
                         else if(listitem == 2)   
                         {   
                             new Float:health;   
                             GetPlayerHealth(playerid,health);   
                             if(PlayerToPoint(3, playerid,BizzInfo[h][bBarX], BizzInfo[h][bBarY], BizzInfo[h][bBarZ]))   
                             {   
                       //if(BizzInfo [h][bProducts]<= 0) return SendClientMessage(playerid, COLOR_GREY,"Нет продуктов");   
                       if(PlayerInfo [playerid][pCash]< cena3)  return   SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет столько денег на руках!");   
                       BizzInfo[h][b2Till] += cena3;   
                       BizzInfo[h][bProducts]-=100;   
                       PlayerInfo [playerid][pCash]-=cena3;   
                       format(string, sizeof(string), "Вы купили справочник");   
                       SendClientMessage(playerid, COLOR_BLUE, string);   
                       PlayerInfo [playerid][pDirectory]= 1;   
                       return true;   
                             }   
                         }   
                         else if(listitem == 3)   
                         {   
                             new Float:health;   
                             GetPlayerHealth(playerid,health);   
                             if(PlayerToPoint(3, playerid,BizzInfo[h][bBarX], BizzInfo[h][bBarY], BizzInfo[h][bBarZ]))   
                             {   
                       //if(BizzInfo [h][bProducts]<= 0) return SendClientMessage(playerid, COLOR_GREY,"Нет продуктов");   
                       if(PlayerInfo [playerid][pCash]< cena4) return  SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет столько денег на руках!");   
                       new house = PlayerInfo[playerid][pPhousekey];   
                       HouseInfo [house][hHel]+= 5;   
                       BizzInfo[h][b2Till] += cena4;   
                       BizzInfo[h][bProducts]-= 100;   
                       PlayerInfo [playerid][pCash]-=cena4;   
                       format(string, sizeof(string), "Вы купили 10 аптечек");   
                       SendClientMessage(playerid, COLOR_BLUE, string);   
                       return true;   
                             }   
                         }   
                         else if(listitem == 4)////   
                         {   
                             new Float:health;   
                             GetPlayerHealth(playerid,health);   
                             if(PlayerToPoint(3, playerid,BizzInfo[h][bBarX], BizzInfo[h][bBarY], BizzInfo[h][bBarZ]))   
                             {   
                       //if(BizzInfo [h][bProducts]<= 0) return SendClientMessage(playerid, COLOR_GREY,"Нет продуктов");   
                       if(PlayerInfo [playerid][pCash]< cena5) return SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет столько денег на руках!");   
                       BizzInfo[h][b2Till] += cena5;   
                       BizzInfo[h][bProducts]-=100;   
                       PlayerInfo [playerid][pCash]-=cena5;   
                       GetWeaponPla(playerid, 43, 10);   
                       SendClientMessage(playerid, COLOR_BLUE, "Вы купили фотоаппарат");   
                       return true;   
                             }   
                         }   
                     }   
                     else return true;   
                 }   
             }

Автор: 26_RUSSS


zm-jail.ru

Разработка сайта samp-pawno.ru


 
СообщениеВ этом уроке я расскажу как создать покупку телефона по команде! по запросу dimos для rp серверов!
верху мода найдем строчку
Код
enum pinfo
туда вставляем:

Код
pTelefon


примерно так должно у вас быть

Код
enum pinfo


Код
enum pInfo   
{   
pTelefon ,   
}


Потом ищем

Код
public OnPlayerConnect


и туда вставляем:

Код
PlayerInfo [playerid][pTelefon]= 0;


примерно так должен быть

Код
public OnPlayerConnect


Код
public OnPlayerConnect(playerid)   
{   
PlayerInfo [playerid][pTelefon]= 0;   
return 1;   
}


потом ищем

Код
public OnPlayerRegister


и туда вставляем:

Код
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);


примерно так должен быть у вас

Код
public OnPlayerRegister


Код
public OnPlayerRegister(playerid, password[]){   
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);       
       return 1;   
}


потом ищем

Код
public OnPlayerSave(playerid)


и туда вставляем:

Код
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);


примерно так должен быть у вас

Код
public OnPlayerSave(playerid)   
{   
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);   
return 1;   
}


Потом ищем

Код
public OnPlayerUpdateRL


и туда вставляем:

Код
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);

примерно так должен у вас быть public:

Код
public OnPlayerUpdateRL(playerid)   
{   
ini_setInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);   
return 1;   
}


Потом ищем

Код
public OnPlayerLogin(playerid,password[])


и туда вставляем:

Код
ini_getInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);

примерно так должен быть public:

Код
public OnPlayerLogin(playerid,password[])   
{   
ini_getInteger(File,"Telefon",PlayerInfo[playerid][pTelefon]);   
return 1;   
}


После этого ищем команду /sms и туда добавляем эту строчку

Код
if(PlayerInfo [playerid][pTelefon]== 1) return    SendClientMessage(playerid, COLOR_WHITE, "Ошибка: У вас нет телефона! Купить его можно в любом магазине 24/7");


И потом заменим команду /buy на

Код
else if(strcmp(cmd, "/buy", true) == 0)
      {
          for(new i = 0; i < sizeof(BizzInfo); i++)
          {
              new inter = GetPlayerInterior(playerid);
              new bizinfo[400];
              new cena = BizzInfo[i][bCena];
              new cena2 = BizzInfo [i][bCena]* 2;
              new cena3 = BizzInfo [i][bCena]* 3;
              new cena4 = BizzInfo [i][bCena]* 4;
              new cena5 = BizzInfo [i][bCena]* 5;
              if (PlayerToPoint(10, playerid,BizzInfo[i][bBarX], BizzInfo[i][bBarY], BizzInfo[i][bBarZ]))
              {
                  if( inter == 17 ||  inter == 16 ||  inter == 10 ||  inter == 18)
                  {
                      format(bizinfo,sizeof(bizinfo),"1. Телефон [$%d]\n2. Телефонная книга [$%d]\n3. Справочник [$%d]\n4. Аптечки [$%d]\n5. Фотоаппарат [$%d]",cena,cena2,cena3,cena4,cena5);
                      ShowPlayerDialog(playerid, 5589, DIALOG_STYLE_LIST, "{1e90ff}Магазин 24/7", bizinfo, "Выбрать", "Закрыть");
                  }
              }
          }
          return true;
      }


Ищим case 5589: и заменяем на

Код
case 5589:   
             {   
                 new sendername[MAX_PLAYER_NAME];   
                 GetPlayerName(playerid, sendername, sizeof(sendername));   
                 for(new h = 0; h < sizeof(BizzInfo); h++)   
                 {   
                     new cena = BizzInfo[h][bCena];   
                     new cena2 = BizzInfo [h][bCena]* 2;   
                     new cena3 = BizzInfo [h][bCena]* 3;   
                     new cena4 = BizzInfo [h][bCena]* 4;   
                     new cena5 = BizzInfo [h][bCena]* 5;   
                     if(response)   
                     {   
                         if(listitem == 0)   
                         {   
                             new Float:health;   
                             GetPlayerHealth(playerid,health);   
                             if (PlayerToPoint(3, playerid,BizzInfo[h][bBarX], BizzInfo[h][bBarY], BizzInfo[h][bBarZ]))   
                             {   
                       //if(BizzInfo [h][bProducts]<= 0) return SendClientMessage(playerid, COLOR_GREY,"Нет продуктов");   
                       if(PlayerInfo [playerid][pCash]< cena) return SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет столько денег на руках!");   
                       BizzInfo[h][b2Till] +=cena;   
                       BizzInfo[h][bProducts]-=100;   
                       PlayerInfo [playerid][pCash]-=cena;   
                       new randphone = 1000 + random(8999);//minimum 1000  max 999999   
                       PlayerInfo [playerid][pPnumber]= randphone;   
                       PlayerInfo [playerid][pTelefon]= 1;   
                       format(string, sizeof(string), "Вы купили телефон. Ваш номер: %d", randphone);   
                       SendClientMessage(playerid, COLOR_BLUE, string);   
                       return true;   
                             }   
                         }   
                         else if(listitem == 1)////////////////////////////////////////////////////////////////   
                         {   
                             new Float:health;   
                             GetPlayerHealth(playerid,health);   
                             if(PlayerToPoint(3, playerid,BizzInfo[h][bBarX], BizzInfo[h][bBarY], BizzInfo[h][bBarZ]))   
                             {   
                       //if(BizzInfo [h][bProducts]<= 0) return SendClientMessage(playerid, COLOR_GREY,"Нет продуктов");   
                       if(PlayerInfo [playerid][pCash]< cena2) return SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет столько денег на руках!");   
                       BizzInfo[h][b2Till] += cena2;   
                       BizzInfo[h][bProducts]-=100;   
                       PlayerInfo [playerid][pCash]-=cena2;   
                       PlayerInfo [playerid][pPhoneBook]= 1;   
                       SendClientMessage(playerid, 0x6495EDFF,"Вы купили телефонную книгу");   
                       return true;   
                             }   
                         }   
                         else if(listitem == 2)   
                         {   
                             new Float:health;   
                             GetPlayerHealth(playerid,health);   
                             if(PlayerToPoint(3, playerid,BizzInfo[h][bBarX], BizzInfo[h][bBarY], BizzInfo[h][bBarZ]))   
                             {   
                       //if(BizzInfo [h][bProducts]<= 0) return SendClientMessage(playerid, COLOR_GREY,"Нет продуктов");   
                       if(PlayerInfo [playerid][pCash]< cena3)  return   SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет столько денег на руках!");   
                       BizzInfo[h][b2Till] += cena3;   
                       BizzInfo[h][bProducts]-=100;   
                       PlayerInfo [playerid][pCash]-=cena3;   
                       format(string, sizeof(string), "Вы купили справочник");   
                       SendClientMessage(playerid, COLOR_BLUE, string);   
                       PlayerInfo [playerid][pDirectory]= 1;   
                       return true;   
                             }   
                         }   
                         else if(listitem == 3)   
                         {   
                             new Float:health;   
                             GetPlayerHealth(playerid,health);   
                             if(PlayerToPoint(3, playerid,BizzInfo[h][bBarX], BizzInfo[h][bBarY], BizzInfo[h][bBarZ]))   
                             {   
                       //if(BizzInfo [h][bProducts]<= 0) return SendClientMessage(playerid, COLOR_GREY,"Нет продуктов");   
                       if(PlayerInfo [playerid][pCash]< cena4) return  SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет столько денег на руках!");   
                       new house = PlayerInfo[playerid][pPhousekey];   
                       HouseInfo [house][hHel]+= 5;   
                       BizzInfo[h][b2Till] += cena4;   
                       BizzInfo[h][bProducts]-= 100;   
                       PlayerInfo [playerid][pCash]-=cena4;   
                       format(string, sizeof(string), "Вы купили 10 аптечек");   
                       SendClientMessage(playerid, COLOR_BLUE, string);   
                       return true;   
                             }   
                         }   
                         else if(listitem == 4)////   
                         {   
                             new Float:health;   
                             GetPlayerHealth(playerid,health);   
                             if(PlayerToPoint(3, playerid,BizzInfo[h][bBarX], BizzInfo[h][bBarY], BizzInfo[h][bBarZ]))   
                             {   
                       //if(BizzInfo [h][bProducts]<= 0) return SendClientMessage(playerid, COLOR_GREY,"Нет продуктов");   
                       if(PlayerInfo [playerid][pCash]< cena5) return SendClientMessage(playerid, COLOR_GREY, "{F70000}x {ADAEAD}У вас нет столько денег на руках!");   
                       BizzInfo[h][b2Till] += cena5;   
                       BizzInfo[h][bProducts]-=100;   
                       PlayerInfo [playerid][pCash]-=cena5;   
                       GetWeaponPla(playerid, 43, 10);   
                       SendClientMessage(playerid, COLOR_BLUE, "Вы купили фотоаппарат");   
                       return true;   
                             }   
                         }   
                     }   
                     else return true;   
                 }   
             }

Автор: 26_RUSSS

Автор - admin
Дата добавления - 15.04.2013 в 01:19:38
Kirill_KOOLLДата: Воскресенье, 15.12.2013, 16:39:15 | Сообщение # 2

Группа: Пользователи
Сообщений: 1
У меня неполучилосЬ.хОТЬ У МЕНЯ МОД Адванс полная копия Вот только магазин неробит
 
СообщениеУ меня неполучилосЬ.хОТЬ У МЕНЯ МОД Адванс полная копия Вот только магазин неробит

Автор - Kirill_KOOLL
Дата добавления - 15.12.2013 в 16:39:15
YellowFace1Дата: Четверг, 13.03.2014, 18:45:23 | Сообщение # 3

Группа: Пользователи
Сообщений: 10
Спасибо, все работает, только тут ошибка:
"После этого ищем команду /sms и туда добавляем эту строчку"
if(PlayerInfo [playerid][pTelefon]== 1) return    SendClientMessage(playerid, COLOR_WHITE, "Ошибка: У вас нет телефона! Купить его можно в любом магазине 24/7");
Тут не "1", а "0" надо ставить.
 
СообщениеСпасибо, все работает, только тут ошибка:
"После этого ищем команду /sms и туда добавляем эту строчку"
if(PlayerInfo [playerid][pTelefon]== 1) return    SendClientMessage(playerid, COLOR_WHITE, "Ошибка: У вас нет телефона! Купить его можно в любом магазине 24/7");
Тут не "1", а "0" надо ставить.

Автор - YellowFace1
Дата добавления - 13.03.2014 в 18:45:23
  • Страница 1 из 1
  • 1
Поиск:
Загрузка страницы, займет меньше минуты...
Загрузка...

Статистика Форума
Последнии темы Читаемые темы Лучшие пользователи Новые пользователи
Система телефонов поломалась
Не в себе
фильм скалайн
Трансформеры 3
форсаж 6
Ищу [FS]Для админок на сервер
нужны координаты карты для отметки зон...
Помогите найти мод
pawno урок автоматические ворота
обращение к скриптерам.
Вопросы по скриптингу
Ваши ошибки при компиляции GM/FS

Вопросы по скриптингу

(1081)

Считаем до 1000

(274)

Ваши ошибки при компиляция gm

(260)

Набор в команду

(80)

Ваши ошибки при компиляции GM/FS

(71)

вопроосы по скриптингу от 22.04.2013

(64)

Баннеробмен

(64)

несколько команд на samp 0.3 c

(64)

Оценки сайта samp-pawno.ru

(55)

Заказ хостинга

(51)

Набор в команду(форум)

(45)

Урок №61 по созданию системы авто для GodFather

(45)

admin

(3869)

[east_side]_trane

(443)

TWiX

(316)

valych

(501)

drifter-dron

(477)

danik_rok

(317)

Dimka_71rus

(360)

Drifter96

(300)

MaNb9K

(220)

[MTA]MaPeR5518

(181)

Dima_Tkach

(107)

Nik_Ull

(184)

system32xzxz

(Четверг 09:25:24)

torbin169

(Суббота 23:09:29)

kuchuk_00

(Суббота 17:10:14)

artem_boyko_3

(Суббота 15:57:37)

greggelbak

(Среда 18:29:37)

vladisvlavs

(Среда 13:51:57)

add02102002

(Понедельник 22:37:15)

Диман221

(Понедельник 18:12:45)

almas051004

(Воскресенье 11:05:32)

megasuccessms

(Суббота 14:15:36)

nawe

(Пятница 22:25:23)

swoysb

(Пятница 14:55:29)

Вверх
21:27:58
ОбновитьСмайлыУправление мини-чатом
ЧАТ-PAWNO
2010-2025

vkontakte :samp-pawno.ru: