Page 1 of 1

problema cu colo_msg

Posted: Fri Feb 05, 2010 9:08 am
by nam301
salut... am luat pentru color_msg pluginul GHW_Message_Disp.sma este si amxx-ul...imi apar mesajele in timpul jocului dar foarte rar...

si cica se seteaza intervalul de timp din sma. dar nush unde anume sa modific...

SMA. contine:
* Last Edited: 06-21-08
*
* ============
* Changelog:
* ============
*
* v2.1
* -Bug Fix
* -Changed String lengths from 128 - 256
*
* v2.0
* -Remake
*
* v1.0
* -Initial Release
*
*/

#define VERSION "2.1"

#include <amxmodx>
#include <amxmisc>

#define NUM_MESSAGES 20
#define STRING_LEN 256

static const configfile[] = "addons/amxmodx/configs/messages.ini"
new text_messages[NUM_MESSAGES][STRING_LEN]
new hud_messages[NUM_MESSAGES][4][STRING_LEN]
new hud_message_colors[NUM_MESSAGES][4][3]
new saytext_msgid

new num_hudmessages, num_textmessages, cur_hudmessage, cur_textmessage

public plugin_init()
{
register_plugin("GHW Auto Message Displayer",VERSION,"GHW_Chronic")

register_cvar("advertise_hud_len","120.0")
register_cvar("advertise_text_len","120.0")
register_cvar("advertise_hud_loc","1")

saytext_msgid = get_user_msgid("SayText")

read_configfile()

if(num_hudmessages) set_task(get_cvar_float("advertise_hud_len"),"display_hudmessage",0,"",0,"b")
if(num_textmessages) set_task(get_cvar_float("advertise_text_len"),"display_textmessage",10,"",10,"b")
}

public read_configfile()
{
new Fsize = file_size(configfile,1)
new read[STRING_LEN], trash
for(new i=0;i<Fsize;i++)
{
read_file(configfile,i,read,STRING_LEN - 1,trash)
if(containi(read,"Text")==0)
{
read_file(configfile,i+1,read,STRING_LEN - 1,trash)
replace_all(read,STRING_LEN - 1,"[blue]","^x03")
replace_all(read,STRING_LEN - 1,"[/blue]","^x01")
replace_all(read,STRING_LEN - 1,"[red]","^x03")
replace_all(read,STRING_LEN - 1,"[/red]","^x01")
replace_all(read,STRING_LEN - 1,"[green]","^x04")
replace_all(read,STRING_LEN - 1,"[/green]","^x01")
replace_all(read,STRING_LEN - 1,"[Blue]","^x03")
replace_all(read,STRING_LEN - 1,"[/Blue]","^x01")
replace_all(read,STRING_LEN - 1,"[Red]","^x03")
replace_all(read,STRING_LEN - 1,"[/Red]","^x01")
replace_all(read,STRING_LEN - 1,"[Green]","^x04")
replace_all(read,STRING_LEN - 1,"[/Green]","^x01")
format(text_messages[num_textmessages],STRING_LEN - 1,"^x04^x01%s",read)
num_textmessages++
}
else if(containi(read,"Hud")==0)
{
read_file(configfile,i+1,read,STRING_LEN - 1,trash)
new j = 0, position = 0;
while(position < strlen(read) && i<4)
{
while(contain(read[position]," ")==0) position++
if(containi(read[position],"[blue]")==0)
{
format(hud_messages[num_hudmessages][j],STRING_LEN - 1,"%s",read[position + 6])
position = containi(read[position],"[/blue]") + 7 + position
trash = containi(hud_messages[num_hudmessages][j],"[/blue]")
if(trash!=-1) hud_messages[num_hudmessages][j][trash] = 0
else break;
hud_message_colors[num_hudmessages][j][0] = 0
hud_message_colors[num_hudmessages][j][1] = 0
hud_message_colors[num_hudmessages][j][2] = 255
}
else if(containi(read[position],"[red]")==0)
{
format(hud_messages[num_hudmessages][j],STRING_LEN - 1,"%s",read[position + 5])
position = containi(read[position],"[/red]") + 6 + position
trash = containi(hud_messages[num_hudmessages][j],"[/red]")
if(trash!=-1) hud_messages[num_hudmessages][j][trash] = 0
else break;
hud_message_colors[num_hudmessages][j][0] = 255
hud_message_colors[num_hudmessages][j][1] = 0
hud_message_colors[num_hudmessages][j][2] = 0
}
else if(containi(read[position],"[green]")==0)
{
format(hud_messages[num_hudmessages][j],STRING_LEN - 1,"%s",read[position + 7])
position = containi(read[position],"[/green]") + 8 + position
trash = containi(hud_messages[num_hudmessages][j],"[/green]")
if(trash!=-1) hud_messages[num_hudmessages][j][trash] = 0
else break;
hud_message_colors[num_hudmessages][j][0] = 0
hud_message_colors[num_hudmessages][j][1] = 255
hud_message_colors[num_hudmessages][j][2] = 0
}
else if(containi(read[position],"[Yellow]")==0)
{
format(hud_messages[num_hudmessages][j],STRING_LEN - 1,"%s",read[position + 8])
position = containi(read[position],"[/Yellow]") + 9 + position
trash = containi(hud_messages[num_hudmessages][j],"[/Yellow]")
if(trash!=-1) hud_messages[num_hudmessages][j][trash] = 0
else break;
hud_message_colors[num_hudmessages][j][0] = 255
hud_message_colors[num_hudmessages][j][1] = 255
hud_message_colors[num_hudmessages][j][2] = 0
}
else if(containi(read[position],"[Orange]")==0)
{
format(hud_messages[num_hudmessages][j],STRING_LEN - 1,"%s",read[position + 8])
position = containi(read[position],"[/Orange]") + 9 + position
trash = containi(hud_messages[num_hudmessages][j],"[/Orange]")
if(trash!=-1) hud_messages[num_hudmessages][j][trash] = 0
else break;
hud_message_colors[num_hudmessages][j][0] = 255
hud_message_colors[num_hudmessages][j][1] = 128
hud_message_colors[num_hudmessages][j][2] = 64
}
else if(containi(read[position],"[Pink]")==0)
{
format(hud_messages[num_hudmessages][j],STRING_LEN - 1,"%s",read[position + 6])
position = containi(read[position],"[/Pink]") + 7 + position
trash = containi(hud_messages[num_hudmessages][j],"[/Pink]")
if(trash!=-1) hud_messages[num_hudmessages][j][trash] = 0
else break;
hud_message_colors[num_hudmessages][j][0] = 255
hud_message_colors[num_hudmessages][j][1] = 0
hud_message_colors[num_hudmessages][j][2] = 128
}
else if(containi(read[position],"[Indigo]")==0)
{
format(hud_messages[num_hudmessages][j],STRING_LEN - 1,"%s",read[position + 8])
position = containi(read[position],"[/Indigo]") + 9 + position
trash = containi(hud_messages[num_hudmessages][j],"[/Indigo]")
if(trash!=-1) hud_messages[num_hudmessages][j][trash] = 0
else break;
hud_message_colors[num_hudmessages][j][0] = 0
hud_message_colors[num_hudmessages][j][1] = 255
hud_message_colors[num_hudmessages][j][2] = 255
}
else if(containi(read[position],"[White]")==0)
{
format(hud_messages[num_hudmessages][j],STRING_LEN - 1,"%s",read[position + 8])
position = containi(read[position],"[/White]") + 9 + position
trash = containi(hud_messages[num_hudmessages][j],"[/White]")
if(trash!=-1) hud_messages[num_hudmessages][j][trash] = 0
else break;
hud_message_colors[num_hudmessages][j][0] = 255
hud_message_colors[num_hudmessages][j][1] = 255
hud_message_colors[num_hudmessages][j][2] = 255
}
else if(
containi(read[position],"[blue]")==-1 &&
containi(read[position],"[red]")==-1 &&
containi(read[position],"[green]")==-1 &&
containi(read[position],"[Yellow]")==-1 &&
containi(read[position],"[Orange]")==-1 &&
containi(read[position],"[Pink]")==-1 &&
containi(read[position],"[Indigo]")==-1 &&
containi(read[position],"[White]")==-1
)
{
format(hud_messages[num_hudmessages][j],STRING_LEN - 1,"%s",read[position])
hud_message_colors[num_hudmessages][j][0] = 255
hud_message_colors[num_hudmessages][j][1] = 255
hud_message_colors[num_hudmessages][j][2] = 255
position = 129
}
else
{
format(hud_messages[num_hudmessages][j],STRING_LEN - 1,"%s",read[position])
position = containi(read[position],"[") + 9 + position
trash = containi(hud_messages[num_hudmessages][j],"[")
if(trash!=-1) hud_messages[num_hudmessages][j][trash] = 0
else break;
hud_message_colors[num_hudmessages][j][0] = 255
hud_message_colors[num_hudmessages][j][1] = 0
hud_message_colors[num_hudmessages][j][2] = 0
}
j++
}
format(hud_messages[num_hudmessages][1],STRING_LEN - 1,"^n%s",hud_messages[num_hudmessages][1])
format(hud_messages[num_hudmessages][2],STRING_LEN - 1,"^n^n%s",hud_messages[num_hudmessages][2])
format(hud_messages[num_hudmessages][3],STRING_LEN - 1,"^n^n^n%s",hud_messages[num_hudmessages][3])
num_hudmessages++
}
}
}

public display_hudmessage()
{
new Float:loc[2]
switch(get_cvar_num("advertise_hud_loc"))
{
case 2:
{
loc[0] = -1.0
loc[1] = -1.0
}
default:
{
loc[0] = -1.0
loc[1] = 0.2
}
}
set_hudmessage(hud_message_colors[cur_hudmessage][0][0],hud_message_colors[cur_textmessage][0][1],hud_message_colors[cur_textmessage][0][2],loc[0],loc[1], 0, 6.0, 12.0,0.1,0.2,-1)
show_hudmessage(0,hud_messages[cur_hudmessage][0])
if(hud_messages[cur_hudmessage][1][2]!=0)
{
set_hudmessage(hud_message_colors[cur_hudmessage][1][0],hud_message_colors[cur_textmessage][1][1],hud_message_colors[cur_textmessage][1][2],loc[0],loc[1], 0, 6.0, 12.0,0.1,0.2,-1)
show_hudmessage(0,hud_messages[cur_hudmessage][1])
}
if(hud_messages[cur_hudmessage][2][4]!=0)
{
set_hudmessage(hud_message_colors[cur_hudmessage][2][0],hud_message_colors[cur_textmessage][2][1],hud_message_colors[cur_textmessage][2][2],loc[0],loc[1], 0, 6.0, 12.0,0.1,0.2,-1)
show_hudmessage(0,hud_messages[cur_hudmessage][2])
}
if(hud_messages[cur_hudmessage][3][6]!=0)
{
set_hudmessage(hud_message_colors[cur_hudmessage][3][0],hud_message_colors[cur_textmessage][3][1],hud_message_colors[cur_textmessage][3][2],loc[0],loc[1], 0, 6.0, 12.0,0.1,0.2,-1)
show_hudmessage(0,hud_messages[cur_hudmessage][3])
}
cur_hudmessage = (cur_hudmessage + 1 ) % num_hudmessages
}

public display_textmessage()
{
new num, players[32], player
get_players(players,num,"ch")
for(new i=0;i<num;i++)
{
player = players

message_begin(MSG_ONE,saytext_msgid,{0,0,0},player)
write_byte(player)
write_string(text_messages[cur_textmessage])
message_end()
}
cur_textmessage = (cur_textmessage + 1 ) % num_textmessages
}


puteti sa scrieti cu ros ceea ce trebuie exact modificat????eu as vrea sa imi apara mesajele text(ca doar dext am pus sa apara pe sv) la un interval de 20 secunde... deci modificati cu ros in ce am scris mai sus ca contine SMA. ca sa stiu ce sa modific. ms

Re: problema cu colo_msg

Posted: Fri Feb 05, 2010 11:17 am
by create_my_ownp
Modifici liniile astea:


advertise_hud_len - Timpul dintre fiecare mesaj HUD (Default: 120.0)
advertise_text_len - Timpul dintre fiecare mesaj TEXT (Default: 200.0)
advertise_hud_loc - Localizarea mesajului HUD (1 = sus in centru | 2 = Centrul) (Default: 1)

Compilezi sma-ul si il bagi din nou

Re: problema cu colo_msg

Posted: Fri Feb 05, 2010 2:01 pm
by nam301
am rezolvat ... ms