|
Member
Join Date: Jul 2012
Location: Greece
|

11-28-2014
, 01:23
Admin HUD chat with set_task
|
#1
|
Hi. I'm trying to modify the 1.8.2 adminchat.sma to have the hud admin announcements not disappear in round end, sv_restart 1, etc. I've done it but the message is being slow to appear. My code (only included the modified parts, rest can be checked on original .sma):
PHP Code:
#include <dhudmessage>
enum _:TaskData
{
messageEnum[128],
red,
green,
blue,
Float:x,
Float:y
}
new taskCount[367];
new hudAdminSeconds;
//plugin_init
hudAdminSeconds=register_cvar("amx_hud_seconds","6");
//cmdSayChat(id)
new Float:verpos = g_Pos[i][1] + float(g_msgChannel) / 35.0
get_user_authid(id, authid, 31)
get_user_name(id, name, 31)
userid = get_user_userid(id)
new tdData[ TaskData ];
tdData[red]=g_Values[a][0];
tdData[green]=g_Values[a][1];
tdData[blue]=g_Values[a][2];
tdData[x]=_:g_Pos[i][0];
tdData[y]=_:verpos;
new randTaskID = id + random_num(33, 333);
switch ( get_pcvar_num(amx_show_activity) )
{
case 2:
{
formatex(tdData[messageEnum], 127, "%s : %s", name, message[i + n]);
set_task(0.9, "DhudTask", randTaskID, tdData, sizeof( tdData ), "a", get_pcvar_num(hudAdminSeconds))
client_print(0, print_notify, "%s : %s", name, message[i + n])
}
default:
{
formatex(tdData[messageEnum], 127, "%s", message[i + n]);
set_task(0.9, "DhudTask", randTaskID, tdData, sizeof( tdData ), "a", get_pcvar_num(hudAdminSeconds))
client_print(0, print_notify, "%s", message[i + n])
}
}
public DhudTask( tdIncoming[ TaskData ] , TaskID )
{
if(taskCount[TaskID]==0)
{
set_dhudmessage(tdIncoming[red], tdIncoming[green], tdIncoming[blue], tdIncoming[x], tdIncoming[y], 0, 1.0, 1.0, 0.5, 0.0)
taskCount[TaskID] = taskCount[TaskID] + 1;
}
else if (taskCount[TaskID]==get_pcvar_num(hudAdminSeconds)-1)
{
set_dhudmessage(tdIncoming[red], tdIncoming[green], tdIncoming[blue], tdIncoming[x], tdIncoming[y], 0, 1.0, 1.0, 0.0, 0.15)
taskCount[TaskID] = 0;
}
else
{
set_dhudmessage(tdIncoming[red], tdIncoming[green], tdIncoming[blue], tdIncoming[x], tdIncoming[y], 0, 1.0, 1.0, 0.0, 0.0)
taskCount[TaskID] = taskCount[TaskID] + 1;
}
show_dhudmessage(0, "%s", tdIncoming[messageEnum])
}
Where is the part that slows it down?
Last edited by Hackerpcs; 11-28-2014 at 01:25.
|
|