diff --git a/ReallifeGamemode.Client/util/attachmentMngr.ts b/ReallifeGamemode.Client/util/attachmentMngr.ts index a7e85429..e4a3fe75 100644 --- a/ReallifeGamemode.Client/util/attachmentMngr.ts +++ b/ReallifeGamemode.Client/util/attachmentMngr.ts @@ -40,9 +40,9 @@ export default function attachmentManager(game: IGame) { e.__attachmentObjects[id] = object; } } - else { + /* else { mp.game.graphics.notify(`Static Attachments Error: ~r~Unknown Attachment Used: ~w~0x${id.toString(16)}`); - } + } */ }, removeFor: function (entityRage, id) { diff --git a/ReallifeGamemode.Database/Entities/User.cs b/ReallifeGamemode.Database/Entities/User.cs index 26e97929..ef6e7a8b 100644 --- a/ReallifeGamemode.Database/Entities/User.cs +++ b/ReallifeGamemode.Database/Entities/User.cs @@ -92,6 +92,7 @@ namespace ReallifeGamemode.Database.Entities public int BusSkill { get; set; } public int PilotSkill { get; set; } + public int trashcount { get; set; } public int Wanteds { diff --git a/ReallifeGamemode.Server/Job/RefuseCollectorJob.cs b/ReallifeGamemode.Server/Job/RefuseCollectorJob.cs index fce5dcf4..aabd0d4e 100644 --- a/ReallifeGamemode.Server/Job/RefuseCollectorJob.cs +++ b/ReallifeGamemode.Server/Job/RefuseCollectorJob.cs @@ -5,6 +5,8 @@ using GTANetworkAPI; using Newtonsoft.Json; using ReallifeGamemode.Server.Extensions; using ReallifeGamemode.Server.Services; +using ReallifeGamemode.Database.Entities; +using ReallifeGamemode.Database.Models; namespace ReallifeGamemode.Server.Job { @@ -211,15 +213,28 @@ namespace ReallifeGamemode.Server.Job [RemoteEvent("CLIENT:MuellmannAddSack")] public void MuellmannAddSack(Player player) { + foreach (var data in muellmanData) { if (data.getDataFromClient(player) == null) continue; - - data.setTrashCount(data.getTrashCount() + 1); - Player target = data.getPartnerClient(player); - player.AddAttachment("binbag", true); - if (data.getTrashCount() >= 20) + data.setTrashCount(data.getTrashCount() + 1); + User user1 = player.GetUser(); + User user2 = target.GetUser(); + using (var dbContext = new DatabaseContext()) + { + user1 = player.GetUser(dbContext); + user2 = target.GetUser(dbContext); + user1.trashcount += 1; + if (target != null) + user2.trashcount += 1; + dbContext.SaveChanges(); + } + player.AddAttachment("binbag", true); + if (target != null) + ChatService.SendMessage((Player)target, $"Du hast soviele Säcke: {target.GetUser().trashcount}"); + ChatService.SendMessage((Player)player, $"Du hast soviele Säcke: {player.GetUser().trashcount}"); + if (player.GetUser().trashcount >= 5) { ChatService.SendMessage((Player)player, "Auto ist voll fahre nun zu Base."); if (target != null) { ChatService.SendMessage((Player)target, "Auto ist voll fahre nun zu Base."); target.TriggerEvent("SERVER:MuellmannZuBase"); } @@ -231,6 +246,7 @@ namespace ReallifeGamemode.Server.Job { player.GetUser().Wage += 10; target.GetUser().Wage += 10; + } else { @@ -251,8 +267,8 @@ namespace ReallifeGamemode.Server.Job if (data.getDataFromClient(player) == null) continue; Player target = data.getPartnerClient(player); - if (target != null) ChatService.SendMessage((Player)target, $"Fahrzeug wurde entleert. Säcke: {data.getTrashCount()}"); - ChatService.SendMessage((Player)player, $"Fahrzeug wurde entleert. Säcke: {data.getTrashCount()}"); + if (target != null) ChatService.SendMessage((Player)target, $"Fahrzeug wurde entleert. Säcke: {target.GetUser().trashcount}"); + ChatService.SendMessage((Player)player, $"Fahrzeug wurde entleert. Säcke: {player.GetUser().trashcount}"); //bonus pro sack if (target != null) { @@ -263,7 +279,18 @@ namespace ReallifeGamemode.Server.Job { player.GetUser().Wage += 200; } - data.setTrashCount(0); + User user1 = player.GetUser(); + User user2 = target.GetUser(); + using (var dbContext = new DatabaseContext()) + { + user1 = player.GetUser(dbContext); + user2 = target.GetUser(dbContext); + + user1.trashcount -= 5; + if (target != null) + user2.trashcount -= 5; + dbContext.SaveChanges(); + } Console.WriteLine($"[DATA DEBUG] vehicle: {data.vehicle.DisplayName} | Players: {data.getClientsFromData().Count} | Säcke: {data.getTrashCount()}"); return; }