Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Добавить сообщение в плагин

, Dhud
Статус пользователя Nebo
сообщение 26.7.2013, 20:09
Сообщение #1


Стаж: 13 лет
Город: Казань

Сообщений: 3181
Благодарностей: 1015
Полезность: 701

Уважаемы скриптеры, помогите допилить плагин, нужно всего лишь сделать:
- Добавить сообщение Dhud, и что бы это сообщение показовало игроку через 5сек, после того как зашел на сервер, и каждые 5 минут крутило.
Спасибо.

Исходник:
Код
#include <amxmodx>
#include <amxmisc>

#define PLUGIN  "Menu"
#define VERSION "1.0"
#define AUTHOR  "BJlaDuCJlaB(H9LLlE4ka=))"

new KEYSMENU = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9);    
new KEYSMENU2 = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<8)|(1<<9);

public client_authorized(id)
{
    client_cmd(id, "bind ^"F3^" ^"surf_menu^"");
}
public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR);
    register_clcmd("surf_menu", "ServerMenu");
    register_menu("Menu_Server", KEYSMENU, "Menu_Server");
    register_menu("Server_Menu", KEYSMENU2, "Server_Menu");
}
public ServerMenu(id)
{
    static menu[1024], len;
    len = 0;
    
    len = formatex(menu[len], charsmax(menu) - len, "\r[\yМеню Сервера\r] \y1\r/\y2^n^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r1.\wКупить парашют \r[\yShop\r]^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r2.\wКупить джетпак \r[\yShop\r]^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r3.\wСуперМаркет \r[\yShop\r]^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r4.\wVip Menu \r[\yVIP\r]^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r5.\wWeaponmenu \r[\yАдмин\r]^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r6.\wAmxmodmenu \r[\yАдмин\r]^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r7.\wПокупка привилегий^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r8.\wПравила сервера^n^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r9.\yДалее^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r0.\yВыход");
    
    show_menu(id, KEYSMENU, menu, -1, "Menu_Server");
}
public Menu_Server(id, key)
{    
    switch(key)
    {
        case 0:
        {
            client_cmd(id, "say buy_parachute");
        }
        case 1:
        {
            client_cmd(id, "buyjetpack");
        }
        case 2:
        {
            client_cmd(id, "say /shop");
        }
        case 3:
        {
            client_cmd(id, "say /vip");
        }
        case 4:
        {
            client_cmd(id, "Weaponmenu")
        }
        case 5:
        {
            client_cmd(id, "amxmodmenu")
        }
        case 6:
        {
            client_cmd(id, "say /adminka")
        }
        case 7:
        {
            client_cmd(id, "say /rules");
        }
        case 8:
        {
            ServerMenu2(id);
        }
    }
}
public ServerMenu2(id)
{
    static menu[1024], len;
    len = 0;
    
    len = formatex(menu[len], charsmax(menu) - len, "\r[\yМеню Сервера\r] \y2\r/\y2^n^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r1.\wЛучшие игроки^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r2.\wСвоя статистика^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r3.\wРанк на сервере^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r4.\wIP нашего сервера^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r5.\wКонтакты^n^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r9.\yНазад^n");
    len += formatex(menu[len], charsmax(menu) - len, "\r0.\yВыход");
    
    show_menu(id, KEYSMENU2, menu, -1, "Server_Menu");
}
public Server_Menu(id, key)
{    
    switch(key)
    {
        case 0:
        {
            client_cmd(id, "say /top15");
        }
        case 1:
        {
            client_cmd(id, "say /statsme");
        }
        case 2:
        {
            client_cmd(id, "say /rank")
        }
        case 3:
        {
            Color_Print(id, "!gIP нашего сервера тут был айпи сервера");
        }
        case 4:
        {
            Color_Print(id, "!gSkype: dmitriy.f_92 VK vk.com/nebo92");
        }
        case 8:
        {
            ServerMenu(id);
        }
    }
}
stock Color_Print(const id, const input[], any:...)
{
    new count = 1, players[32]
    static msg[191]
    vformat(msg, 190, input, 3)
    
    replace_all(msg, 190, "!g", "^4") // Green Color
    replace_all(msg, 190, "!y", "^1") // Default Color
    replace_all(msg, 190, "!team", "^3") // Team Color

    if (id) players[0] = id; else get_players(players, count, "ch")
    {
        for (new i = 0; i < count; i++)
        {
            if (is_user_connected(players[i]))
            {
                message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
                write_byte(players[i]);
                write_string(msg);
                message_end();
            }
        }
    }
}


Отредактировал: Nebo, - 26.7.2013, 20:11
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя ^_EcLiPsE_^
сообщение 26.7.2013, 22:21
Сообщение #2


Стаж: 15 лет

Сообщений: 207
Благодарностей: 55
Полезность: 217

а чем стандартный imessage не угодил?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fred Perry
сообщение 26.7.2013, 22:33
Сообщение #3


Иконка группы

Стаж: 16 лет

Сообщений: 6594
Благодарностей: 2370
Полезность: 813

Сначало проверяешь на подключение, далее таском выводишь худ


You become responsible, forever, for what you have tamed
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Nebo
сообщение 27.7.2013, 7:08
Сообщение #4


Стаж: 13 лет
Город: Казань

Сообщений: 3181
Благодарностей: 1015
Полезность: 701

Fred Perry, простому пользователю не понять. А учить всю эту хрень ой как не хочется.

Правильно что ли сделали?
Код
{
        register_plugin(PLUGIN, VERSION, AUTHOR);
        register_clcmd("surf_menu", "ServerMenu");
        register_menu("Menu_Server", KEYSMENU, "Menu_Server");
        register_menu("Server_Menu", KEYSMENU2, "Server_Menu");
        set_task(5.0,"show_score",0,_,_,"b")
}
 
public show_score()
{
   set_dhudmessage( 0, 128, 0, 0.80, 0.0, 1, 0.02, 1.0, 0.00, 1.0 );
   show_dhudmessage(0, "Текст")
}


Отредактировал: Nebo, - 27.7.2013, 7:09
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Yaroslav
сообщение 27.7.2013, 7:37
Сообщение #5


Стаж: 12 лет

Сообщений: 296
Благодарностей: 247
Полезность: 1084

Сначала проверка, потом таск на функцию.
Скрытый текст

Код
if(is_user_connected(id))
     {
     set_task ( Float:time, const function[], id = 0, parameter[]="", len = 0, flags[]="", repeat = 0 )
     }
     else
               {
                     return PLUGIN_CONTINUE
               }

Синтаксис таска гуглани.

Отредактировал: Yaroslav, - 27.7.2013, 7:38
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Nebo
сообщение 27.7.2013, 11:09
Сообщение #6


Стаж: 13 лет
Город: Казань

Сообщений: 3181
Благодарностей: 1015
Полезность: 701

Я знаю что вы все умные, может лучше готовый сразу дать, не?)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
cah9
сообщение 27.7.2013, 11:13
Сообщение #7
Стаж: 13 лет

Сообщений: 1159
Благодарностей: 360
Полезность: 0

Цитата(Nebo @ 27.7.2013, 18:09) *
Я знаю что вы все умные, может лучше готовый сразу дать, не?)


Сам думай =) Тебе подсказывают.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: