using System; using System.Collections.Generic; using System.Linq; using System.Text; using GTANetworkAPI; using GTANetworkMethods; using reallife_gamemode.Model; using reallife_gamemode.Server.Extensions; /* * Author: balbo * * */ namespace reallife_gamemode.Server.Events { public class Death : Script { [ServerEvent(Event.PlayerDeath)] public void OnPlayerDeath(Client player, Client killer, uint reason) { NAPI.Chat.SendChatMessageToPlayer(player, "Du bist durch " + killer.Name + " gestorben: " + reason.ToString()); var killerId = 0; var killerPosX = 0f; var killerPosY = 0f; var killerPosZ = 0f; var killerHeading = 0f; if (killer.IsNull) { killerId = -1; killerPosX = -1; killerPosY = -1; killerPosZ = -1; killerHeading = -1; } else { killerId = killer.GetUser().Id; killerPosX = killer.Position.X; killerPosY = killer.Position.Y; killerPosZ = killer.Position.Z; killerHeading = killer.Heading; } using (var userDeath = new DatabaseContext()) { var dead = new Logs.Death { VictimId = player.GetUser().Id, KillerId = killerId, KillerPositionX = killerPosX, KillerPositionY = killerPosY, KillerPositionZ = killerPosZ, KillerHeading = killerHeading, VictimPositionX = player.Position.X, VictimPositionY = player.Position.Y, VictimPositionZ = player.Position.Z, VictimHeading = player.Heading, CauseOfDeath = reason.ToString()}; userDeath.DeathLogs.Add(dead); userDeath.SaveChanges(); } } } }