[HOTFIX] fix some nullreferences
This commit is contained in:
@@ -238,8 +238,12 @@ namespace ReallifeGamemode.Server.Events
|
|||||||
}
|
}
|
||||||
player.RemoveAllWeapons();
|
player.RemoveAllWeapons();
|
||||||
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
|
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
|
||||||
Player medicPlayer = PlayerService.GetPlayerByNameOrId(task.MedicName);
|
|
||||||
Medic.RemoveTaskFromList(task);
|
if(task != null)
|
||||||
|
{
|
||||||
|
Player medicPlayer = PlayerService.GetPlayerByNameOrId(task.MedicName);
|
||||||
|
Medic.RemoveTaskFromList(task);
|
||||||
|
}
|
||||||
|
|
||||||
player.SafeTeleport(new Vector3(-495.45, -336.33, 34.5), 0, true);
|
player.SafeTeleport(new Vector3(-495.45, -336.33, 34.5), 0, true);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,6 +30,13 @@ namespace ReallifeGamemode.Server.Events
|
|||||||
public void OnPlayerDisconnected(Player player, DisconnectionType type, string reason)
|
public void OnPlayerDisconnected(Player player, DisconnectionType type, string reason)
|
||||||
{
|
{
|
||||||
if (!player.IsLoggedIn()) return;
|
if (!player.IsLoggedIn()) return;
|
||||||
|
using var saveUser = new DatabaseContext();
|
||||||
|
User user = player.GetUser(saveUser);
|
||||||
|
|
||||||
|
if(user == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (type == DisconnectionType.Left)
|
if (type == DisconnectionType.Left)
|
||||||
{
|
{
|
||||||
@@ -49,7 +56,7 @@ namespace ReallifeGamemode.Server.Events
|
|||||||
GlobalHelper.DutyAdmins.Remove(player);
|
GlobalHelper.DutyAdmins.Remove(player);
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
if (player.GetUser().IsAdmin(AdminLevel.MAPPING))
|
if (user.IsAdmin(AdminLevel.MAPPING))
|
||||||
{
|
{
|
||||||
ChatService.BroadcastAdmin("!{#FFFF00}*** " + player.Name + " hat den Server verlassen", AdminLevel.MAPPING);
|
ChatService.BroadcastAdmin("!{#FFFF00}*** " + player.Name + " hat den Server verlassen", AdminLevel.MAPPING);
|
||||||
}
|
}
|
||||||
@@ -74,8 +81,8 @@ namespace ReallifeGamemode.Server.Events
|
|||||||
{
|
{
|
||||||
Report.Report.listReports.Remove(temp);
|
Report.Report.listReports.Remove(temp);
|
||||||
|
|
||||||
Player user = PlayerService.GetPlayerByNameOrId(temp.getUser());
|
Player ticketUser = PlayerService.GetPlayerByNameOrId(temp.getUser());
|
||||||
user.SendChatMessage("!{#008fff}[REPORT]!{#FFFFFF} Chat beendet. Der Admin hat den Server verlassen");
|
ticketUser.SendChatMessage("!{#008fff}[REPORT]!{#FFFFFF} Chat beendet. Der Admin hat den Server verlassen");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -124,23 +131,19 @@ namespace ReallifeGamemode.Server.Events
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
using (var saveUser = new DatabaseContext())
|
Vector3 pos = player.Position;
|
||||||
|
|
||||||
|
user.PositionX = pos.X;
|
||||||
|
user.PositionY = pos.Y;
|
||||||
|
user.PositionZ = pos.Z;
|
||||||
|
saveUser.SaveChanges();
|
||||||
|
user.Dead = player.HasData("isDead") ? (bool)player.GetData<bool>("isDead") : false;
|
||||||
|
|
||||||
|
if (user.Wanteds > 0)
|
||||||
{
|
{
|
||||||
var user = player.GetUser(saveUser);
|
ChatService.HQMessage("Der Straftäter " + user.Name + " ist vom Radar verschwunden");
|
||||||
Vector3 pos = player.Position;
|
|
||||||
|
|
||||||
user.PositionX = pos.X;
|
|
||||||
user.PositionY = pos.Y;
|
|
||||||
user.PositionZ = pos.Z;
|
|
||||||
saveUser.SaveChanges();
|
|
||||||
user.Dead = player.HasData("isDead") ? (bool)player.GetData<bool>("isDead") : false;
|
|
||||||
|
|
||||||
if (user.Wanteds > 0)
|
|
||||||
{
|
|
||||||
ChatService.HQMessage("Der Straftäter " + player.GetUser().Name + " ist vom Radar verschwunden");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
player.SetData("isLoggedIn", false);
|
player.SetData("isLoggedIn", false);
|
||||||
player.TriggerEvent("CLIENT:DestroyPed", 1);
|
player.TriggerEvent("CLIENT:DestroyPed", 1);
|
||||||
player.TriggerEvent("CLIENT:DestroyPed", 2);
|
player.TriggerEvent("CLIENT:DestroyPed", 2);
|
||||||
|
|||||||
@@ -31,8 +31,9 @@ namespace ReallifeGamemode.Server.Extensions
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static User GetUser(this Player client, DatabaseContext context = null)
|
public static User GetUser(this Player client, DatabaseContext context = null)
|
||||||
{
|
{
|
||||||
context = context ?? new DatabaseContext();
|
|
||||||
if (!client.IsLoggedIn()) return null;
|
if (!client.IsLoggedIn()) return null;
|
||||||
|
|
||||||
|
context = context ?? new DatabaseContext();
|
||||||
return context
|
return context
|
||||||
.Users
|
.Users
|
||||||
.Include(u => u.Faction)
|
.Include(u => u.Faction)
|
||||||
|
|||||||
Reference in New Issue
Block a user