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

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

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

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

Нужна помощь в imessage.amxx

Статус пользователя syam
сообщение 2.11.2013, 12:03
Сообщение #1
Стаж: 13 лет

Сообщений: 50
Благодарностей: 4
Полезность: 2

Всем здрасте!
Нужна ваша помощь с плагинов imessage
Видел на сервере у миррора что справа снизу появляется время от времени реклама
у него вчера спросил что да как
он сказал что изменял координаты в amx_imessage
Честно я так и не понял как там и что..)
Мб кто нибудь из вас мне тут подскажет?
Жду ваших ответов))))
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя proff_q
сообщение 2.11.2013, 12:48
Сообщение #2
Стаж: 14 лет

Сообщений: 357
Благодарностей: 263
Полезность: 804

1) Имеем исходник
imessage.sma
Код
/* AMX Mod X
*   Info. Messages Plugin
*
* by the AMX Mod X Development Team
*  originally developed by OLO
*
* This file is part of AMX Mod X.
*
*
*  This program is free software; you can redistribute it and/or modify it
*  under the terms of the GNU General Public License as published by the
*  Free Software Foundation; either version 2 of the License, or (at
*  your option) any later version.
*
*  This program is distributed in the hope that it will be useful, but
*  WITHOUT ANY WARRANTY; without even the implied warranty of
*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
*  General Public License for more details.
*
*  You should have received a copy of the GNU General Public License
*  along with this program; if not, write to the Free Software Foundation,
*  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*  In addition, as a special exception, the author gives permission to
*  link the code of this program with the Half-Life Game Engine ("HL
*  Engine") and Modified Game Libraries ("MODs") developed by Valve,
*  L.L.C ("Valve"). You must obey the GNU General Public License in all
*  respects for all of the code used other than the HL Engine and MODs
*  from Valve. If you modify this file, you may extend this exception
*  to your version of the file, but you are not obligated to do so. If
*  you do not wish to do so, delete this exception statement from your
*  version.
*/

#include <amxmodx>
#include <amxmisc>

#define X_POS         -1.0
#define Y_POS         0.20
#define HOLD_TIME     12.0

new Array:g_Values
new Array:g_Messages
new g_MessagesNum
new g_Current

#define charsof(%1) (sizeof(%1)-1)

new amx_freq_imessage;

public plugin_init()
{
    g_Messages=ArrayCreate(384);
    g_Values=ArrayCreate(3);
    register_plugin("Info. Messages", AMXX_VERSION_STR, "AMXX Dev Team")
    register_dictionary("imessage.txt")
    register_dictionary("common.txt")
    register_srvcmd("amx_imessage", "setMessage")
    amx_freq_imessage=register_cvar("amx_freq_imessage", "10")
    
    new lastinfo[8]
    get_localinfo("lastinfomsg", lastinfo, 7)
    g_Current = str_to_num(lastinfo)
    set_localinfo("lastinfomsg", "")
}

public infoMessage()
{
    if (g_Current >= g_MessagesNum)
        g_Current = 0
        
    // No messages, just get out of here
    if (g_MessagesNum==0)
    {
        return;
    }
    
    new values[3];
    new Message[384];
    
    ArrayGetString(g_Messages, g_Current, Message, charsof(Message));
    ArrayGetArray(g_Values, g_Current, values);
    
    new hostname[64];
    
    get_cvar_string("hostname", hostname, 63);
    replace(Message, 380, "%hostname%", hostname);
    
    set_hudmessage(values[0], values[1], values[2], X_POS, Y_POS, 0, 0.5, HOLD_TIME, 2.0, 2.0, -1);
    
    show_hudmessage(0, "%s", Message);
    
    client_print(0, print_console, "%s", Message);
    ++g_Current;
    
    new Float:freq_im = get_pcvar_float(amx_freq_imessage);
    
    if (freq_im > 0.0)
        set_task(freq_im, "infoMessage", 12345);
}

public setMessage()
{

    new Message[384];
    
    remove_task(12345)
    read_argv(1, Message, 380)
    
    while (replace(Message, 380, "\n", "^n")) {}
    
    new mycol[12]
    new vals[3];
    
    read_argv(2, mycol, 11)        // RRRGGGBBB
    vals[2] = str_to_num(mycol[6])
    
    mycol[6] = 0
    vals[1] = str_to_num(mycol[3])
    
    mycol[3] = 0
    vals[0] = str_to_num(mycol[0])
    
    g_MessagesNum++
    
    new Float:freq_im = get_pcvar_float(amx_freq_imessage)
    
    ArrayPushString(g_Messages, Message);
    ArrayPushArray(g_Values, vals);
    
    if (freq_im > 0.0)
        set_task(freq_im, "infoMessage", 12345)
    
    return PLUGIN_HANDLED
}

public plugin_end()
{
    new lastinfo[8]

    num_to_str(g_Current, lastinfo, 7)
    set_localinfo("lastinfomsg", lastinfo)
}
2) Открываем его с помощью текстового редактора, рекомендую NotePad++
3) Ищем строчки
Код
#define X_POS         -1.0
#define Y_POS         0.20

X_POS - отвечает за расположение надписи по оси Х. Координата X, идёт слева направо, 0.0 слева, 1.0 справа, -1.0 по центру.
Y_POS - отвечает за расположение надписи по оси Y. Координата Y, идёт сверху вниз, 0.0 сверху, 1.0 снизу, -1.0 по центру.
4) Подбираем нужные параметры.
5) Компилируем с помощью compiler.amx-x.ru, либо с помощью compile.exe в папке scripting.
6) Profit!

Отредактировал: proff_q, - 2.11.2013, 13:10
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя syam
сообщение 2.11.2013, 12:50
Сообщение #3
Стаж: 13 лет

Сообщений: 50
Благодарностей: 4
Полезность: 2

а поподробнее?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя winzh1
сообщение 2.11.2013, 13:03
Сообщение #4


Стаж: 14 лет

Сообщений: 1414
Благодарностей: 600
Полезность: 838

Цитата(syam @ 2.11.2013, 17:50) *
а поподробнее?

Куда подробнее то?
#define X_POS -1.0 - координаты по оси x
#define Y_POS 0.20 - координаты по оси y


Установлю и настрою FreshBans, DopBan.
Писать в ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя syam
сообщение 2.11.2013, 13:09
Сообщение #5
Стаж: 13 лет

Сообщений: 50
Благодарностей: 4
Полезность: 2

Не перемещается текст(
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя proff_q
сообщение 2.11.2013, 13:10
Сообщение #6
Стаж: 14 лет

Сообщений: 357
Благодарностей: 263
Полезность: 804

Прочитайте внимательно мой пост.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя syam
сообщение 2.11.2013, 13:39
Сообщение #7
Стаж: 13 лет

Сообщений: 50
Благодарностей: 4
Полезность: 2

Спасиб большое))) помогли се збс сделал)

Отредактировал: syam, - 2.11.2013, 13:45
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя winzh1
сообщение 2.11.2013, 13:46
Сообщение #8


Стаж: 14 лет

Сообщений: 1414
Благодарностей: 600
Полезность: 838

Цитата(syam @ 2.11.2013, 18:39) *
у меня еще один вопросик)) как изменить цвет? на белый?

В amxx.cfg
amx_imessage "текст" "255255255"


Установлю и настрою FreshBans, DopBan.
Писать в ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя syam
сообщение 2.11.2013, 13:55
Сообщение #9
Стаж: 13 лет

Сообщений: 50
Благодарностей: 4
Полезность: 2

Все спасибо всем, разобрался!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: