AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   [HELP] print message in chat (https://forums.alliedmods.net/showthread.php?t=83060)

diviqt 01-03-2009 15:54

[HELP] print message in chat
 
Code:

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])
                {
                        client_cmd(iKiller, "spk %s", g_szSnds[i]);
                        client_print(iKiller, print_chat, g_szMsgs[i]);
                }
        }
 
        g_bMultiKill[iKiller] = true;
 
        set_task(KILL_TIME, "taskEndMultiKills", iKiller);

i debug and in console i get this

L 01/03/2009 - 22:44:46: String formatted incorrectly - parameter 4 (total 3)
L 01/03/2009 - 22:44:46: [AMXX] Displaying debug trace (plugin "killstreak_advanced.amxx")
L 01/03/2009 - 22:44:46: [AMXX] Run time error 25: parameter error
L 01/03/2009 - 22:44:46: [AMXX] [0] FuCkErS_killstreak.sma::client_death (line 221)

this is line 221 client_print(iKiller, print_chat, g_szMsgs[i]);

diviqt 01-03-2009 20:08

Re: help with code pls
 
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 Double Kill!",
        "made Triple Kill!"
}
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])
                {
                        client_cmd(iKiller, "spk %s", g_szSnds[i]);
                        client_print(iKiller, print_chat, 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");
}

can someone tell me what i have to put here

Code:

client_print(iKiller, print_chat, g_szMsgs[i]);
so i can make it display this messages

Code:

new g_szMsgs[][] =
{
        "name made Double Kill!",
        "name made Triple Kill!"
}

name = players name

Emp` 01-03-2009 22:46

Re: help with code pls
 
Code:

new name[32];
get_user_name(iKiller, name, 31);
client_print(iKiller, print_chat, "%s %s", name, g_szMsgs[i]);

and leave g_szMsgs as
Code:

new g_szMsgs[][] =
{
        "made Double Kill!",
        "made Triple Kill!"
}


Exolent[jNr] 01-03-2009 23:23

Re: help with code pls
 
1. Your topic's title must be descriptive. Fix it before you post again.

2. If you have the last post in the topic, edit that post instead of posting another.

diviqt 01-04-2009 06:40

Re: [HELP] print message in chat
 
Thanks Emp` it works now :)

diviqt 01-04-2009 12:30

Re: [HELP] print message in chat
 
Is it possible to make the Double Kill and Triple Kill messages in colors ?

Exolent[jNr] 01-04-2009 12:31

Re: [HELP] print message in chat
 
Locked due to double post after warning.


All times are GMT -4. The time now is 09:07.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.