Re: [HELP] How to make chat message in color
PHP Code:
/* KillStreak Advanced */ #include <amxmodx> #include <amxmisc> #include <csx> #define PLUGIN "KillStreak Advanced" #define VERSION "1.0" #define AUTHOR "AUTHOR" /*#define TASK_CLEAR_KILL 100*/ #define LEVELS 13 /*new kill[33][24];*/ new kills[33] = {0,...}; new deaths[33] = {0,...}; #define MAX_PLAYERS 32 #define KILL_TIME 5.0 new hsenable, knifeenable, firstbloodenable, nadecvar, suicidecvar, rnstartcvar, killstreaktype; new firstblood; new g_szSnds[][] = { "fuckers/doublekill.wav", "fuckers/triplekill.wav" } new g_szMsgs[][] = { "made D O U B L E K I L L !!!", "made T R I P L E K I L L !!!" } new g_iLvls[] = {2, 3}; new bool:g_bMultiKill[MAX_PLAYERS + 1]; new g_iKills[MAX_PLAYERS + 1]; new hsmessages[][] = { "%s removed %s head !!", "%s had a superb aim with %s !", "%s Made a superb headshot to %s!", "%s down %s with a superb headshot !" } new hslist[][] = { "fuckers/headshot1", "fuckers/headshot2" } new knmessages[][] = { "%s sliced and diced %s", "%s pulled out knife and gutted %s", "%s knifed %s" } new knlist[][] = { "fuckers/knife1", "fuckers/knife2", "fuckers/knife3" } new fbmessages[][] = { "%s : First Blood !", "%s Drew First Blood !!!", "%s First Shot on tha Mark !" } new fblist[][] = { "fuckers/firstblood1", "fuckers/firstblood2", "fuckers/firstblood3" } new nademessages[][] = { "%s got a big explosion for %s", "%s made a precision throw to %s", "%s is good grenadier ! i think he back from the war ..." } new suicidemess[][] = { "%s knows how the kill command works!", "%s prefer to kill himself...rather than die on battle land" } new suicidelist[][] = { "fuckers/suicide1", "fuckers/suicide2", "fuckers/suicide3", "fuckers/suicide4" } new levels[13] = {4, 5, 6, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25}; new sounds[13][] = { "fuckers/multikill", "fuckers/ultrakill", "fuckers/killingspree", "fuckers/megakill", "fuckers/holyshit", "fuckers/ludicrouskill", "fuckers/rampage", "fuckers/dominating", "fuckers/unstoppable", "fuckers/monsterkill", "fuckers/wickedsick", "fuckers/godlike", "fuckers/ownage" } new messages[13][] = { "%s: Multi Kill !", "%s: Ultra Kill !", "%s: Killing Spree !", "%s: Mega Kill !", "%s: Holy Shit !", "%s: Ludicrous Kill !", "%s: Rampage !", "%s: Dominating !", "%s: Unstoppable !", "%s: M o n s t e R K i L L ! ! !", "%s: W I C K E D S I C K ! ! !", "%s: G O D L I K E ! ! !", "%s IS OWNING ! ! !" } new preplist[][] = { "fuckers/prepare1", "fuckers/prepare2", "fuckers/prepare3" } public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("ResetHUD", "reset_hud", "b"); register_event("HLTV","rnstart","a", "1=0", "2=0"); register_event("DeathMsg", "eventDeathMsg", "a", "1>0"); killstreaktype = register_cvar("fk_killstreak_advanced", "3"); hsenable = register_cvar("fk_killstreak_hs","1"); knifeenable = register_cvar("fk_killstreak_knife","1"); firstbloodenable = register_cvar("fk_firstblood","1"); nadecvar = register_cvar("fk_nade_events","1"); suicidecvar = register_cvar("fk_suicide_events","1"); rnstartcvar = register_cvar("fk_roundcout_sounds","1"); } public eventDeathMsg() { new iKiller = read_data(1); if (iKiller == read_data(2)) { g_iKills[iKiller] = 0; return; } g_iKills[iKiller] += 1; for (new i = 0; i < sizeof(g_szSnds); i++) { if (g_bMultiKill[iKiller] && g_iKills[iKiller] == g_iLvls[i]) { new name[32]; get_user_name(iKiller, name, 31); client_cmd(iKiller, "spk %s", g_szSnds[i]); client_print(iKiller, print_chat, "%s %s", name, g_szMsgs[i]); } } g_bMultiKill[iKiller] = true; set_task(KILL_TIME, "taskEndMultiKills", iKiller); } public taskEndMultiKills(id) { g_iKills[id] = 0; g_bMultiKill[id] = false; } public client_death(killer,victim,weapon,hitplace,TK) { if(!killer || !victim) return; static kname[32], vname[32]; get_user_name(killer,kname,31); get_user_name(victim,vname,31); if(hitplace == HIT_HEAD && get_pcvar_num(hsenable) == 1 ) { set_hudmessage(0, 0, 255, -1.0, 0.20, 0, 6.0, 6.0); show_hudmessage(0, hsmessages[random(sizeof hsmessages)], kname, vname); client_cmd(0,"spk %s",hslist[random(sizeof hslist)]); } if(weapon == CSW_KNIFE && get_pcvar_num(knifeenable) == 1 ) { set_hudmessage(255, 0, 255, -1.0, 0.20, 0, 6.0, 6.0); show_hudmessage(0, knmessages[random(sizeof knmessages)], kname, vname); client_cmd(0,"spk %s",knlist[random(sizeof knlist)]); } if(firstblood && killer != victim && get_pcvar_num(firstbloodenable) ==1) { firstblood = 0; set_hudmessage(255, 0, 255, -1.0, 0.20, 0, 6.0, 6.0); show_hudmessage(0, fbmessages[random(sizeof fbmessages)], kname); client_cmd(0,"spk %s",fblist[random(sizeof fblist)]); } if(weapon == CSW_HEGRENADE && get_pcvar_num(nadecvar) == 1) { set_hudmessage(255, 0, 255, -1.0, 0.20, 0, 6.0, 6.0); show_hudmessage(0,nademessages[random(sizeof nademessages)],kname,vname); client_cmd(0,"spk FuCkErS/grenade"); } if(killer == victim && get_pcvar_num(suicidecvar) ==1) { set_hudmessage(255, 0, 255, -1.0, 0.20, 0, 6.0, 6.0); show_hudmessage(0,suicidemess[random(sizeof suicidemess)], vname); client_cmd(0,"spk %s",suicidelist[random(sizeof suicidelist)]); } kills[killer] += 1; kills[victim] = 0; deaths[killer] = 0; deaths[victim] += 1; for (new i = 0; i < LEVELS; i++) { if (kills[killer] == levels[i]) { announce(killer, i); return; } } } announce(killer, level) { static name[33]; new r = random(256); new g = random(256); new b = random(256); get_user_name(killer, name, 32); set_hudmessage(r,g,b, 0.05, 0.65, 2, 0.02, 6.0, 0.01, 0.1, 2); if( (get_pcvar_num(killstreaktype) <= 0 ) || get_pcvar_num(killstreaktype) > 3) return 0; switch(get_pcvar_num(killstreaktype)) { case 1: { show_hudmessage(0, messages[level], name); return 0; } case 2: { client_cmd(0, "spk %s", sounds[level]); return 0; } case 3: { show_hudmessage(0, messages[level], name); client_cmd(0, "spk %s", sounds[level]); return 0; } } return 0; } public reset_hud(id) { firstblood = 1; if (is_mode_set(16)) if (kills[id] > levels[0]) client_print(id, print_chat, "* You are on a killstreak with %d kills.", kills[id]); else if (deaths[id] > 1) client_print(id, print_chat, "* Take care, you are on a deathstreak with %d deaths in a row.", deaths[id]); } public rnstart(id) { if(get_pcvar_num(rnstartcvar) == 1) { firstblood = 1; set_hudmessage(255, 0, 255, -1.0, 0.20, 0, 6.0, 6.0); show_hudmessage(0, "Prepare To Fight!"); client_cmd(0,"spk %s",preplist[random(sizeof preplist)]); } } public client_connect(id) { kills[id] = 0; deaths[id] = 0; } is_mode_set(bits) { new mode[9]; get_cvar_string("fk_killstreak_advanced", mode, 8); return read_flags(mode) & bits; } public plugin_precache() { precache_sound("fuckers/multikill.wav"); precache_sound("fuckers/ultrakill.wav"); precache_sound("fuckers/killingspree.wav"); precache_sound("fuckers/megakill.wav"); precache_sound("fuckers/holyshit.wav"); precache_sound("fuckers/ludicrouskill.wav"); precache_sound("fuckers/rampage.wav"); precache_sound("fuckers/dominating.wav"); precache_sound("fuckers/unstoppable.wav"); precache_sound("fuckers/monsterkill.wav"); precache_sound("fuckers/wickedsick.wav"); precache_sound("fuckers/godlike.wav"); precache_sound("fuckers/headshot1.wav"); precache_sound("fuckers/headshot2.wav"); precache_sound("fuckers/knife1.wav"); precache_sound("fuckers/knife2.wav"); precache_sound("fuckers/firstblood1.wav"); precache_sound("fuckers/firstblood2.wav"); precache_sound("fuckers/firstblood3.wav"); precache_sound("fuckers/prepare1.wav"); precache_sound("fuckers/prepare2.wav"); precache_sound("fuckers/prepare3.wav"); precache_sound("fuckers/grenade.wav"); precache_sound("fuckers/suicide1.wav"); precache_sound("fuckers/suicide2.wav"); precache_sound("fuckers/suicide3.wav"); precache_sound("fuckers/suicide4.wav"); precache_sound("fuckers/doublekill.wav"); precache_sound("fuckers/triplekill.wav"); }
i want to make this messages
PHP Code:
new g_szMsgs[][] = { "made D O U B L E K I L L !!!", "made T R I P L E K I L L !!!" }
when someone do double kill or triple kill to be displayed in chat with his team color
|