set blip color in one function

This commit is contained in:
hydrant
2021-04-05 16:26:12 +02:00
parent 072be07e98
commit f8237c84bb
7 changed files with 134 additions and 315 deletions

View File

@@ -276,7 +276,8 @@ namespace ReallifeGamemode.Server.Commands
[Command("tsupport", "~m~Benutzung: ~s~/tsupport", Alias = "ts")] [Command("tsupport", "~m~Benutzung: ~s~/tsupport", Alias = "ts")]
public void CmdAdminTSupport(Player player) public void CmdAdminTSupport(Player player)
{ {
if (!player.GetUser()?.IsAdmin(AdminLevel.SUPPORTER) ?? true) User user = player.GetUser();
if (user.IsAdmin(AdminLevel.SUPPORTER))
{ {
ChatService.NotAuthorized(player); ChatService.NotAuthorized(player);
return; return;
@@ -289,51 +290,14 @@ namespace ReallifeGamemode.Server.Commands
if (player.GetData<bool>("SAdminduty") == false) if (player.GetData<bool>("SAdminduty") == false)
{ {
player.SetData("SAdminduty", true); player.SetData("SAdminduty", true);
player.SetSharedData("blipColor", 30);
player.SetSharedData("nameTagColor", -2);
ChatService.SendMessage(player, "~g~ ** " + "Du befindest dich im T-Support"); ChatService.SendMessage(player, "~g~ ** " + "Du befindest dich im T-Support");
} }
else else
{ {
player.SetData("SAdminduty", false); player.SetData("SAdminduty", false);
ChatService.SendMessage(player, "!{#ee4d2e}** " + "Du befindest dich nicht mehr im T-Support"); ChatService.SendMessage(player, "!{#ee4d2e}** " + "Du befindest dich nicht mehr im T-Support");
using (var dbContext = new DatabaseContext())
{
User targetUser = player.GetUser(dbContext);
switch (targetUser.FactionId)
{
case null:
player.SetSharedData("blipColor", 0);
player.SetSharedData("nameTagColor", 0);
break;
case 0:
player.SetSharedData("blipColor", 0);
player.SetSharedData("nameTagColor", 0);
break;
case 8:
player.SetSharedData("blipColor", 83);
player.SetSharedData("nameTagColor", 8);
break;
case 7:
player.SetSharedData("blipColor", 52);
player.SetSharedData("nameTagColor", 7);
break;
case 4:
player.SetSharedData("blipColor", 5);
player.SetSharedData("nameTagColor", 4);
break;
case 9:
player.SetSharedData("blipColor", 25);
player.SetSharedData("nameTagColor", 9);
break;
}
player.SetSharedData("nameTagColor", targetUser.FactionId);
}
} }
user.SetBlipAndNametagColor();
} }
[Command("aduty", "~m~Benutzung: ~s~/aduty")] [Command("aduty", "~m~Benutzung: ~s~/aduty")]
public void CmdAdminAduty(Player player) public void CmdAdminAduty(Player player)
@@ -1498,37 +1462,12 @@ namespace ReallifeGamemode.Server.Commands
} }
ChatService.SendMessage(target, "!{#8181E9}Deine Akte wurde vom Admin " + player.Name + " gelöscht. Grund: " + reason); ChatService.SendMessage(target, "!{#8181E9}Deine Akte wurde vom Admin " + player.Name + " gelöscht. Grund: " + reason);
ChatService.BroadcastFaction("!{#8181E9}HQ: Die Akte von " + target.Name + " wurde vom Admin " + player.Name + " gelöscht. Grund: " + reason + ".", new List<int>() { 1, 3 }); ChatService.BroadcastFaction("!{#8181E9}HQ: Die Akte von " + target.Name + " wurde vom Admin " + player.Name + " gelöscht. Grund: " + reason + ".", new List<int>() { 1, 3 });
switch (targetUser.FactionId)
{
case null:
target.SetSharedData("blipColor", 0);
target.SetSharedData("nameTagColor", 0);
break;
case 0:
target.SetSharedData("blipColor", 0);
target.SetSharedData("nameTagColor", 0);
break;
case 8:
target.SetSharedData("blipColor", 83);
target.SetSharedData("nameTagColor", 8);
break;
case 7:
target.SetSharedData("blipColor", 52);
target.SetSharedData("nameTagColor", 7);
break;
case 4:
target.SetSharedData("blipColor", 5);
target.SetSharedData("nameTagColor", 4);
break;
case 9:
target.SetSharedData("blipColor", 25);
target.SetSharedData("nameTagColor", 9);
break;
}
target.TriggerEvent("jailTime", 0); target.TriggerEvent("jailTime", 0);
targetUser.Wanteds = 0; targetUser.Wanteds = 0;
targetUser.SetBlipAndNametagColor();
dbContext.SaveChanges(); dbContext.SaveChanges();
} }
} }
@@ -2494,37 +2433,7 @@ namespace ReallifeGamemode.Server.Commands
} }
u.FactionLeader = false; u.FactionLeader = false;
switch (u.FactionId) u.SetBlipAndNametagColor();
{
case null:
target.SetSharedData("blipColor", 0);
target.SetSharedData("nameTagColor", 0);
break;
case 0:
target.SetSharedData("blipColor", 0);
target.SetSharedData("nameTagColor", 0);
break;
case 8:
target.SetSharedData("blipColor", 83);
target.SetSharedData("nameTagColor", 8);
break;
case 7:
target.SetSharedData("blipColor", 52);
target.SetSharedData("nameTagColor", 7);
break;
case 4:
target.SetSharedData("blipColor", 5);
target.SetSharedData("nameTagColor", 4);
break;
case 9:
target.SetSharedData("blipColor", 25);
target.SetSharedData("nameTagColor", 9);
break;
}
dbContext.SaveChanges(); dbContext.SaveChanges();
} }
} }
@@ -2567,36 +2476,7 @@ namespace ReallifeGamemode.Server.Commands
ChatService.SendMessage(player, "~b~[ADMIN]~s~ Du hast hast den Spieler ~y~" + target.Name + "~s~ zum Leader der Fraktion ~o~" + f.Name + "~s~ ernannt."); ChatService.SendMessage(player, "~b~[ADMIN]~s~ Du hast hast den Spieler ~y~" + target.Name + "~s~ zum Leader der Fraktion ~o~" + f.Name + "~s~ ernannt.");
ChatService.SendMessage(target, "~b~[ADMIN]~s~ Du wurdest von ~y~" + player.Name + "~s~ zum Leader der Fraktion ~o~" + f.Name + "~s~ ernannt."); ChatService.SendMessage(target, "~b~[ADMIN]~s~ Du wurdest von ~y~" + player.Name + "~s~ zum Leader der Fraktion ~o~" + f.Name + "~s~ ernannt.");
switch (u.FactionId) u.SetBlipAndNametagColor();
{
case null:
target.SetSharedData("blipColor", 0);
target.SetSharedData("nameTagColor", 0);
break;
case 0:
target.SetSharedData("blipColor", 0);
target.SetSharedData("nameTagColor", 0);
break;
case 8:
target.SetSharedData("blipColor", 83);
target.SetSharedData("nameTagColor", 8);
break;
case 7:
target.SetSharedData("blipColor", 52);
target.SetSharedData("nameTagColor", 7);
break;
case 4:
target.SetSharedData("blipColor", 5);
target.SetSharedData("nameTagColor", 4);
break;
case 9:
target.SetSharedData("blipColor", 25);
target.SetSharedData("nameTagColor", 9);
break;
}
dbContext.SaveChanges(); dbContext.SaveChanges();
} }
} }

View File

@@ -491,40 +491,12 @@ namespace ReallifeGamemode.Server.Commands
} }
ChatService.SendMessage(target, "!{#8181E9}Deine Akte wurde von " + player.Name + " gelöscht. Grund: " + reason); ChatService.SendMessage(target, "!{#8181E9}Deine Akte wurde von " + player.Name + " gelöscht. Grund: " + reason);
ChatService.BroadcastFaction("!{#8181E9}HQ: Die Akte von " + target.Name + " wurde von " + player.Name + " gelöscht. Grund: " + reason + ".", new List<int>() { 1, 3 }); ChatService.BroadcastFaction("!{#8181E9}HQ: Die Akte von " + target.Name + " wurde von " + player.Name + " gelöscht. Grund: " + reason + ".", new List<int>() { 1, 3 });
target.SetSharedData("blipColor", 0);
switch (targetUser.FactionId)
{
case null:
target.SetSharedData("blipColor", 0);
target.SetSharedData("nameTagColor", 0);
break;
case 0:
target.SetSharedData("blipColor", 0);
target.SetSharedData("nameTagColor", 0);
break;
case 8:
target.SetSharedData("blipColor", 83);
target.SetSharedData("nameTagColor", 8);
break;
case 7:
target.SetSharedData("blipColor", 52);
target.SetSharedData("nameTagColor", 7);
break;
case 4:
target.SetSharedData("blipColor", 5);
target.SetSharedData("nameTagColor", 4);
break;
case 9:
target.SetSharedData("blipColor", 25);
target.SetSharedData("nameTagColor", 9);
break;
}
target.TriggerEvent("jailTime", 0); target.TriggerEvent("jailTime", 0);
targetUser.Wanteds = 0; targetUser.Wanteds = 0;
targetUser.SetBlipAndNametagColor();
dbContext.SaveChanges(); dbContext.SaveChanges();
} }
} }

View File

@@ -293,27 +293,8 @@ namespace ReallifeGamemode.Server.Events
} }
switch (factionId) switch (factionId)
{ {
//LSPD
case 1:
//nameTagColor = new Color(28, 134, 238);
//player.TriggerEvent("setNameTag", JsonConvert.SerializeObject(new int[] { 28, 134, 238 }));
player.SetSharedData("nameTagColor", factionId);
player.SetSharedData("blipColor", 38);
break;
//Medic
case 2:
//nameTagColor = new Color(255, 0, 0);
//player.TriggerEvent("setNameTag", JsonConvert.SerializeObject(new int[] { 255, 0, 0 }));
player.SetSharedData("nameTagColor", factionId);
player.SetSharedData("blipColor", 6);
break;
//FBI //FBI
case 3: case 3:
//nameTagColor = new Color(173, 0, 118);
player.SetSharedData("nameTagColor", factionId);
player.SetSharedData("blipColor", 63);
player.SetAccessories(2, 2, 0); player.SetAccessories(2, 2, 0);
break; break;
} }
@@ -347,10 +328,9 @@ namespace ReallifeGamemode.Server.Events
player.SendNotification("Du bist nun ~r~außer Dienst."); player.SendNotification("Du bist nun ~r~außer Dienst.");
player.TriggerEvent("toggleDutyMode", false); player.TriggerEvent("toggleDutyMode", false);
Medic.UpdateDutyMedics(-1); Medic.UpdateDutyMedics(-1);
player.SetSharedData("blipColor", 0);
player.SetSharedData("nameTagColor", 0);
UpdateCharacterCloth.LoadCharacterDefaults(player); UpdateCharacterCloth.LoadCharacterDefaults(player);
} }
user.SetBlipAndNametagColor();
} }
if (nearestWeapon != null) // Weapon Point if (nearestWeapon != null) // Weapon Point

View File

@@ -100,42 +100,7 @@ namespace ReallifeGamemode.Server.Events
var userItems = dbContext.UserItems.Where(u => u.UserId == user.Id).ToList(); var userItems = dbContext.UserItems.Where(u => u.UserId == user.Id).ToList();
player.SetData("items", userItems); player.SetData("items", userItems);
switch (user.FactionId) user.SetBlipAndNametagColor();
{
case null:
player.SetSharedData("blipColor", 0);
player.SetSharedData("nameTagColor", 0);
break;
case 0:
player.SetSharedData("blipColor", 0);
player.SetSharedData("nameTagColor", 0);
break;
case 8:
player.SetSharedData("blipColor", 83);
player.SetSharedData("nameTagColor", 8);
break;
case 7:
player.SetSharedData("blipColor", 52);
player.SetSharedData("nameTagColor", 7);
break;
case 4:
player.SetSharedData("blipColor", 5);
player.SetSharedData("nameTagColor", 4);
break;
case 9:
player.SetSharedData("blipColor", 25);
player.SetSharedData("nameTagColor", 9);
break;
default:
player.SetSharedData("blipColor", 0);
player.SetSharedData("nameTagColor", 0);
break;
}
if (user.CharacterId == null) if (user.CharacterId == null)
{ {

View File

@@ -131,8 +131,7 @@ namespace ReallifeGamemode.Server.Extensions
dbUser.Wanteds = newWanteds; dbUser.Wanteds = newWanteds;
dbContext.SaveChanges(); dbContext.SaveChanges();
} }
user.Player.SetSharedData("nameTagColor", -1); user.SetBlipAndNametagColor();
user.Player.SetSharedData("blipColor", 64);
ChatService.SendMessage(user.Player, "!{#FF614A}Du hast ein Verbrechen begangen: " + reason + "" + (cop != null ? " | Gemeldet von: " + cop.Name + "." : "")); ChatService.SendMessage(user.Player, "!{#FF614A}Du hast ein Verbrechen begangen: " + reason + "" + (cop != null ? " | Gemeldet von: " + cop.Name + "." : ""));
ChatService.SendMessage(user.Player, " !{#FFFF00}Fahnundgslevel:~s~ " + newWanteds); ChatService.SendMessage(user.Player, " !{#FFFF00}Fahnundgslevel:~s~ " + newWanteds);
@@ -237,11 +236,81 @@ namespace ReallifeGamemode.Server.Extensions
public static bool IsAdmin(this User user, AdminLevel adminLevel) public static bool IsAdmin(this User user, AdminLevel adminLevel)
{ {
if(user == null) if (user == null)
{ {
return false; return false;
} }
return user.AdminLevel >= adminLevel; return user.AdminLevel >= adminLevel;
} }
public static void SetBlipAndNametagColor(this User user)
{
if (user == null)
{
return;
}
int blipColor = 0;
int nameTagColor = 0;
Player player = user.Player;
bool duty = user.GetData<bool>("duty");
if (player.GetData<bool>("SAdminduty"))
{
blipColor = 30;
nameTagColor = -2;
}
else if (user.Wanteds > 0)
{
nameTagColor = -1;
blipColor = 64;
}
else if (user.Faction != null)
{
nameTagColor = user.FactionId.Value;
switch (user.FactionId)
{
case 1 when duty:
blipColor = 38;
break;
case 2 when duty:
blipColor = 6;
break;
case 3 when duty:
blipColor = 63;
break;
case 4:
blipColor = 5;
break;
case 5:
break;
case 6:
break;
case 7:
blipColor = 52;
break;
case 8:
blipColor = 83;
break;
case 9:
blipColor = 25;
break;
}
}
NAPI.Util.ConsoleOutput($"{player.Name} - Setting blip and nametag color: nametag = {nameTagColor}, blip = {blipColor}");
user.Player.SetSharedData("nameTagColor", nameTagColor);
user.Player.SetSharedData("blipColor", blipColor);
}
} }
} }

View File

@@ -69,32 +69,7 @@ namespace ReallifeGamemode.Server.Managers
ChatService.SendMessage(leader, "!{02FCFF}" + player.Name + " hat die Einladung angenommen."); ChatService.SendMessage(leader, "!{02FCFF}" + player.Name + " hat die Einladung angenommen.");
ChatService.SendMessage(player, "!{02FCFF}Du hast die Einladung angenommen."); ChatService.SendMessage(player, "!{02FCFF}Du hast die Einladung angenommen.");
switch (own.FactionId) own.SetBlipAndNametagColor();
{
default:
player.SetSharedData("blipColor", 0);
player.SetSharedData("nameTagColor", 0);
break;
case 8:
player.SetSharedData("blipColor", 83);
player.SetSharedData("nameTagColor", 8);
break;
case 7:
player.SetSharedData("blipColor", 52);
player.SetSharedData("nameTagColor", 7);
break;
case 4:
player.SetSharedData("blipColor", 5);
player.SetSharedData("nameTagColor", 4);
break;
case 9:
player.SetSharedData("blipColor", 25);
player.SetSharedData("nameTagColor", 9);
break;
}
dbContext.SaveChanges(); dbContext.SaveChanges();
} }
} }
@@ -247,8 +222,10 @@ namespace ReallifeGamemode.Server.Managers
return; return;
} }
User targetUser = target.GetUser(); using var dbContext = new DatabaseContext();
User playerUser = player.GetUser();
User targetUser = target.GetUser(dbContext);
User playerUser = player.GetUser(dbContext);
if (type == "Fraktion") if (type == "Fraktion")
{ {
@@ -276,22 +253,17 @@ namespace ReallifeGamemode.Server.Managers
return; return;
} }
using (var dbContext = new DatabaseContext())
{
target.SetData("duty", false); target.SetData("duty", false);
target.TriggerEvent("toggleDutyMode", false); target.TriggerEvent("toggleDutyMode", false);
Medic.UpdateDutyMedics(-1); Medic.UpdateDutyMedics(-1);
target.SetSharedData("blipColor", 0);
UpdateCharacterCloth.LoadCharacterDefaults(target); UpdateCharacterCloth.LoadCharacterDefaults(target);
target.GetUser(dbContext).FactionRankId = null; target.GetUser(dbContext).FactionRankId = null;
target.GetUser(dbContext).FactionId = null; target.GetUser(dbContext).FactionId = null;
ChatService.SendMessage(player, "!{02FCFF}Du hast " + target.Name + " aus der Fraktion geworfen."); ChatService.SendMessage(player, "!{02FCFF}Du hast " + target.Name + " aus der Fraktion geworfen.");
ChatService.SendMessage(target, "!{02FCFF}Du wurdest von " + player.Name + " aus der Fraktion geworfen."); ChatService.SendMessage(target, "!{02FCFF}Du wurdest von " + player.Name + " aus der Fraktion geworfen.");
target.SetSharedData("blipColor", 0); targetUser.SetBlipAndNametagColor();
player.SetSharedData("nameTagColor", 0);
dbContext.SaveChanges(); dbContext.SaveChanges();
} }
}
else if (type == "Gruppe") else if (type == "Gruppe")
{ {
if (playerUser?.Group == null || playerUser.GroupRank < GroupRank.MANAGER) if (playerUser?.Group == null || playerUser.GroupRank < GroupRank.MANAGER)
@@ -390,15 +362,15 @@ namespace ReallifeGamemode.Server.Managers
return; return;
} }
if(dbContext.Users.Count(c => c.Group == playerUser.Group) == 1) if (dbContext.Users.Count(c => c.Group == playerUser.Group) == 1)
{ {
InteractionMenuGroupDeleteGroup(player,"Gruppe"); InteractionMenuGroupDeleteGroup(player, "Gruppe");
return; return;
} }
var group = player.GetUser().Group; var group = player.GetUser().Group;
if(playerUser.GroupRank == GroupRank.OWNER) if (playerUser.GroupRank == GroupRank.OWNER)
{ {
var memberList = dbContext.Users.Where(u => u.Group == playerUser.Group && u.GroupRank < GroupRank.OWNER).ToList(); var memberList = dbContext.Users.Where(u => u.Group == playerUser.Group && u.GroupRank < GroupRank.OWNER).ToList();
var newOwner = memberList.OrderByDescending(c => c.GroupRank).First(); var newOwner = memberList.OrderByDescending(c => c.GroupRank).First();
@@ -448,7 +420,7 @@ namespace ReallifeGamemode.Server.Managers
{ {
var taxiJob = JobManager.GetJob<TaxiDriverJob>(); var taxiJob = JobManager.GetJob<TaxiDriverJob>();
if(taxiJob == null) if (taxiJob == null)
{ {
player.SendChatMessage("Aktuell kann kein Taxi gerufen werden."); player.SendChatMessage("Aktuell kann kein Taxi gerufen werden.");
return; return;
@@ -854,7 +826,8 @@ namespace ReallifeGamemode.Server.Managers
if (player.GetData<bool>("healauftrag") == true) if (player.GetData<bool>("healauftrag") == true)
{ {
player.SendNotification("~r~[Fehler] ~w~Du hast bereits ein Sanitäter gerufen."); player.SendNotification("~r~[Fehler] ~w~Du hast bereits ein Sanitäter gerufen.");
}else }
else
{ {
Medic.AddTaskToList(healTask); Medic.AddTaskToList(healTask);
player.SetData("healauftrag", true); player.SetData("healauftrag", true);

View File

@@ -66,10 +66,12 @@ namespace ReallifeGamemode.Server.Wanted
jailTime /= 2; jailTime /= 2;
} }
client.GetUser(dbContext).JailTime = jailTime; User clientUser = client.GetUser(dbContext);
clientUser.JailTime = jailTime;
Jailtime[user.Id] = jailTime; // 54 sec for each wanted star -> in total 45min for 50 Wanteds Jailtime[user.Id] = jailTime; // 54 sec for each wanted star -> in total 45min for 50 Wanteds
client.GetUser(dbContext).Wanteds = 0; clientUser.Wanteds = 0;
client.SetData("isDead", false); client.SetData("isDead", false);
client.RemoveAllWeapons(); client.RemoveAllWeapons();
client.SetSharedData("blipColor", 0); client.SetSharedData("blipColor", 0);
@@ -100,29 +102,7 @@ namespace ReallifeGamemode.Server.Wanted
client.TriggerEvent("jailTime", JsonConvert.SerializeObject(timeMinutes)); client.TriggerEvent("jailTime", JsonConvert.SerializeObject(timeMinutes));
switch (user.FactionId) clientUser.SetBlipAndNametagColor();
{
case null:
client.SetSharedData("blipColor", 0);
client.SetSharedData("nameTagColor", 0);
break;
case 8:
client.SetSharedData("blipColor", 83);
client.SetSharedData("nameTagColor", 8);
break;
case 7:
client.SetSharedData("blipColor", 52);
client.SetSharedData("nameTagColor", 7);
break;
case 4:
client.SetSharedData("blipColor", 5);
client.SetSharedData("nameTagColor", 4);
break;
case 9:
client.SetSharedData("blipColor", 25);
client.SetSharedData("nameTagColor", 9);
break;
}
if (announceHq) if (announceHq)
{ {