Scripting 09 - Listening on player damage
Posted: Fri Jul 26, 2019 5:35 pm
Scripting 09 - Listening on player damage
Scripting in SFD assumes you have a fair knowledge of C#.
The following code demonstrates how to listen on player damage events in v.1.3.0.
ScriptAPI for PlayerDamageArgs:
ScriptAPI for PlayerDeathArgs:
Scripting in SFD assumes you have a fair knowledge of C#.
The following code demonstrates how to listen on player damage events in v.1.3.0.
Code: Select all
// Example script to read player damage
public void OnStartup()
{
Events.PlayerDeathCallback.Start(OnPlayerDeath);
Events.PlayerDamageCallback.Start(OnPlayerDamage);
}
public void OnPlayerDamage(IPlayer player, PlayerDamageArgs args)
{
if (args.DamageType == PlayerDamageEventType.Melee && args.SourceID != 0) {
IPlayer hitBy = Game.GetPlayer(args.SourceID);
Game.WriteToConsole(string.Format("Player {0} took {1} melee damage from player {2}", player.UniqueID, args.Damage, hitBy.UniqueID));
} else {
Game.WriteToConsole(string.Format("Player {0} took {1} {2} damage", player.UniqueID, args.Damage, args.DamageType));
}
}
public void OnPlayerDeath(IPlayer player, PlayerDeathArgs args)
{
// player just died or was removed (or both if falling outside the map while alive or gibbed while alive).
if (args.Killed) {
Game.WriteToConsole(string.Format("Player {0} died", player.UniqueID));
}
if (args.Removed) {
Game.WriteToConsole(string.Format("Player {0} removed", player.UniqueID));
}
}
► Show Spoiler
ScriptAPI for PlayerDeathArgs:
► Show Spoiler