diff --git a/ReallifeGamemode.Server/Services/NotificationService.cs b/ReallifeGamemode.Server/Services/NotificationService.cs
index 05ca5f6a..649e825d 100644
--- a/ReallifeGamemode.Server/Services/NotificationService.cs
+++ b/ReallifeGamemode.Server/Services/NotificationService.cs
@@ -22,14 +22,14 @@ namespace ReallifeGamemode.Server.Services
///
/// Der Spieler, der die Benachrichtigung erhalten soll
/// Die Nachricht, die dem Spieler als Benachrichtigung zugestellt werden soll
- public static void SendNotification(Player player, string message)
+ public static void SendNotification(Player player, string message, bool flashing = true)
{
if (player == null || !player.IsLoggedIn())
{
return;
}
- player.SendNotification(message);
+ player.SendNotification(message, flashing);
}
///
@@ -37,35 +37,35 @@ namespace ReallifeGamemode.Server.Services
///
/// Der Spieler, der die Benachrichtigung erhalten soll
/// Die Nachricht, die dem Spieler als Benachrichtigung zugestellt werden soll
- public static void SendErrorNotification(Player player, string message)
+ public static void SendErrorNotification(Player player, string message, bool flashing = true)
{
if (message.EndsWith("."))
{
message.Substring(0, message.Length - 1);
}
- SendNotification(player, $"~r~Fehler:~n~~s~{message}");
+ SendNotification(player, $"~r~Fehler:~n~~s~{message}", flashing);
}
///
/// Sendet eine Benachrichtigung an alle Spieler
///
/// Die Nachricht, die dem Spieler als Benachrichtigung zugestellt werden soll
- public static void SendServerNotification(string message) => NAPI.Pools.GetAllPlayers().ForEach(player => SendNotification(player, message));
+ public static void SendServerNotification(string message, bool flashing = true) => NAPI.Pools.GetAllPlayers().ForEach(player => SendNotification(player, message, flashing));
///
/// Sendet eine Benachrichtigung an die Mitglieder einer Fraktion
///
/// Die Fraktion, deren Mitglieder diese Benachrichtigung erhalten soll
/// Die Nachricht, die den Mitgliedern als Benachrichtigung zugestellt werden soll
- public static void SendFactionNotification(Faction faction, string message) => SendFactionNotification(new List() { faction }, message);
+ public static void SendFactionNotification(Faction faction, string message, bool flashing = true) => SendFactionNotification(new List() { faction }, message, flashing);
///
/// Sendet eine Benachrichtigung an die Mitglieder mehrerer Fraktionen
///
/// Die Liste an Fraktionen, deren Mitglieder diese Benachrichtigung erhalten sollen
/// Die Nachricht, die den Mitgliedern als Benachrichtigung zugestellt werden soll
- public static void SendFactionNotification(List factions, string message)
+ public static void SendFactionNotification(List factions, string message, bool flashing = true)
{
foreach (Player player in NAPI.Pools.GetAllPlayers())
{
@@ -74,7 +74,7 @@ namespace ReallifeGamemode.Server.Services
if (userFaction != null && factions.Find(faction => faction.Id == userFaction.Id) != null)
{
- SendNotification(player, message);
+ SendNotification(player, message, flashing);
}
}
}
@@ -83,30 +83,30 @@ namespace ReallifeGamemode.Server.Services
/// Sendet eine Nachricht an die Mitglieder der Strafverfolgungsbehörden
///
/// Die Nachricht, die den Beamten als Benachrichtigung zugestellt werden soll
- public static void SendPolicingNotification(string message) => SendFactionNotificationByFactionIds(new List() { 1, 3 }, $"!{{#8181E9}}HQ-Meldung:~n~~s~{message}");
+ public static void SendPolicingNotification(string message, bool flashing = true) => SendFactionNotificationByFactionIds(new List() { 1, 3 }, $"!{{#8181E9}}HQ-Meldung:~n~~s~{message}", flashing);
///
/// Sendet eine Benachrichtigung an alle Spieler mit einem bestimmten Admin-Level
///
/// Das Admin-Level, dass für den Erhalt dieser Benachrichtigung erforderlich ist
/// Die Nachricht, die den Spielern als Benachrichtigung zugestellt werden soll
- public static void SendAdminLevelNotification(AdminLevel minLevel, string message)
+ public static void SendAdminLevelNotification(AdminLevel minLevel, string message, bool flashing = true)
{
NAPI.Pools.GetAllPlayers()
.Where(player => player.IsLoggedIn())
.Where(player => player.GetUser().IsAdmin(minLevel)).ToList()
- .ForEach(player => SendNotification(player, message));
+ .ForEach(player => SendNotification(player, message, flashing));
}
///
/// Sendet eine Benachrichtigung an alle Spieler, die sich im T-Support befinden
///
/// Die Nachricht, die den Spielern als Benachrichtigung zugestellt werden soll
- public static void SendDutyTeamMemberNotification(string message)
+ public static void SendDutyTeamMemberNotification(string message, bool flashing = true)
{
NAPI.Pools.GetAllPlayers()
.Where(player => player.IsAdminDuty()).ToList()
- .ForEach(player => SendNotification(player, message));
+ .ForEach(player => SendNotification(player, message, flashing));
}
///
@@ -115,11 +115,11 @@ namespace ReallifeGamemode.Server.Services
/// Position, von der die Distanz ermittelt wird
/// Distanz, bis zu welcher Spieler benachrichtigt werden
/// Die Nachricht, die dem Spieler als Benachrichtigung zugestellt werden soll
- internal static void SendRangeNotification(Vector3 position, int range, string message)
+ internal static void SendRangeNotification(Vector3 position, int range, string message, bool flashing = true)
{
NAPI.Pools.GetAllPlayers()
.Where(player => player.Position.DistanceTo(position) <= range).ToList()
- .ForEach(player => SendNotification(player, message));
+ .ForEach(player => SendNotification(player, message, flashing));
}
///
@@ -127,11 +127,11 @@ namespace ReallifeGamemode.Server.Services
///
/// Die Gruppe, deren Mitglieder diese Benachrichtigung erhalten soll
/// Die Nachricht, die den Mitgliedern als Benachrichtigung zugestellt werden soll
- public static void SendGroupNotification(Group group, string message)
+ public static void SendGroupNotification(Group group, string message, bool flashing = true)
{
NAPI.Pools.GetAllPlayers()
.Where(player => player.GetUser().Group.Id == group.Id).ToList()
- .ForEach(player => SendNotification(player, $"!{{FF8080}}Gruppe:~n~~s~{message}"));
+ .ForEach(player => SendNotification(player, $"!{{FF8080}}Gruppe:~n~~s~{message}", flashing));
}
///
@@ -139,13 +139,13 @@ namespace ReallifeGamemode.Server.Services
///
/// Der Beruf, dessen Arbeiter diese Benachrichtigung erhalten soll
/// Die Nachricht, die den Mitgliedern als Benachrichtigung zugestellt werden soll
- public static void SendJobNotification(JobBase job, string message) => job.GetUsersInJob().ForEach(player => SendNotification(player, message));
+ public static void SendJobNotification(JobBase job, string message, bool flashing = true) => job.GetUsersInJob().ForEach(player => SendNotification(player, message, flashing));
- internal static void SendFactionNotificationByFactionIds(List factionIds, string message)
+ internal static void SendFactionNotificationByFactionIds(List factionIds, string message, bool flashing = true)
{
using (var dbContext = new DatabaseContext())
{
- SendFactionNotification(dbContext.Factions.Where(faction => factionIds.Contains(faction.Id)).ToList(), message);
+ SendFactionNotification(dbContext.Factions.Where(faction => factionIds.Contains(faction.Id)).ToList(), message, flashing);
}
}
}