Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 6 из 6
  1. #1
    Аватар для Cat Dave
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.05.2013
    Сообщений
    4
    Репутация:
    2 ±

    Сис-ма баров by velix.

    И снова здравствуйте, господа. Когда-то вшивал в свой мод интересную системку "баров" от velix'a. Решил написать ее Вам.
    Автор: velix

    Ко всем new

    PHP код:
    const MAX_DRINKS 8;// Количество напитков 
    const MAX_BAR_POS 4;// Количество позиций баров

    enum DrinkBar//By velix
    {
        
    DrinkName[10],
        
    Float:DrinkHP,
        
    DrinkPrice
    };

    new 
    DrinkInfoMAX_DRINKS ][ DrinkBar ] = {// Напитки
    /* Название, хп, цена */
        
    {"Водка"20.05},
        {
    "Вино"25.05},
        {
    "Коньяк"23.05},
        {
    "Пиво"25.03},
        {
    "Coca-Cola"15.02},
        {
    "Sprite"15.02},
        {
    "Кофе"30.02},
        {
    "Какао"5.02}
    };

    enum DrinkBarCoords
    {
        
    Float:drX,
        
    Float:drY,
        
    Float:drZ
    };

    new 
    DrinkCoordsInfoMAX_BAR_POS ][ DrinkBarCoords ] = {// Координаты
        
    {495.7801,-76.0305,998.7578},// Бар на грув
        
    {499.9654,-20.2515,1000.6797},// Бар
        
    {1215.9480,-13.3519,1000.9219},// Стрип 1
        
    {-2658.9749,1407.4136,906.2734}// Стрип 2
    }; 
    Далее, идем в public OnPlayerCommandText

    PHP код:
        if(strcmp(cmd"/drink"true) == 0)
        {
            if(!
    IsAtBar(playerid))
                return 
    SendClientMessage(playerid0xFFFFFFFF"* Чувак, ты не около бара!");
            return 
    ShowBarDialog(playerid);
        } 
    Это, желательно, в конец мода
    PHP код:
    stock ShowBarDialog(playerid)
    {
        new 
    string[600];
        for(new 
    i=0;i<sizeof(DrinkInfo);i++)
            
    format(string,sizeof(string),"%s{FFFFFF}[{00D900}%d{FFFFFF}] {00D900}%s{FFFFFF}\t [{00D900}$%d{FFFFFF}]\n",string,i,DrinkInfo[i][DrinkName],DrinkInfo[i][DrinkPrice]);
        return 
    ShowPlayerDialog(playerid,200,DIALOG_STYLE_LIST,"{FFFFFF}Покупка алкоголя",string,"Выпить","Отмена");
    }

    stock IsAtBar(playerid)
    {
        for(new 
    id=0;id<sizeof(DrinkCoordsInfo);id++)
            if(
    IsPlayerInRangeOfPoint(playerid2.0DrinkCoordsInfo[id][drX], DrinkCoordsInfo[id][drY], DrinkCoordsInfo[id][drZ]))
                return 
    1;
        return 
    0;

    Идем в public OnDialogResponse
    PHP код:
        else if(dialogid == 200)
        {
            if(
    response == 0) return 1;
            if(
    GetPlayerMoney(playerid) < DrinkInfo[listitem][DrinkPrice]) return SendClientMessage(playerid0xFFFFFFAA"* Братка, подзаработаешь бабосов - приходи!");
            
    GivePlayerMoney(playerid,-DrinkInfo[listitem][DrinkPrice]);
            
    ApplyAnimation(playerid,"FOOD","EAT_Burger",4.0,1,1,1,1,1);
            new 
    Float:health;
            
    GetPlayerHealth(playeridhealth);
            
    SetPlayerHealth(playeridhealth+DrinkInfo[listitem][DrinkHP]);
        } 

  2. 2 пользователя(ей) сказали cпасибо:
    GERMAN4SV (16.05.2013) Nike54 (16.05.2013)
  3. #2
    Аватар для Nike54
    Пользователь

    Статус
    Оффлайн
    Регистрация
    05.04.2013
    Сообщений
    9
    Репутация:
    1 ±
    Молодчина)

  4. Пользователь сказал cпасибо:
    Cat Dave (16.05.2013)
  5. #3
    Аватар для GERMAN4SV
    Пользователь

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    RUSSIA
    Сообщений
    149
    Репутация:
    33 ±
    Отлично

  6. Пользователь сказал cпасибо:
    Cat Dave (17.05.2013)
  7. #4
    Аватар для Takeshi
    Пользователь

    Статус
    Оффлайн
    Регистрация
    23.05.2013
    Адрес
    Нижнекамск
    Сообщений
    18
    Репутация:
    -1 ±
    Отлично!

  8. #5
    Аватар для Tony_Rich
    Пользователь

    Статус
    Оффлайн
    Регистрация
    31.03.2013
    Сообщений
    20
    Репутация:
    2 ±
    норма

  9. #6
    Аватар для Mentos
    Пользователь

    Статус
    Оффлайн
    Регистрация
    12.05.2013
    Сообщений
    10
    Репутация:
    0 ±
    Если бы я писал эту систему, то признаю что она была бы не оптимизирована :D

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •