liyang2008 发表于 2010-2-25 18:57:52

关于IMESSAGE。SMA更改问题

上会去别人的服务器。他门显示信息能亮。
但是我在网上找的插件。不能亮信息。
我找到了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
        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;
        new Message;
       
        ArrayGetString(g_Messages, g_Current, Message, charsof(Message));
        ArrayGetArray(g_Values, g_Current, values);
       
        new hostname;
       
        get_cvar_string("hostname", hostname, 63);
        replace(Message, 380, "%hostname%", hostname);
       
        set_hudmessage(values, values, values, 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;
       
        remove_task(12345)
        read_argv(1, Message, 380)
       
        while (replace(Message, 380, "\n", "^n")) {}
       
        new mycol
        new vals;
       
        read_argv(2, mycol, 11)                // RRRGGGBBB
        vals = str_to_num(mycol)
       
        mycol = 0
        vals = str_to_num(mycol)
       
        mycol = 0
        vals = str_to_num(mycol)
       
        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

        num_to_str(g_Current, lastinfo, 7)
        set_localinfo("lastinfomsg", lastinfo)
}

liyang2008 发表于 2010-2-25 18:58:22

那为大哥,教下如何把信息改成亮的。

cwy534363081 发表于 2010-2-25 21:58:16

:sleepy: :time:

sakulekingz 发表于 2010-2-25 23:19:42

set_hudmessage(values, values, values, X_POS, Y_POS, 0, 0.5, HOLD_TIME, 2.0, 2.0, -1);set_hudmessage(values, values, values, X_POS, Y_POS, 0为默认淡入淡出1为闪烁效果2为打字效果, 0.5, HOLD_TIME, 2.0, 2.0, -1);

L*Y*Y* 发表于 2010-2-26 10:28:28

学习学习!

457417918 发表于 2010-2-26 13:13:19

作个记号

liyang2008 发表于 2010-2-26 15:46:54

大哥,那个在那里改啊??/
页: [1]
查看完整版本: 关于IMESSAGE。SMA更改问题