View Full Version : Custom deathmsg
anakin_cstrike
01-03-2012, 12:03
I wanna show on hud "killer weapon victim" like a default deathmsg
I tried this
new Handle:HookDeathMsg = CreateEvent ( "player_death", true );
SetEventInt ( HookDeathMsg, "userid", i_Player );
SetEventInt ( HookDeathMsg, "attacker", i_Index );
SetEventString ( HookDeathMsg, "weapon", "weapon" );
FireEvent ( HookDeathMsg, true );
but it doesn't show anything
Mitchell
01-03-2012, 15:34
What do you mean?
lokizito
01-03-2012, 20:18
I wanna show on hud "killer weapon victim" like a default deathmsg
I tried this
new Handle:HookDeathMsg = CreateEvent ( "player_death", true );
SetEventInt ( HookDeathMsg, "userid", i_Player );
SetEventInt ( HookDeathMsg, "attacker", i_Index );
SetEventString ( HookDeathMsg, "weapon", "weapon" );
FireEvent ( HookDeathMsg, true );
but it doesn't show anything
Are you using in i_Player and i_Index player's userid's?
anakin_cstrike
01-04-2012, 08:37
yes...
There is tutorial in Alliedmodders WIki about this.
- Your problem is that you use player indexs (what are zero to server maxplayer)
Creating or edit event, you need use players #userid, this is uniq number everytime when player connect to server (#zero to #milion or something)
Try again look this
2 Sending Events (http://wiki.alliedmods.net/Events_%28SourceMod_Scripting%29#Sending_Even ts)
here example...
#include <sdktools>
public OnPluginStart()
{
RegConsoleCmd("sm_test", test);
}
public Action:test(client, args)
{
new target = GetClientAimTarget(client, true);
if(target != -1) // You aim to someone
{
new Handle:event = CreateEvent("player_death"); // Try create event
if (event == INVALID_HANDLE) // event not succeed, not exist, wrong event name !
{
return Plugin_Handled;
}
SetEventInt(event, "userid", GetClientUserId(target)); // victim
SetEventInt(event, "attacker", GetClientUserId(client)); // attacker
SetEventString(event, "weapon", "knife"); // weapon_* name
SetEventBool(event, "headshot", true); // headshot true or false
FireEvent(event);
}
else // Suicide
{
new Handle:event = CreateEvent("player_death"); // Try create event
if (event == INVALID_HANDLE) // event not succeed, not exist, wrong event name !
{
return Plugin_Handled;
}
SetEventInt(event, "userid", GetClientUserId(client)); // victim
SetEventInt(event, "attacker", GetClientUserId(client)); // attacker
SetEventString(event, "weapon", "knife"); // weapon_* name
SetEventBool(event, "headshot", true); // headshot true or false
FireEvent(event);
}
return Plugin_Handled; // When using commands, this stop show "unknow command" player console
}
*edit
You get better results when you fill all event outputs, or else it will show event console message side by side...
It's valide no ?
new Handle:newEvent = CreateEvent("player_death", true);
if (newEvent == INVALID_HANDLE)
{
return Plugin_Handled;
}
SetEventInt(newEvent, "index", 0);
SetEventInt(newEvent, "userid", 0);
SetEventInt(newEvent, "attacker", 0);
SetEventString(newEvent, "weapon", "");
SetEventBool(newEvent, "headshot", false);
SetEventInt(newEvent, "dominated", 0);
SetEventInt(newEvent, "revenge", 0);
FireEvent(newEvent);
anakin_cstrike
01-04-2012, 12:41
works, thanks
vBulletin® v3.8.7, Copyright ©2000-2024, vBulletin Solutions, Inc.