Helló! Valaki megtudná nekem mondani ,hogy mi a hiba? Tudom sokszor elmondtátok már ,de vagy én vagyok nagyon hülye vagy nem tudom.. Sma: [ablak]SMA Forráskód: [ Mindet kijelol ]/* * _______ _ _ __ __ * | _____/ | | | | \ \ __ / / * | | | | | | | | / \ | | * | | | |____| | | |/ __ \| | * | | ___ | ______ | | / \ | * | | |_ | | | | | | / \ | * | | | | | | | | | | | | * | |____| | | | | | | | | | * |_______/ |_| |_| \_/ \_/ * * * * 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","200.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",0,"",0,"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[i] 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 } stock print_color(const id, const input[], any:...) { new count = 1, players[32] static msg[191] vformat(msg, 190, input, 3) replace_all(msg, 190, "!g", "^4") replace_all(msg, 190, "!y", "^1") replace_all(msg, 190, "!t", "^3") replace_all(msg, 190, "á", "á") replace_all(msg, 190, "é", "Ă©") replace_all(msg, 190, "í", "Ă") replace_all(msg, 190, "ó", "Ăł") replace_all(msg, 190, "ö", "ö") replace_all(msg, 190, "ő", "Ĺ‘") replace_all(msg, 190, "ú", "Ăş") replace_all(msg, 190, "ü", "ĂĽ") replace_all(msg, 190, "ű", "ű") replace_all(msg, 190, "Á", "Ă") replace_all(msg, 190, "É", "É") replace_all(msg, 190, "Í", "ĂŤ") replace_all(msg, 190, "Ó", "Ă“") replace_all(msg, 190, "Ö", "Ă–") replace_all(msg, 190, "Ő", "Ĺ") replace_all(msg, 190, "Ú", "Ăš") replace_all(msg, 190, "Ü", "Ăś") replace_all(msg, 190, "Ű", "Ĺ°") 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() } } } return PLUGIN_HANDLED }[/ablak] Ini-t probáltam ANSi Ben és UTF 8 -ban ,de nem jó
_________________
|