diff --git a/ReallifeGamemode.Client/Business/cardealer.ts b/ReallifeGamemode.Client/Business/cardealer.ts index 391df9d5..835a4aaa 100644 --- a/ReallifeGamemode.Client/Business/cardealer.ts +++ b/ReallifeGamemode.Client/Business/cardealer.ts @@ -14,9 +14,9 @@ import moneyFormat from '../moneyformat'; export default function carDealer() { - var shopMenu; + var shopMenu: NativeUI.Menu; - mp.events.add('ShopVehicle_OpenMenu', (businessName, price) => { + mp.events.add('ShopVehicle_OpenMenu', (businessName, price, availableOptions: string[]) => { var veh = mp.players.local.vehicle; if (!veh) return; mp.gui.chat.show(false); @@ -34,6 +34,10 @@ export default function carDealer() { priceItem.SetRightLabel("~g~$~s~ " + moneyFormat(price)); shopMenu.AddItem(priceItem); + var targetsCollection = new ItemsCollection(availableOptions); + var targetItem = new UIMenuListItem("Besitzer", "Wähle den Besitzer aus", targetsCollection); + shopMenu.AddItem(targetItem); + var saveItem = new UIMenuItem("Kaufen"); saveItem.BackColor = new Color(0, 100, 0); saveItem.HighlightedBackColor = new Color(0, 150, 0); @@ -48,7 +52,7 @@ export default function carDealer() { if (item === cancelItem) { shopMenu.Close(); } else if (item === saveItem) { - mp.events.callRemote("VehShop_BuyVehicle"); + mp.events.callRemote("VehShop_BuyVehicle", targetItem.SelectedItem.Id); shopMenu.Close(); } }); diff --git a/ReallifeGamemode.Server/Business/BusinessBase.cs b/ReallifeGamemode.Server/Business/BusinessBase.cs index e7e67c19..1e613207 100644 --- a/ReallifeGamemode.Server/Business/BusinessBase.cs +++ b/ReallifeGamemode.Server/Business/BusinessBase.cs @@ -47,7 +47,7 @@ namespace ReallifeGamemode.Server.Business NAPI.Util.ConsoleOutput("Creating Bank Account for Business: " + Name); using (var dbContext = new DatabaseContext()) { - + dbContext.BusinessBankAccounts.Add(new BusinessBankAccount() { BusinessId = Id, @@ -81,7 +81,7 @@ namespace ReallifeGamemode.Server.Business public User GetOwner(DatabaseContext dbContext = null) { - if(dbContext == null) + if (dbContext == null) { using (dbContext = new DatabaseContext()) { diff --git a/ReallifeGamemode.Server/Commands/AdminCommands.cs b/ReallifeGamemode.Server/Commands/AdminCommands.cs index e31b542f..8983fa9a 100644 --- a/ReallifeGamemode.Server/Commands/AdminCommands.cs +++ b/ReallifeGamemode.Server/Commands/AdminCommands.cs @@ -37,7 +37,7 @@ namespace ReallifeGamemode.Server.Commands IItem iItem = InventoryManager.GetItemByName(item); - if(iItem == null) + if (iItem == null) { player.SendChatMessage("Dieses Essen existiert nicht."); return; @@ -46,15 +46,15 @@ namespace ReallifeGamemode.Server.Commands List itemList = player.GetUser().GetItems(); UserItem eatItem = itemList.FirstOrDefault(i => i.ItemId == iItem.Id); - if(eatItem == null) + if (eatItem == null) { player.SendChatMessage("Du hast dieses Item nicht"); return; } - if(iItem is IUsableItem usableItemObj) + if (iItem is IUsableItem usableItemObj) { - usableItemObj.Use(eatItem); + usableItemObj.Use(eatItem); } } @@ -227,7 +227,7 @@ namespace ReallifeGamemode.Server.Commands return; } - if (target == player) + if (target == player) { ChatService.Error(player, "Du kannst dir nicht selber zuflüstern."); return; @@ -339,7 +339,7 @@ namespace ReallifeGamemode.Server.Commands return; } var gotoString = ""; - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { foreach (GotoPoint point in dbContext.GotoPoints) { @@ -659,7 +659,7 @@ namespace ReallifeGamemode.Server.Commands { GotoPoint p = dbContext.GotoPoints.FirstOrDefault(x => x.Description == location); - if(p == null) + if (p == null) { ChatService.Error(player, "Dieser Goto-Punkt existiert nicht."); return; @@ -757,7 +757,7 @@ namespace ReallifeGamemode.Server.Commands } Vehicle v = VehicleManager.GetVehicleFromId(vehid); - if(v == null) + if (v == null) { ChatService.Error(player, "Dieses Fahrzeug existiert nicht."); return; @@ -864,7 +864,7 @@ namespace ReallifeGamemode.Server.Commands public void CmdAdminVeh(Client player, string hash, int color1 = 111, int color2 = 111) { if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN3) ?? true) - //TODO: Bestimmte Autos nur ab Adminlevel 1337, "normale Fahrzeuge" schon ab Adminlevel 3. + //TODO: Bestimmte Autos nur ab Adminlevel 1337, "normale Fahrzeuge" schon ab Adminlevel 3. { ChatService.NotAuthorized(player); return; @@ -876,10 +876,10 @@ namespace ReallifeGamemode.Server.Commands return; } - if(!uint.TryParse(hash, out uint uHash)) + if (!uint.TryParse(hash, out uint uHash)) uHash = NAPI.Util.GetHashKey(hash); - if(!VehicleManager.IsValidHash(uHash)) + if (!VehicleManager.IsValidHash(uHash)) { ChatService.Error(player, "Dieses Fahrzeug existiert nicht."); return; @@ -931,7 +931,7 @@ namespace ReallifeGamemode.Server.Commands else { targetVeh = VehicleManager.GetVehicleFromId(vid); - if(targetVeh == null) + if (targetVeh == null) { ChatService.Error(player, "Dieses Fahrzeug existiert nicht."); return; @@ -939,7 +939,7 @@ namespace ReallifeGamemode.Server.Commands } ServerVehicle veh = VehicleManager.GetServerVehicleFromVehicle(targetVeh); - if(veh != null) + if (veh != null) { ChatService.Error(player, "Dieses Fahrzeug wird von einem Server-System benutzt: ~m~" + veh.GetType().Name); return; @@ -1120,7 +1120,7 @@ namespace ReallifeGamemode.Server.Commands user.Handmoney += amount; context.SaveChanges(); target.TriggerEvent("SERVER:SET_HANDMONEY", user.Handmoney); - } + } } [Command("quicksavemode", "~m~Benutzung: ~s~/quicksavemode [Modus]\nModi (klein schreiben): ~g~blip, ~r~atm")] @@ -1155,7 +1155,7 @@ namespace ReallifeGamemode.Server.Commands using (var context = new DatabaseContext()) { List userItems = context.UserItems.ToList().FindAll(i => i.UserId == target.GetUser().Id); - foreach(var uItem in userItems) + foreach (var uItem in userItems) { invWeight += uItem.Amount * InventoryManager.GetItemById(uItem.ItemId).Gewicht; } @@ -1169,7 +1169,7 @@ namespace ReallifeGamemode.Server.Commands { UserItem item = new UserItem() { ItemId = itemId, UserId = target.GetUser().Id, Amount = amount }; InventoryManager.AddItemToInventory(target, item); - } + } } [Command("inventory", "~m~Benutzung: ~s~/inventory [Spieler]")] @@ -1192,7 +1192,7 @@ namespace ReallifeGamemode.Server.Commands InventoryManager.GetUserItemsAsAdmin(player, user); } - + [Command("editmode", "~m~Benutzung: ~s~/editmode")] public void CmdAdminToggleEditMode(Client player) { @@ -1201,8 +1201,8 @@ namespace ReallifeGamemode.Server.Commands ChatService.NotAuthorized(player); return; } - - if(player.GetData("editmode") == false) + + if (player.GetData("editmode") == false) { player.SetData("editmode", true); player.SendNotification("Edit-Mode ~g~aktiviert"); @@ -1433,13 +1433,13 @@ namespace ReallifeGamemode.Server.Commands return; } - if(hour > 23 || min > 59 || sec > 59) + if (hour > 23 || min > 59 || sec > 59) { ChatService.Error(player, "Es wurde eine ungültige Zeit eingegeben."); return; } - if(hour == -1) + if (hour == -1) { player.SendChatMessage("Es wird nun wieder die Echtzeit genutzt."); TimeManager.StartTimeManager(); @@ -1618,26 +1618,26 @@ namespace ReallifeGamemode.Server.Commands case "svehicle": if (player.IsInVehicle) { - if(option1 == null || option2 == null) + if (option1 == null || option2 == null) { player.SendChatMessage("~m~Benutzung: ~s~/save SVehicle [Carshop Business ID] [Preis]"); return; } - if(!int.TryParse(option1, out int businessId) || !int.TryParse(option2, out int price)) + if (!int.TryParse(option1, out int businessId) || !int.TryParse(option2, out int price)) { player.SendChatMessage("~m~Benutzung: ~s~/save SVehicle [Carshop Business ID] [Preis]"); return; } BusinessBase business = BusinessManager.GetBusiness(businessId); - if(business == null) + if (business == null) { ChatService.Error(player, "Dieses Business existiert nicht."); return; } - if(!(business is CarDealerBusinessBase)) + if (!(business is CarDealerBusinessBase)) { ChatService.Error(player, "Dieses Business ist kein Fahrzeug-Business."); return; @@ -1666,23 +1666,23 @@ namespace ReallifeGamemode.Server.Commands return; } - switch(type.ToLower()) + switch (type.ToLower()) { case "vehicle": - if(!player.IsInVehicle) + if (!player.IsInVehicle) { player.SendChatMessage("~m~Du sitzt in keinem Fahrzeug!"); return; } ServerVehicle veh = player.Vehicle.GetServerVehicle(); - if(veh == null) + if (veh == null) { ChatService.Error(player, "Dieses Fahrzeug wird nicht von einem Server-System genutzt."); return; } - if(option.ToLower() != "yes") + if (option.ToLower() != "yes") { player.SendChatMessage("Bist du sicher, dass du folgendes Fahrzeug löschen willst: ~m~" + veh.ToString() + " ~s~?"); player.SendChatMessage("Falls ~g~Ja~s~, nutze ~y~/remove vehicle yes"); @@ -1699,7 +1699,7 @@ namespace ReallifeGamemode.Server.Commands break; case "goto": - if(option == "") + if (option == "") { player.SendChatMessage("~m~Benutzung: ~s~/remove [Goto] [Punkt]"); return; @@ -1712,7 +1712,7 @@ namespace ReallifeGamemode.Server.Commands using (var dbContext = new DatabaseContext()) { GotoPoint p = dbContext.GotoPoints.FirstOrDefault(x => x.Description == option); - if(p == null) + if (p == null) { ChatService.Error(player, "Dieser Goto-Punkt existiert nicht."); return; @@ -1953,7 +1953,7 @@ namespace ReallifeGamemode.Server.Commands } #endregion - + // [Command("managefactionranks", "~m~Benutzung: ~s~/managefactionranks [Fraktions-ID]")] public void CmdFactionManageFactionRanks(Client player, int factionID) @@ -2119,26 +2119,26 @@ namespace ReallifeGamemode.Server.Commands return; } - if(target.GetUser().BusinessId != null) + if (target.GetUser().BusinessId != null) { ChatService.Error(player, "Der Spieler besitzt momentan schon ein Business: ~o~" + BusinessManager.GetBusiness(target.GetUser().BusinessId).Name); return; } BusinessBase business = BusinessManager.GetBusiness(businessid); - if(business == null) + if (business == null) { ChatService.Error(player, "Dieses Business existiert nicht. ~m~/businesslist"); return; } - if(business.GetOwner() != null) + if (business.GetOwner() != null) { ChatService.Error(player, "Das Business hat momentan noch einen Besitzer: ~o~" + business.GetOwner().Name + "~s~. Entferne diesen Besitzer erst mit ~m~/clearbusiness"); return; } - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { Entities.User targetUser = target.GetUser(dbContext); targetUser.BusinessId = businessid; @@ -2164,10 +2164,10 @@ namespace ReallifeGamemode.Server.Commands return; } - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { User owner = business.GetOwner(dbContext); - if(owner == null) + if (owner == null) { ChatService.Error(player, "Dieses Business hat momentan keinen Besitzer."); return; @@ -2226,16 +2226,16 @@ namespace ReallifeGamemode.Server.Commands option1 = option1.ToString(); - if(option1 != "add" && option1 != "remove" && option1 != "setenterposition" && option1 != "setexitposition") + if (option1 != "add" && option1 != "remove" && option1 != "setenterposition" && option1 != "setexitposition") { player.SendChatMessage("~m~Benutzung: ~s~/interior [Add / Remove / SetEnterPosition / SetExitPosition] [Name]"); return; } - switch(option1) + switch (option1) { case "add": - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { Interior interiorAdd = new Interior { @@ -2249,13 +2249,13 @@ namespace ReallifeGamemode.Server.Commands case "remove": using (var dbContext = new DatabaseContext()) { - if(!int.TryParse(option2, out int intId)) + if (!int.TryParse(option2, out int intId)) { ChatService.Error(player, "Es muss eine Nummer angegeben werden."); return; } Interior interiorRemove = InteriorManager.GetInteriorById(intId, dbContext); - if(interiorRemove == null) + if (interiorRemove == null) { ChatService.Error(player, "Dieses Interior existiert nicht."); return; diff --git a/ReallifeGamemode.Server/Commands/FactionCommands.cs b/ReallifeGamemode.Server/Commands/FactionCommands.cs index b20e245c..10d49d99 100644 --- a/ReallifeGamemode.Server/Commands/FactionCommands.cs +++ b/ReallifeGamemode.Server/Commands/FactionCommands.cs @@ -232,7 +232,7 @@ namespace ReallifeGamemode.Server.Commands ChatService.Error(player, "Du kannst dich nicht selbst wiederbeleben!"); return; } - player.PlayAnimation("amb@medic@standing@kneel@enter", "enter", 0); + player.PlayAnimation("amb@medic@standing@kneel@enter", "enter", 0); deadPlayer.TriggerEvent("onPlayerRevived"); deadPlayer.SendNotification("Du wurdest von ~r~" + player.Name + "~s~ wiederbelebt."); @@ -267,7 +267,7 @@ namespace ReallifeGamemode.Server.Commands [Command("duty", "~m~Benutzung: ~s~/duty")] public void CmdFactionDuty(Client player) { - if(player.GetData("duty") == false) + if (player.GetData("duty") == false) { player.SetData("duty", true); player.SendNotification("~g~Du bist jetzt im Dienst!", false); diff --git a/ReallifeGamemode.Server/Commands/UserCommands.cs b/ReallifeGamemode.Server/Commands/UserCommands.cs index 8111171a..5a7b9e79 100644 --- a/ReallifeGamemode.Server/Commands/UserCommands.cs +++ b/ReallifeGamemode.Server/Commands/UserCommands.cs @@ -17,11 +17,11 @@ namespace ReallifeGamemode.Server.Commands option = option.ToLower(); - switch(option) + switch (option) { case "invite": { - if(!player.HasData("accept_invite")) + if (!player.HasData("accept_invite")) { ChatService.Error(player, "Du hast keine Einladung in eine Fraktion erhalten."); return; @@ -29,11 +29,11 @@ namespace ReallifeGamemode.Server.Commands player.ResetData("accept_data"); - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { Client leader = NAPI.Player.GetPlayerFromHandle((NetHandle)player.GetData("accept_invite")); - if(leader == null) + if (leader == null) { ChatService.Error(player, "Die Einladung ist abgelaufen."); return; @@ -68,9 +68,9 @@ namespace ReallifeGamemode.Server.Commands Vehicle pVeh = player.Vehicle; - if(pVeh.GetServerVehicle() is ServerVehicle veh) + if (pVeh.GetServerVehicle() is ServerVehicle veh) { - if(player.GetUser().IsAdmin(AdminLevel.SUPPORTER)) + if (player.GetUser().IsAdmin(AdminLevel.SUPPORTER)) { player.SendChatMessage("~m~" + ((VehicleHash)pVeh.Model) + " | " + veh.ToString() + " | Farbe 1: " + pVeh.PrimaryColor + " | Farbe 2: " + pVeh.SecondaryColor + " | ID: " + pVeh.Handle.Value); } diff --git a/ReallifeGamemode.Server/Entities/Ban.cs b/ReallifeGamemode.Server/Entities/Ban.cs index c6c36b9e..3ae95e87 100644 --- a/ReallifeGamemode.Server/Entities/Ban.cs +++ b/ReallifeGamemode.Server/Entities/Ban.cs @@ -25,7 +25,7 @@ namespace ReallifeGamemode.Server.Entities public string Reason { get; set; } public string BannedBy { get; set; } - + public int Applied { get; set; } public int UntilDateTime { get; set; } } diff --git a/ReallifeGamemode.Server/Entities/BusinessBankAccount.cs b/ReallifeGamemode.Server/Entities/BusinessBankAccount.cs index e84471db..d25e1fa9 100644 --- a/ReallifeGamemode.Server/Entities/BusinessBankAccount.cs +++ b/ReallifeGamemode.Server/Entities/BusinessBankAccount.cs @@ -17,7 +17,8 @@ namespace ReallifeGamemode.Server.Entities [Key] [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Id { get; set; } - public int Balance { + public int Balance + { get => _balance; set { diff --git a/ReallifeGamemode.Server/Entities/GroupVehicle.cs b/ReallifeGamemode.Server/Entities/GroupVehicle.cs index 9492dfd8..2e707901 100644 --- a/ReallifeGamemode.Server/Entities/GroupVehicle.cs +++ b/ReallifeGamemode.Server/Entities/GroupVehicle.cs @@ -1,5 +1,8 @@ -using System; +using ReallifeGamemode.Server.Models; +using System; using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; +using System.Linq; using System.Text; namespace ReallifeGamemode.Server.Entities @@ -8,6 +11,17 @@ namespace ReallifeGamemode.Server.Entities { public Group Group { get; set; } + [ForeignKey("Group")] + public int? GroupId { get; set; } + + public Group GetGroup() + { + using (var dbContext = new DatabaseContext()) + { + return dbContext.Groups.Where(g => g.Id == GroupId).FirstOrDefault(); + } + } + public override string ToString() { return "Gruppen Fahrzeug | Gruppe: " + Group.Name; diff --git a/ReallifeGamemode.Server/Entities/Logs/Death.cs b/ReallifeGamemode.Server/Entities/Logs/Death.cs index 74a2fb66..9e6a6afa 100644 --- a/ReallifeGamemode.Server/Entities/Logs/Death.cs +++ b/ReallifeGamemode.Server/Entities/Logs/Death.cs @@ -18,7 +18,7 @@ namespace ReallifeGamemode.Server.Entities.Logs [Key] [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int Id { get; set; } - + [ForeignKey("Victim")] public int VictimId { get; set; } public User Victim { get; set; } @@ -36,7 +36,7 @@ namespace ReallifeGamemode.Server.Entities.Logs public float KillerPositionY { get; set; } public float KillerPositionZ { get; set; } public float KillerHeading { get; set; } - + [StringLength(64)] public string CauseOfDeath { get; set; } [DatabaseGenerated(DatabaseGeneratedOption.Identity)] diff --git a/ReallifeGamemode.Server/Entities/Saves/SavedBlip.cs b/ReallifeGamemode.Server/Entities/Saves/SavedBlip.cs index b248c13e..097d8be3 100644 --- a/ReallifeGamemode.Server/Entities/Saves/SavedBlip.cs +++ b/ReallifeGamemode.Server/Entities/Saves/SavedBlip.cs @@ -34,5 +34,5 @@ namespace ReallifeGamemode.Server.Entities.Saves public float Rotation { get; set; } public byte Dimension { get; set; } public bool Active { get; set; } - } + } } diff --git a/ReallifeGamemode.Server/Entities/ServerVehicle.cs b/ReallifeGamemode.Server/Entities/ServerVehicle.cs index 82fcaa62..be122161 100644 --- a/ReallifeGamemode.Server/Entities/ServerVehicle.cs +++ b/ReallifeGamemode.Server/Entities/ServerVehicle.cs @@ -48,7 +48,7 @@ namespace ReallifeGamemode.Server.Entities string numberplate = $"{this.Id}"; - if(this is FactionVehicle fV) + if (this is FactionVehicle fV) { numberplate = $"F{fV.FactionId} " + numberplate; } @@ -58,7 +58,7 @@ namespace ReallifeGamemode.Server.Entities numberplate = $"U{uV.UserId} " + numberplate; } - if(this is ShopVehicle sV) + if (this is ShopVehicle sV) { numberplate = "Shop"; VehicleStreaming.SetLockStatus(veh, false); @@ -66,6 +66,11 @@ namespace ReallifeGamemode.Server.Entities veh.Position.Add(new Vector3(0, 0, 1.3)), 10.0f, 1f, 1, new Color(255, 255, 255)); } + if (this is GroupVehicle gV) + { + numberplate = $"{gV.GroupId}" + numberplate; + } + veh.NumberPlate = numberplate; return veh; diff --git a/ReallifeGamemode.Server/Entities/User.cs b/ReallifeGamemode.Server/Entities/User.cs index a6b7fef2..ccfe3256 100644 --- a/ReallifeGamemode.Server/Entities/User.cs +++ b/ReallifeGamemode.Server/Entities/User.cs @@ -49,7 +49,7 @@ namespace ReallifeGamemode.Server.Entities [ForeignKey("Ban")] public int? BanId { get; set; } public Ban Ban { get; set; } - + public int? FactionId { get; set; } public Faction Faction { get; set; } @@ -60,6 +60,8 @@ namespace ReallifeGamemode.Server.Entities public Group Group { get; set; } + public GroupRank GroupRank { get; set; } + public FactionRank GetFactionRank() { using (var dbContext = new DatabaseContext()) @@ -97,7 +99,7 @@ namespace ReallifeGamemode.Server.Entities banUser = new Ban { UserId = this.Id, Reason = reason, BannedBy = admin.Name, Applied = unixTimestamp, UntilDateTime = unixTimestamp }; this.Client?.Kick(); - + mins--; } else @@ -128,7 +130,7 @@ namespace ReallifeGamemode.Server.Entities public List GetItems() { - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { return dbContext.UserItems.ToList().FindAll(u => u.UserId == this.Id); } diff --git a/ReallifeGamemode.Server/Entities/UserBankAccount.cs b/ReallifeGamemode.Server/Entities/UserBankAccount.cs index d07c028a..72073afa 100644 --- a/ReallifeGamemode.Server/Entities/UserBankAccount.cs +++ b/ReallifeGamemode.Server/Entities/UserBankAccount.cs @@ -28,12 +28,13 @@ namespace ReallifeGamemode.Server.Entities public string Bic { get; set; } [StringLength(32)] public string Iban { get; set; } - public int Balance { + public int Balance + { get => _balance; set { _balance = value; - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { ClientService.GetClientByNameOrId(dbContext.Users.First(u => u.Id == UserId).Name).TriggerEvent("updateMoney", value); } diff --git a/ReallifeGamemode.Server/Events/Connect.cs b/ReallifeGamemode.Server/Events/Connect.cs index 88370bb1..3a0bff07 100644 --- a/ReallifeGamemode.Server/Events/Connect.cs +++ b/ReallifeGamemode.Server/Events/Connect.cs @@ -24,7 +24,7 @@ namespace ReallifeGamemode.Server.Events using (var dbContext = new DatabaseContext()) { - if(!dbContext.WhitelistEntries.Any(w => w.SocialClubName.ToLower() == player.SocialClubName.ToLower())) + if (!dbContext.WhitelistEntries.Any(w => w.SocialClubName.ToLower() == player.SocialClubName.ToLower())) { string msg2 = "~m~*** " + player.Name + "[" + player.SocialClubName + "] (" + player.Address + ") hat versucht, sich einzuloggen, steht aber nicht auf der Whitelist."; ChatService.BroadcastAdmin(msg2, AdminLevel.ADMIN); @@ -44,7 +44,7 @@ namespace ReallifeGamemode.Server.Events string msg = "~m~*** " + player.Name + " [" + player.SocialClubName + "] [ID:" + player.Handle.Value + "] (" + player.Address + ")"; ChatService.BroadcastAdmin(msg, AdminLevel.ADMIN); } - + private bool IsPlayerBanned(Client player) { using (var dbContext = new DatabaseContext()) @@ -69,7 +69,7 @@ namespace ReallifeGamemode.Server.Events var timeStamp = bannedUser.UntilDateTime; int unixTimestamp = (int)(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1))).TotalSeconds; - if(timeStamp > unixTimestamp) + if (timeStamp > unixTimestamp) { player.SendChatMessage("Du bist noch bis zum !{#FF4040}" + dt.AddSeconds(timeStamp).ToLocalTime() + " Uhr ~s~gebannt. [" + bannedUser.Reason + "]"); player.Kick(); @@ -80,7 +80,7 @@ namespace ReallifeGamemode.Server.Events user.BanId = null; dbContext.SaveChanges(); return false; - } + } } } return false; diff --git a/ReallifeGamemode.Server/Events/Death.cs b/ReallifeGamemode.Server/Events/Death.cs index bd1ac063..456af230 100644 --- a/ReallifeGamemode.Server/Events/Death.cs +++ b/ReallifeGamemode.Server/Events/Death.cs @@ -44,7 +44,7 @@ namespace ReallifeGamemode.Server.Events //player.TriggerEvent("medicInfo", dutyMedics); //TODO: Zum Full Release entfernen - NAPI.Chat.SendChatMessageToPlayer(player, "Du bist durch " + killer.Name + " gestorben: " + reason.ToString()); + NAPI.Chat.SendChatMessageToPlayer(player, "Du bist durch " + killer.Name + " gestorben: " + reason.ToString()); int? killerId; float killerPosX; @@ -67,7 +67,7 @@ namespace ReallifeGamemode.Server.Events killerPosY = killer.Position.Y; killerPosZ = killer.Position.Z; killerHeading = killer.Heading; - if(player != killer) + if (player != killer) { string message = "~y~[HINWEIS]: " + killer.Name + " hat " + player.Name + " getötet (" + NAPI.Player.GetPlayerCurrentWeapon(killer) + ")"; ChatService.BroadcastAdmin(message, AdminLevel.ADMIN); @@ -91,16 +91,27 @@ namespace ReallifeGamemode.Server.Events using (var userDeath = new DatabaseContext()) { - var dead = new Entities.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()}; + var dead = new Entities.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(); } } [RemoteEvent("RespawnPlayerAtHospital")] public void RespawnPlayerAtHospital(Client player) - { + { player.SetData("isDead", false); player.RemoveAllWeapons(); NAPI.Player.SpawnPlayer(player, new Vector3(-495.45, -336.33, 34.5)); diff --git a/ReallifeGamemode.Server/Events/Disconnect.cs b/ReallifeGamemode.Server/Events/Disconnect.cs index 22ecc1ca..09aa4087 100644 --- a/ReallifeGamemode.Server/Events/Disconnect.cs +++ b/ReallifeGamemode.Server/Events/Disconnect.cs @@ -39,7 +39,7 @@ namespace ReallifeGamemode.Server.Events var user = player.GetUser(saveUser); Vector3 pos = player.Position; - if(!float.IsNaN(pos.X) && !float.IsNaN(pos.Y) && !float.IsNaN(pos.Z)) + if (!float.IsNaN(pos.X) && !float.IsNaN(pos.Y) && !float.IsNaN(pos.Z)) { user.PositionX = pos.X; user.PositionY = pos.Y; @@ -47,7 +47,7 @@ namespace ReallifeGamemode.Server.Events saveUser.SaveChanges(); } - user.Dead = player.HasData("isDead") ? player.GetData("isDead") : false; + user.Dead = player.HasData("isDead") ? player.GetData("isDead") : false; } player.SetData("isLoggedIn", false); } diff --git a/ReallifeGamemode.Server/Events/EnterVehicleAttempt.cs b/ReallifeGamemode.Server/Events/EnterVehicleAttempt.cs index 51dcec5f..958c293e 100644 --- a/ReallifeGamemode.Server/Events/EnterVehicleAttempt.cs +++ b/ReallifeGamemode.Server/Events/EnterVehicleAttempt.cs @@ -23,12 +23,12 @@ namespace ReallifeGamemode.Server.Events if (vehicle.GetServerVehicle() is FactionVehicle veh) { - if(veh.FactionId != player.GetUser().FactionId) + if (veh.FactionId != player.GetUser().FactionId) { player.StopAnimation(); player.SendNotification("~r~Du darfst dieses Fahrzeug nicht benutzen!", true); return; - } + } } } } diff --git a/ReallifeGamemode.Server/Events/Faction.cs b/ReallifeGamemode.Server/Events/Faction.cs index 443e5b7b..6333157a 100644 --- a/ReallifeGamemode.Server/Events/Faction.cs +++ b/ReallifeGamemode.Server/Events/Faction.cs @@ -15,7 +15,7 @@ namespace ReallifeGamemode.Server.Events public void OnFactionRanksEdit(Client player, string jsonData) { FactionRankHelper helper = JsonConvert.DeserializeObject(jsonData); - using(var context = new DatabaseContext()) + using (var context = new DatabaseContext()) { Entities.Faction f = context.Factions.FirstOrDefault(x => x.Id == helper.FactionId); if (f == null) @@ -31,10 +31,10 @@ namespace ReallifeGamemode.Server.Events List found = new List(); - for(int i = 0; i < ranks.Count; i++) + for (int i = 0; i < ranks.Count; i++) { Rank newRank = ranks[i]; - if(newRank.Id == 0) + if (newRank.Id == 0) { context.FactionRanks.Add(new FactionRank { @@ -52,9 +52,9 @@ namespace ReallifeGamemode.Server.Events } } - for(int i = 0; i < factionRanks.Count; i++) + for (int i = 0; i < factionRanks.Count; i++) { - if(!found.Contains(factionRanks[i].Id)) + if (!found.Contains(factionRanks[i].Id)) { context.FactionRanks.Remove(factionRanks[i]); } diff --git a/ReallifeGamemode.Server/Events/Key.cs b/ReallifeGamemode.Server/Events/Key.cs index 2582a0b4..c6881b9b 100644 --- a/ReallifeGamemode.Server/Events/Key.cs +++ b/ReallifeGamemode.Server/Events/Key.cs @@ -41,7 +41,7 @@ namespace ReallifeGamemode.Server.Events break; } - + } GroundItem.PickUpGroundItem(player); @@ -84,15 +84,15 @@ namespace ReallifeGamemode.Server.Events if (!player.IsLoggedIn()) return; User user = player.GetUser(); switch (user.FactionId) - { + { //LSFD case 2: player.TriggerEvent("showFactionInteraction", user.FactionId, player.GetData("duty"), user.Faction.Name, user.FactionLeader, Medic.ReviveTasks.Count.ToString(), Medic.HealTasks.Count.ToString(), Medic.FireTasks.Count.ToString()); break; - } + } } - - [RemoteEvent("keyPress:E")] + + [RemoteEvent("keyPress:E")] public void KeyPressE(Client player) { if (!player.IsLoggedIn()) return; @@ -102,7 +102,7 @@ namespace ReallifeGamemode.Server.Events DutyPoint nearest = PositionManager.DutyPoints.Find(d => d.Position.DistanceTo(player.Position) <= 1.5); if (nearest == null) return; if (player.Position.DistanceTo(nearest.Position) <= 1.5 && nearest.FactionId == user.FactionId) - { + { var nameTagColor = new Color(0, 0, 0); var factionId = user.FactionId; @@ -113,9 +113,9 @@ namespace ReallifeGamemode.Server.Events if (player.GetUser().FactionId == 2) //Fire Department { int medicCount = 0; - foreach(Client c in NAPI.Pools.GetAllPlayers()) + foreach (Client c in NAPI.Pools.GetAllPlayers()) { - if((c.GetUser()?.Faction.Id ?? 0) == 2) + if ((c.GetUser()?.Faction.Id ?? 0) == 2) { medicCount++; } @@ -134,22 +134,22 @@ namespace ReallifeGamemode.Server.Events { List clothes = context.CharacterClothes.Where(u => u.UserId == user.Id && u.Duty == true).ToList(); - foreach(var cloth in clothes) + foreach (var cloth in clothes) { - if(cloth.SlotType == 0) + if (cloth.SlotType == 0) { player.SetClothes(cloth.SlotId, cloth.ClothId, 0); } else { - if(cloth.ClothId != -1) + if (cloth.ClothId != -1) { player.SetAccessories(cloth.SlotId, cloth.ClothId, 0); } else { player.ClearAccessory(cloth.SlotId); - } + } } } } @@ -178,7 +178,7 @@ namespace ReallifeGamemode.Server.Events List players = NAPI.Pools.GetAllPlayers(); List ListPlayers = new List(); - foreach(Client listPlayer in players) + foreach (Client listPlayer in players) { var lPlayer = new ListPlayer { @@ -190,7 +190,7 @@ namespace ReallifeGamemode.Server.Events ListPlayers.Add(lPlayer); } player.TriggerEvent("fetchPlayerList", JsonConvert.SerializeObject(ListPlayers)); - } + } [RemoteEvent("keyPress:K")] public void KeyPressK(Client player) { @@ -210,9 +210,9 @@ namespace ReallifeGamemode.Server.Events using (var context = new DatabaseContext()) { List clothes = context.DutyClothes.ToList().FindAll(c => c.FactionId == user.FactionId && c.Gender == user.GetCharacter().Gender); - foreach(var cloth in clothes) + foreach (var cloth in clothes) { - if(cloth.SlotType == 1) + if (cloth.SlotType == 1) { if (cloth.ClothId != -1) { @@ -242,7 +242,7 @@ namespace ReallifeGamemode.Server.Events player.TriggerEvent("showDutyClothMenu", hats.ToArray(), tops.ToArray(), legs.ToArray(), shoes.ToArray()); } } - + } [RemoteEvent("keyPress:L")] public void KeyPressL(Client player) @@ -263,19 +263,19 @@ namespace ReallifeGamemode.Server.Events if (player.IsInVehicle && player.VehicleSeat == -1) { ServerVehicle veh = player.Vehicle.GetServerVehicle(); - if(veh != null) + if (veh != null) { - if(veh is FactionVehicle fV && fV.FactionId != player.GetUser()?.FactionId && (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN3) ?? false)) + if (veh is FactionVehicle fV && fV.FactionId != player.GetUser()?.FactionId && (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN3) ?? false)) { return; } - else if(veh is ShopVehicle) + else if (veh is ShopVehicle) { return; } } player.TriggerEvent("ToggleVehicleMenu"); } - } + } } } diff --git a/ReallifeGamemode.Server/Events/Login.cs b/ReallifeGamemode.Server/Events/Login.cs index 4c64d1e4..6c07af3d 100644 --- a/ReallifeGamemode.Server/Events/Login.cs +++ b/ReallifeGamemode.Server/Events/Login.cs @@ -96,6 +96,6 @@ namespace ReallifeGamemode.Server.Events } } } - } - } + } + } } diff --git a/ReallifeGamemode.Server/Events/Register.cs b/ReallifeGamemode.Server/Events/Register.cs index 1665df5d..f85a3c49 100644 --- a/ReallifeGamemode.Server/Events/Register.cs +++ b/ReallifeGamemode.Server/Events/Register.cs @@ -41,7 +41,7 @@ namespace ReallifeGamemode.Server.Events dbContext.UserBankAccounts.Add(userBankAccount); dbContext.SaveChanges(); - player.TriggerEvent("SERVER:Login_Success"); + player.TriggerEvent("SERVER:Login_Success"); player.SetData("isLoggedIn", true); player.SetData("isDead", false); @@ -52,7 +52,7 @@ namespace ReallifeGamemode.Server.Events //player.TriggerEvent("toggleCreator"); player.Position = new Vector3(user.PositionX, user.PositionY, user.PositionZ); - + } else if (dbContext.Users.Where(u => u.SocialClubName == player.SocialClubName).Count() >= 3) { diff --git a/ReallifeGamemode.Server/Events/ResourceStop.cs b/ReallifeGamemode.Server/Events/ResourceStop.cs index 456907f8..6c1c1c8d 100644 --- a/ReallifeGamemode.Server/Events/ResourceStop.cs +++ b/ReallifeGamemode.Server/Events/ResourceStop.cs @@ -22,7 +22,7 @@ namespace ReallifeGamemode.Server.Events { var users = NAPI.Pools.GetAllPlayers(); - foreach(Client user in users) + foreach (Client user in users) { using (var saveUsers = new DatabaseContext()) { diff --git a/ReallifeGamemode.Server/Events/Update.cs b/ReallifeGamemode.Server/Events/Update.cs index 6b132388..d6717603 100644 --- a/ReallifeGamemode.Server/Events/Update.cs +++ b/ReallifeGamemode.Server/Events/Update.cs @@ -13,7 +13,7 @@ namespace ReallifeGamemode.Server.Events [ServerEvent(Event.Update)] public void UpdateEvent() { - + } } } diff --git a/ReallifeGamemode.Server/Events/UpdateCharacterCloth.cs b/ReallifeGamemode.Server/Events/UpdateCharacterCloth.cs index a7a2a81d..d2fce39e 100644 --- a/ReallifeGamemode.Server/Events/UpdateCharacterCloth.cs +++ b/ReallifeGamemode.Server/Events/UpdateCharacterCloth.cs @@ -115,7 +115,7 @@ namespace ReallifeGamemode.Server.Events } CharacterCloth torso = context.CharacterClothes.FirstOrDefault(u => u.UserId == user.Id && u.SlotType == 0 && u.SlotId == 3); CharacterCloth undershirt = context.CharacterClothes.FirstOrDefault(u => u.UserId == user.Id && u.SlotType == 0 && u.SlotId == 8); - + torso.ClothId = context.ClothCombinations.FirstOrDefault(c => c.Top == clothId[1] && c.Gender == character.Gender).Torso; undershirt.ClothId = context.ClothCombinations.FirstOrDefault(c => c.Top == clothId[1] && c.Gender == character.Gender).Undershirt; } @@ -139,7 +139,7 @@ namespace ReallifeGamemode.Server.Events foreach (var cloth in charClothes) { - if(cloth.SlotType == 1) + if (cloth.SlotType == 1) { player.SetAccessories(cloth.SlotId, cloth.ClothId, 0); } diff --git a/ReallifeGamemode.Server/Events/VehicleMenu.cs b/ReallifeGamemode.Server/Events/VehicleMenu.cs index bb6f1b3d..92e190bf 100644 --- a/ReallifeGamemode.Server/Events/VehicleMenu.cs +++ b/ReallifeGamemode.Server/Events/VehicleMenu.cs @@ -25,7 +25,7 @@ namespace ReallifeGamemode.Server.Events player.SendNotification("~r~Der Motor kann nur im Stand betätigt werden.", true); return; } - + bool state = VehicleStreaming.GetEngineState(v); ServerVehicle sV = v.GetServerVehicle(); if (sV != null) @@ -74,9 +74,9 @@ namespace ReallifeGamemode.Server.Events return; } } - else if(sV is UserVehicle uV) + else if (sV is UserVehicle uV) { - if(uV.UserId != u.Id && !u.IsAdmin(AdminLevel.ADMIN3)) + if (uV.UserId != u.Id && !u.IsAdmin(AdminLevel.ADMIN3)) { return; } diff --git a/ReallifeGamemode.Server/Extensions/AdminLevelExtension.cs b/ReallifeGamemode.Server/Extensions/AdminLevelExtension.cs index 5f29d488..df1b65ef 100644 --- a/ReallifeGamemode.Server/Extensions/AdminLevelExtension.cs +++ b/ReallifeGamemode.Server/Extensions/AdminLevelExtension.cs @@ -15,7 +15,7 @@ namespace ReallifeGamemode.Server.Extensions /// public static string GetName(this AdminLevel level) { - switch(level) + switch (level) { case SUPPORTER: return "Supporter"; diff --git a/ReallifeGamemode.Server/Extensions/ClientExtension.cs b/ReallifeGamemode.Server/Extensions/ClientExtension.cs index 75dfc84b..c9f248cc 100644 --- a/ReallifeGamemode.Server/Extensions/ClientExtension.cs +++ b/ReallifeGamemode.Server/Extensions/ClientExtension.cs @@ -25,7 +25,7 @@ namespace ReallifeGamemode.Server.Extensions public static User GetUser(this Client client, DatabaseContext context = null) { if (!client.IsLoggedIn()) return null; - if(context == null) + if (context == null) { using (context = new DatabaseContext()) { @@ -33,7 +33,8 @@ namespace ReallifeGamemode.Server.Extensions .Users .Include(u => u.Faction) .Include(u => u.FactionRank) - .FirstOrDefault(u => u.Name == client.Name); + .Where(u => u.Name == client.Name) + .FirstOrDefault(); } } else @@ -42,7 +43,8 @@ namespace ReallifeGamemode.Server.Extensions .Users .Include(u => u.Faction) .Include(u => u.FactionRank) - .FirstOrDefault(u => u.Name == client.Name); + .Where(u => u.Name == client.Name) + .FirstOrDefault(); } } diff --git a/ReallifeGamemode.Server/Inventory/GroundItem.cs b/ReallifeGamemode.Server/Inventory/GroundItem.cs index 0ac67d35..8bea67af 100644 --- a/ReallifeGamemode.Server/Inventory/GroundItem.cs +++ b/ReallifeGamemode.Server/Inventory/GroundItem.cs @@ -28,7 +28,7 @@ namespace ReallifeGamemode.Server.Inventory public static void PickUpGroundItem(Client player) { - GroundItem nearest = GroundItems.FirstOrDefault(d => d.Position.DistanceTo(player.Position) <= 1.2); + GroundItem nearest = GroundItems.FirstOrDefault(d => d.Position.DistanceTo(player.Position) <= 1.2); if (nearest != null) { var invWeight = InventoryManager.GetUserInventoryWeight(player); @@ -40,9 +40,9 @@ namespace ReallifeGamemode.Server.Inventory var user = player.GetUser(); if (nearestItem.Gewicht * nearest.Amount + invWeight > 40000) { - for(var i = 1; i <= nearest.Amount; i++) - { - if(invWeight + (i * nearestItem.Gewicht) > 40000) + for (var i = 1; i <= nearest.Amount; i++) + { + if (invWeight + (i * nearestItem.Gewicht) > 40000) { break; } @@ -51,13 +51,13 @@ namespace ReallifeGamemode.Server.Inventory itemsToAdd = i; } } - if(itemsToAdd < 1) + if (itemsToAdd < 1) { player.SendNotification("~r~Du hast keinen Platz im Inventar!", false); } else { - if(existingItem != null) + if (existingItem != null) { using (var context = new DatabaseContext()) { @@ -69,7 +69,7 @@ namespace ReallifeGamemode.Server.Inventory else { UserItem newItem = new UserItem { ItemId = nearest.ItemId, UserId = user.Id, Amount = nearest.Amount }; - InventoryManager.AddItemToInventory(player, newItem); + InventoryManager.AddItemToInventory(player, newItem); } nearest.Amount -= itemsToAdd; nearestTextLabel.Text = nearestItem.Name + " ~s~(~y~" + nearest.Amount + "~s~)"; @@ -84,17 +84,17 @@ namespace ReallifeGamemode.Server.Inventory { UserItem existingUserItem = context.UserItems.FirstOrDefault(i => i.Id == existingItem.Id && i.UserId == user.Id); existingUserItem.Amount += nearest.Amount; - context.SaveChanges(); + context.SaveChanges(); } } else { UserItem item = new UserItem() { ItemId = nearest.ItemId, UserId = user.Id, Amount = nearest.Amount }; - InventoryManager.AddItemToInventory(player, item); + InventoryManager.AddItemToInventory(player, item); } RemoveGroundItem(nearest, nearestObject, nearestTextLabel); player.SendNotification("Du hast ~g~" + nearest.Amount + " ~y~" + nearestItem.Name + " ~s~aufgehoben."); - } + } } } @@ -103,8 +103,8 @@ namespace ReallifeGamemode.Server.Inventory GroundItems.Remove(grndItem); NAPI.Entity.DeleteEntity(grndObject); NAPI.Entity.DeleteEntity(grndTextLabel); - GroundObjects.Remove(grndObject); - GroundTextLabels.Remove(grndTextLabel); + GroundObjects.Remove(grndObject); + GroundTextLabels.Remove(grndTextLabel); } } } diff --git a/ReallifeGamemode.Server/Inventory/Items/Cheeseburger.cs b/ReallifeGamemode.Server/Inventory/Items/Cheeseburger.cs index e77f3b49..47e97388 100644 --- a/ReallifeGamemode.Server/Inventory/Items/Cheeseburger.cs +++ b/ReallifeGamemode.Server/Inventory/Items/Cheeseburger.cs @@ -12,7 +12,7 @@ using System.Text; namespace ReallifeGamemode.Server.Inventory.Items { public class Cheeseburger : FoodItem - { + { public override int Id => 2; public override string Name => "Cheeseburger"; public override string Description => "Wie der Hamburger, nur mit Käse."; diff --git a/ReallifeGamemode.Server/Inventory/Items/FoodItem.cs b/ReallifeGamemode.Server/Inventory/Items/FoodItem.cs index 3ec801b6..3f191d20 100644 --- a/ReallifeGamemode.Server/Inventory/Items/FoodItem.cs +++ b/ReallifeGamemode.Server/Inventory/Items/FoodItem.cs @@ -24,7 +24,7 @@ namespace ReallifeGamemode.Server.Inventory.Items Client player = uItem.GetUser().Client; int amountToAdd = HpAmount; - if(player.Health + amountToAdd > 100) + if (player.Health + amountToAdd > 100) { amountToAdd = 100 - player.Health; } diff --git a/ReallifeGamemode.Server/Inventory/Items/Holz.cs b/ReallifeGamemode.Server/Inventory/Items/Holz.cs index 6ffdaddf..4c3faa49 100644 --- a/ReallifeGamemode.Server/Inventory/Items/Holz.cs +++ b/ReallifeGamemode.Server/Inventory/Items/Holz.cs @@ -10,7 +10,7 @@ using System.Text; */ namespace ReallifeGamemode.Server.Inventory.Items -{ +{ public class Holz : IDroppableItem { public int Id => 4; diff --git a/ReallifeGamemode.Server/Main.cs b/ReallifeGamemode.Server/Main.cs index 469bbc29..2f50ceeb 100644 --- a/ReallifeGamemode.Server/Main.cs +++ b/ReallifeGamemode.Server/Main.cs @@ -29,7 +29,7 @@ namespace ReallifeGamemode.Server NAPI.Server.SetAutoSpawnOnConnect(false); NAPI.Server.SetAutoRespawnAfterDeath(false); NAPI.Data.SetWorldData("playerCreatorDimension", 0); - + InventoryManager.LoadItems(); @@ -60,5 +60,5 @@ namespace ReallifeGamemode.Server NAPI.Data.SetWorldData("blipTemplate", tempBlip); } - } + } } \ No newline at end of file diff --git a/ReallifeGamemode.Server/Managers/ATMManager.cs b/ReallifeGamemode.Server/Managers/ATMManager.cs index d6efd2e5..c2b7b77d 100644 --- a/ReallifeGamemode.Server/Managers/ATMManager.cs +++ b/ReallifeGamemode.Server/Managers/ATMManager.cs @@ -28,7 +28,7 @@ namespace ReallifeGamemode.Server.Managers { if (currentATM.Sprite == 500) { - if(dbContext.ATMs.FirstOrDefault(a => a.Id == currentATM.Id) == null) + if (dbContext.ATMs.FirstOrDefault(a => a.Id == currentATM.Id) == null) { var dataSet = new ATM { @@ -46,7 +46,7 @@ namespace ReallifeGamemode.Server.Managers } } } - if(addedATMs > 0) + if (addedATMs > 0) { NAPI.Util.ConsoleOutput(addedATMs + " Geldautomaten hinzugefügt"); } @@ -54,7 +54,7 @@ namespace ReallifeGamemode.Server.Managers { NAPI.Util.ConsoleOutput("Keine Geldautomaten hinzugefügt"); } - + dbContext.SaveChanges(); LoadATMs(); } @@ -83,7 +83,7 @@ namespace ReallifeGamemode.Server.Managers } public static void ShowAtmUi(Client player, int atmId) { - player.TriggerEvent("SERVER:ShowAtmUi", atmId); + player.TriggerEvent("SERVER:ShowAtmUi", atmId); } [RemoteEvent("CLIENT:ATM_MAN:CHECK_BALANCE")] public void CheckATMBalance(Client client, int inputField1) @@ -94,7 +94,7 @@ namespace ReallifeGamemode.Server.Managers using (var dbContext = new DatabaseContext()) { var checkATM = dbContext.ATMs.FirstOrDefault(a => a.Id == nearATM); - if(checkATM.Balance < inputField1) + if (checkATM.Balance < inputField1) { //TODO im CEFBrowser anzeigen client.SendChatMessage("Nicht genügend Geld im Automaten. Maximal Verfügbar: " + checkATM.Balance); client.TriggerEvent("SERVER:WORLD_INTERACTION:ATM_ERROR", 0, checkATM.Balance); @@ -118,7 +118,7 @@ namespace ReallifeGamemode.Server.Managers { //GELD EINZAHLEN in1 case 0: - + var updateHandMoneyIn = dbContext.Users.FirstOrDefault(u => u.Id == user.Id); var updateBankMoneyIn = dbContext.UserBankAccounts.FirstOrDefault(b => b.UserId == user.Id); var updateATMBalanceIn = dbContext.ATMs.FirstOrDefault(a => a.Id == nearATM); @@ -144,6 +144,6 @@ namespace ReallifeGamemode.Server.Managers } dbContext.SaveChanges(); } - } + } } } diff --git a/ReallifeGamemode.Server/Managers/BusinessManager.cs b/ReallifeGamemode.Server/Managers/BusinessManager.cs index ba2f43e0..6e86212d 100644 --- a/ReallifeGamemode.Server/Managers/BusinessManager.cs +++ b/ReallifeGamemode.Server/Managers/BusinessManager.cs @@ -1,4 +1,5 @@ using GTANetworkAPI; +using Newtonsoft.Json; using ReallifeGamemode.Server.Business; using ReallifeGamemode.Server.Entities; using ReallifeGamemode.Server.Extensions; @@ -51,7 +52,7 @@ namespace ReallifeGamemode.Server.Managers public void BusinessDepositMoney(Client player, int amount) { User user = player.GetUser(); - if(user == null) + if (user == null) { return; } @@ -70,7 +71,8 @@ namespace ReallifeGamemode.Server.Managers player.SendNotification("~r~Du hast nicht genug Geld"); return; } - else */if(result == TransactionResult.SUCCESS) + else */ + if (result == TransactionResult.SUCCESS) { player.TriggerEvent("business_updateMoney", playerBusiness.GetBankAccount().Balance.ToMoneyString()); player.SendNotification("~g~Du hast erfolgreich ~s~" + amount.ToMoneyString() + " ~g~ überwiesen"); @@ -114,14 +116,24 @@ namespace ReallifeGamemode.Server.Managers { ServerVehicle sVeh = veh.GetServerVehicle(); if (sVeh == null) return; - if(!(sVeh is ShopVehicle)) return; + if (!(sVeh is ShopVehicle)) return; ShopVehicle shopVehicle = (ShopVehicle)sVeh; - player.TriggerEvent("ShopVehicle_OpenMenu", GetBusiness(shopVehicle.BusinessId).Name, shopVehicle.Price); + + List availableTargets = new List() + { + "Spieler (dich selbst)" + }; + + if (player.GetUser().FactionLeader && !player.GetUser().Faction.StateOwned) availableTargets.Add("Fraktion"); + if (player.GetUser().GroupRank == GroupRank.OWNER) availableTargets.Add("Gruppe"); + + player.TriggerEvent("ShopVehicle_OpenMenu", GetBusiness(shopVehicle.BusinessId).Name, shopVehicle.Price, availableTargets.ToArray()); } [RemoteEvent("VehShop_BuyVehicle")] - public void CarDealerBusiness_BuyVehicle(Client player) + public void CarDealerBusiness_BuyVehicle(Client player, string target) { + player.SendChatMessage(target); ServerVehicle sVeh = player.Vehicle?.GetServerVehicle(); if (sVeh == null) return; if (!(sVeh is ShopVehicle)) return; @@ -129,7 +141,7 @@ namespace ReallifeGamemode.Server.Managers int price = shopVehicle.Price; CarDealerBusinessBase business = GetBusiness(shopVehicle.BusinessId) as CarDealerBusinessBase; TransactionResult result = BankManager.TransferMoney(player.GetUser(), business, price, "Auto gekauft"); - if(result == TransactionResult.SENDER_NOT_ENOUGH_MONEY) + if (result == TransactionResult.SENDER_NOT_ENOUGH_MONEY) { player.SendNotification("~r~Du hast nicht genug Geld: " + price.ToMoneyString()); return; @@ -153,7 +165,7 @@ namespace ReallifeGamemode.Server.Managers Active = true, }; - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { dbContext.UserVehicles.Add(newVeh); dbContext.SaveChanges(); diff --git a/ReallifeGamemode.Server/Managers/CharacterCreator.cs b/ReallifeGamemode.Server/Managers/CharacterCreator.cs index 874865e0..39b69967 100644 --- a/ReallifeGamemode.Server/Managers/CharacterCreator.cs +++ b/ReallifeGamemode.Server/Managers/CharacterCreator.cs @@ -302,7 +302,7 @@ namespace ReallifeGamemode.Server.Managers player.SetHeadOverlay(11, blemishes); player.SetHeadOverlay(12, blemishes); - + //Gesicht (Vererbung durch Mutter / Vater) HeadBlend headBlend = new HeadBlend() { @@ -324,7 +324,7 @@ namespace ReallifeGamemode.Server.Managers //Augenfarbe NAPI.Player.SetPlayerEyeColor(player, character.EyeColor); - + } } } diff --git a/ReallifeGamemode.Server/Managers/DoorManager.cs b/ReallifeGamemode.Server/Managers/DoorManager.cs index 0b72ff44..13645f62 100644 --- a/ReallifeGamemode.Server/Managers/DoorManager.cs +++ b/ReallifeGamemode.Server/Managers/DoorManager.cs @@ -21,7 +21,7 @@ namespace ReallifeGamemode.Server.Managers { using (var dbContext = new DatabaseContext()) { - foreach(Door door in dbContext.Doors) + foreach (Door door in dbContext.Doors) { _doorColShapes[door.Id] = NAPI.ColShape.CreateSphereColShape(door.Position, 30f); } @@ -30,7 +30,7 @@ namespace ReallifeGamemode.Server.Managers public static void ReloadDoors() { - foreach(var doorPair in _doorColShapes) + foreach (var doorPair in _doorColShapes) { doorPair.Value.Entity().Delete(); } @@ -44,12 +44,12 @@ namespace ReallifeGamemode.Server.Managers using (var dbContext = new DatabaseContext()) { - IQueryable NearDoors = dbContext.Doors.Where(d => d.Position.DistanceTo(player.Position) <= d.Radius); + IQueryable NearDoors = dbContext.Doors.Where(d => d.Position.DistanceTo(player.Position) <= d.Radius); foreach (Door d in NearDoors) { - if(!user.IsAdmin(AdminLevel.ADMIN) && (d.FactionId != user.FactionId || d.FactionId == null)) + if (!user.IsAdmin(AdminLevel.ADMIN) && (d.FactionId != user.FactionId || d.FactionId == null)) { - string lockState = "~r~Du hast kein Recht diese T\u00fcr " + (d.Locked == true ? "auf" : "ab") + "zuschlie\u00dfen!"; + string lockState = "~r~Du hast kein Recht diese T\u00fcr " + (d.Locked == true ? "auf" : "ab") + "zuschlie\u00dfen!"; player.SendNotification(lockState, true); continue; } @@ -57,7 +57,7 @@ namespace ReallifeGamemode.Server.Managers d.Locked = !d.Locked; string notStr = d.Name + " " + (d.Locked == false ? "~g~auf" : "~r~ab") + "geschlossen"; - + player.SendNotification(notStr, true); NAPI.Pools.GetAllPlayers().ForEach(p => p.TriggerEvent("changeDoorState", d.Model, d.X, d.Y, d.Z, (d.Locked ? 1 : 0), 0.0f, 0.0f, 0.0f)); @@ -69,11 +69,11 @@ namespace ReallifeGamemode.Server.Managers [ServerEvent(Event.PlayerEnterColshape)] public void DoorManagerPlayerEnterColShapeEvent(ColShape colShape, Client player) { - if(_doorColShapes.ContainsValue(colShape.Handle)) + if (_doorColShapes.ContainsValue(colShape.Handle)) { int doorId = _doorColShapes.Where(d => d.Value.Value == colShape.Handle.Value).FirstOrDefault().Key; - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { Door door = dbContext.Doors.Where(d => d.Id == doorId).First(); player.TriggerEvent("changeDoorState", door.Model, door.X, door.Y, door.Z, (door.Locked ? 1 : 0), 0.0f, 0.0f, 0.0f); diff --git a/ReallifeGamemode.Server/Managers/InteriorManager.cs b/ReallifeGamemode.Server/Managers/InteriorManager.cs index 71004fa7..9598d9c6 100644 --- a/ReallifeGamemode.Server/Managers/InteriorManager.cs +++ b/ReallifeGamemode.Server/Managers/InteriorManager.cs @@ -17,7 +17,7 @@ namespace ReallifeGamemode.Server.Managers public static Interior GetInteriorByName(string name, DatabaseContext dbContext = null) { - if(dbContext == null) + if (dbContext == null) { using (dbContext = new DatabaseContext()) { @@ -114,12 +114,12 @@ namespace ReallifeGamemode.Server.Managers { int enterId = GetInteriorIdFromEnterColShape(colShape); int exitId = GetInteriorIdFromExitColShape(colShape); - if(enterId != 0) + if (enterId != 0) { Interior interior = GetInteriorById(enterId); player.TriggerEvent("InteriorManager_ShowHelpText", interior.Name, interior.Id, 0); } - else if(exitId != 0) + else if (exitId != 0) { Interior interior = GetInteriorById(exitId); player.TriggerEvent("InteriorManager_ShowHelpText", interior.Name, interior.Id, 1); @@ -129,7 +129,7 @@ namespace ReallifeGamemode.Server.Managers [ServerEvent(Event.PlayerExitColshape)] public void InteriorManagerPlayerExitColshapeEvent(ColShape colShape, Client player) { - if(GetInteriorIdFromEnterColShape(colShape) != 0 || GetInteriorIdFromExitColShape(colShape) != 0) + if (GetInteriorIdFromEnterColShape(colShape) != 0 || GetInteriorIdFromExitColShape(colShape) != 0) { player.TriggerEvent("InteriorManager_ClearHelpText"); } diff --git a/ReallifeGamemode.Server/Managers/InventoryManager.cs b/ReallifeGamemode.Server/Managers/InventoryManager.cs index 2204c34b..41070c64 100644 --- a/ReallifeGamemode.Server/Managers/InventoryManager.cs +++ b/ReallifeGamemode.Server/Managers/InventoryManager.cs @@ -218,7 +218,7 @@ namespace ReallifeGamemode.Server.Managers int newSlot = slotArr.Min(); item.Slot = newSlot; - context.UserItems.Add(item); + context.UserItems.Add(item); IItem iItem = GetItemById(item.ItemId); @@ -303,14 +303,14 @@ namespace ReallifeGamemode.Server.Managers { Vector3 dropPosition = ClientExtension.GetPositionFromPlayer(player, 0.6f, 0); dropPosition.Z -= 0.8f; - //new Vector3(player.Position.X, player.Position.Y, player.Position.Z - 0.8f); + //new Vector3(player.Position.X, player.Position.Y, player.Position.Z - 0.8f); Random r = new Random(); GTANetworkAPI.Object grndObject = NAPI.Object.CreateObject(3777723516, dropPosition, new Vector3(0, 0, r.Next(0, 360)), 0); - GroundItem grndItem = new GroundItem { ItemId = iItem.Id, Amount = amount, Position = dropPosition}; + GroundItem grndItem = new GroundItem { ItemId = iItem.Id, Amount = amount, Position = dropPosition }; TextLabel grndTxtLbl = NAPI.TextLabel.CreateTextLabel(iItem.Name + " ~s~(~y~" + amount + "~s~)", dropPosition, 5, 0.5f, 4, new Color(255, 255, 255), false, 0); GroundItem.AddGroundItem(grndItem, grndObject, grndTxtLbl); fItem.Amount -= amount; - player.TriggerEvent("removeItem", itemId, amount); + player.TriggerEvent("removeItem", itemId, amount); } break; } diff --git a/ReallifeGamemode.Server/Managers/LoadManager.cs b/ReallifeGamemode.Server/Managers/LoadManager.cs index f4070a2b..48765853 100644 --- a/ReallifeGamemode.Server/Managers/LoadManager.cs +++ b/ReallifeGamemode.Server/Managers/LoadManager.cs @@ -21,14 +21,14 @@ namespace ReallifeGamemode.Server.Managers { foreach (SavedBlip b in loadData.Blips) { - if(b.Active == true) - { - NAPI.Blip.CreateBlip((uint) b.Sprite, new Vector3(b.PositionX, b.PositionY, b.PositionZ), b.Scale, - b.Color, b.Name, b.Alpha, b.DrawDistance, b.ShortRange, (short) b.Rotation, b.Dimension); + if (b.Active == true) + { + NAPI.Blip.CreateBlip((uint)b.Sprite, new Vector3(b.PositionX, b.PositionY, b.PositionZ), b.Scale, + b.Color, b.Name, b.Alpha, b.DrawDistance, b.ShortRange, (short)b.Rotation, b.Dimension); } } - foreach(ServerVehicle veh in loadData.ServerVehicles) + foreach (ServerVehicle veh in loadData.ServerVehicles) { if (!veh.Active) continue; diff --git a/ReallifeGamemode.Server/Managers/PositionManager.cs b/ReallifeGamemode.Server/Managers/PositionManager.cs index 903468ec..a0d0ffcd 100644 --- a/ReallifeGamemode.Server/Managers/PositionManager.cs +++ b/ReallifeGamemode.Server/Managers/PositionManager.cs @@ -24,11 +24,11 @@ namespace ReallifeGamemode.Server.Managers foreach (DutyPoint d in DutyPoints) { - NAPI.Marker.CreateMarker(1, new Vector3(d.Position.X, d.Position.Y, d.Position.Z - 2), new Vector3(d.Position.X, d.Position.Y, d.Position.Z + 1), - new Vector3(0,0,0), 3, new Color(255, 255, 255, 50), false, 0); + NAPI.Marker.CreateMarker(1, new Vector3(d.Position.X, d.Position.Y, d.Position.Z - 2), new Vector3(d.Position.X, d.Position.Y, d.Position.Z + 1), + new Vector3(0, 0, 0), 3, new Color(255, 255, 255, 50), false, 0); NAPI.TextLabel.CreateTextLabel("Stempeluhr - Dr\u00fccke ~y~E\n~s~Dienstkleidung - Dr\u00fccke ~y~K", d.Position, 7, 1, 0, new Color(255, 255, 255), false, 0); } - } + } } public class DutyPoint diff --git a/ReallifeGamemode.Server/Managers/SaveManager.cs b/ReallifeGamemode.Server/Managers/SaveManager.cs index 5764ec24..17c44130 100644 --- a/ReallifeGamemode.Server/Managers/SaveManager.cs +++ b/ReallifeGamemode.Server/Managers/SaveManager.cs @@ -28,7 +28,7 @@ namespace ReallifeGamemode.Server.Managers float rotation = float.Parse(blipRotation); byte dimension = Convert.ToByte(blipDimension); - NAPI.Blip.CreateBlip(uint.Parse(blipSprite), new Vector3(x,y,z), scale, color, name, alpha, drawDistance, shortRange, short.Parse(blipRotation), dimension); + NAPI.Blip.CreateBlip(uint.Parse(blipSprite), new Vector3(x, y, z), scale, color, name, alpha, drawDistance, shortRange, short.Parse(blipRotation), dimension); using (var saveData = new DatabaseContext()) { @@ -170,7 +170,7 @@ namespace ReallifeGamemode.Server.Managers } saveAll.SaveChanges(); - } + } } } } diff --git a/ReallifeGamemode.Server/Managers/TimeManager.cs b/ReallifeGamemode.Server/Managers/TimeManager.cs index 2571705f..4da83860 100644 --- a/ReallifeGamemode.Server/Managers/TimeManager.cs +++ b/ReallifeGamemode.Server/Managers/TimeManager.cs @@ -12,7 +12,7 @@ namespace ReallifeGamemode.Server.Managers public static void StartTimeManager() { - if(realTimeTimer == null) + if (realTimeTimer == null) { realTimeTimer = new Timer(1000); realTimeTimer.Elapsed += SetTime; diff --git a/ReallifeGamemode.Server/Managers/TuningManager.cs b/ReallifeGamemode.Server/Managers/TuningManager.cs index 6a816949..9f4a8cb0 100644 --- a/ReallifeGamemode.Server/Managers/TuningManager.cs +++ b/ReallifeGamemode.Server/Managers/TuningManager.cs @@ -31,10 +31,10 @@ namespace ReallifeGamemode.Server.Managers colShape.OnEntityEnterColShape += (cs, c) => { - if(c.IsInVehicle) + if (c.IsInVehicle) { Vehicle v = c.Vehicle; - if(v.GetServerVehicle() is FactionVehicle fV && fV.GetFaction().StateOwned) + if (v.GetServerVehicle() is FactionVehicle fV && fV.GetFaction().StateOwned) { return; } @@ -60,13 +60,13 @@ namespace ReallifeGamemode.Server.Managers using (var dbContext = new DatabaseContext()) { - foreach(VehicleMod vMod in dbContext.VehicleMods.ToList().FindAll(vM => vM.ServerVehicleId == sVeh.Id)) + foreach (VehicleMod vMod in dbContext.VehicleMods.ToList().FindAll(vM => vM.ServerVehicleId == sVeh.Id)) { - if(vMod.Slot == 18) + if (vMod.Slot == 18) { veh.SetSharedData("mod" + vMod.Slot, true); } - else if(vMod.Slot == 22) + else if (vMod.Slot == 22) { int color = vMod.ModId - 2; if (vMod.ModId == 0) color = -1; @@ -99,9 +99,9 @@ namespace ReallifeGamemode.Server.Managers Vehicle pV = player.Vehicle; if (index == 0) index--; - if(slot != 18) + if (slot != 18) { - if(slot == 22) + if (slot == 22) { int color = index - 2; if (index == 0) color = -1; @@ -126,7 +126,7 @@ namespace ReallifeGamemode.Server.Managers using (var dbContext = new DatabaseContext()) { VehicleMod vMod = dbContext.VehicleMods.FirstOrDefault(m => m.ServerVehicleId == sV.Id && m.Slot == slot); - if(vMod == null && index != -1) + if (vMod == null && index != -1) { vMod = new VehicleMod { @@ -136,7 +136,7 @@ namespace ReallifeGamemode.Server.Managers }; dbContext.VehicleMods.Add(vMod); } - else if(vMod != null && index == -1) + else if (vMod != null && index == -1) { dbContext.VehicleMods.Remove(vMod); } diff --git a/ReallifeGamemode.Server/Managers/VehicleManager.cs b/ReallifeGamemode.Server/Managers/VehicleManager.cs index 57b7b138..4bdf44a7 100644 --- a/ReallifeGamemode.Server/Managers/VehicleManager.cs +++ b/ReallifeGamemode.Server/Managers/VehicleManager.cs @@ -117,7 +117,7 @@ namespace ReallifeGamemode.Server.Managers public static void AddVehicle(ServerVehicle serverVehicle, Vehicle vehicle) { - if(_serverVehicles.ContainsKey(serverVehicle.Id)) + if (_serverVehicles.ContainsKey(serverVehicle.Id)) { return; } @@ -152,7 +152,7 @@ namespace ReallifeGamemode.Server.Managers public static Vehicle GetVehicleFromServerVehicle(ServerVehicle serverVehicle) { - if(!_serverVehicles.ContainsKey(serverVehicle.Id)) + if (!_serverVehicles.ContainsKey(serverVehicle.Id)) { return null; } @@ -162,7 +162,7 @@ namespace ReallifeGamemode.Server.Managers public static ServerVehicle GetServerVehicleFromVehicle(Vehicle veh, DatabaseContext dbContext = null) { - if(dbContext == null) + if (dbContext == null) { using (dbContext = new DatabaseContext()) { @@ -191,12 +191,12 @@ namespace ReallifeGamemode.Server.Managers public static bool IsValidHash(uint hash) { - foreach(VehicleHash vh in Enum.GetValues(typeof(VehicleHash))) + foreach (VehicleHash vh in Enum.GetValues(typeof(VehicleHash))) { if ((uint)vh == hash) return true; } - foreach(string mod in _enabledMods) + foreach (string mod in _enabledMods) { if (NAPI.Util.GetHashKey(mod) == hash) return true; } diff --git a/ReallifeGamemode.Server/Migrations/20190505145708_Groups.Designer.cs b/ReallifeGamemode.Server/Migrations/20190505154643_Groups.Designer.cs similarity index 99% rename from ReallifeGamemode.Server/Migrations/20190505145708_Groups.Designer.cs rename to ReallifeGamemode.Server/Migrations/20190505154643_Groups.Designer.cs index 13abc59f..791187a5 100644 --- a/ReallifeGamemode.Server/Migrations/20190505145708_Groups.Designer.cs +++ b/ReallifeGamemode.Server/Migrations/20190505154643_Groups.Designer.cs @@ -9,7 +9,7 @@ using ReallifeGamemode.Server.Models; namespace ReallifeGamemode.Migrations { [DbContext(typeof(DatabaseContext))] - [Migration("20190505145708_Groups")] + [Migration("20190505154643_Groups")] partial class Groups { protected override void BuildTargetModel(ModelBuilder modelBuilder) @@ -776,6 +776,8 @@ namespace ReallifeGamemode.Migrations b.Property("GroupId"); + b.Property("GroupRank"); + b.Property("Handmoney"); b.Property("LogUserId"); diff --git a/ReallifeGamemode.Server/Migrations/20190505145708_Groups.cs b/ReallifeGamemode.Server/Migrations/20190505154643_Groups.cs similarity index 93% rename from ReallifeGamemode.Server/Migrations/20190505145708_Groups.cs rename to ReallifeGamemode.Server/Migrations/20190505154643_Groups.cs index 9638ed0f..847177f8 100644 --- a/ReallifeGamemode.Server/Migrations/20190505145708_Groups.cs +++ b/ReallifeGamemode.Server/Migrations/20190505154643_Groups.cs @@ -12,6 +12,12 @@ namespace ReallifeGamemode.Migrations table: "Users", nullable: true); + migrationBuilder.AddColumn( + name: "GroupRank", + table: "Users", + nullable: false, + defaultValue: 0); + migrationBuilder.AddColumn( name: "GroupId", table: "ServerVehicles", @@ -110,6 +116,10 @@ namespace ReallifeGamemode.Migrations name: "GroupId", table: "Users"); + migrationBuilder.DropColumn( + name: "GroupRank", + table: "Users"); + migrationBuilder.DropColumn( name: "GroupId", table: "ServerVehicles"); diff --git a/ReallifeGamemode.Server/Migrations/DatabaseContextModelSnapshot.cs b/ReallifeGamemode.Server/Migrations/DatabaseContextModelSnapshot.cs index 0a33caed..89b5489d 100644 --- a/ReallifeGamemode.Server/Migrations/DatabaseContextModelSnapshot.cs +++ b/ReallifeGamemode.Server/Migrations/DatabaseContextModelSnapshot.cs @@ -774,6 +774,8 @@ namespace ReallifeGamemode.Migrations b.Property("GroupId"); + b.Property("GroupRank"); + b.Property("Handmoney"); b.Property("LogUserId"); diff --git a/ReallifeGamemode.Server/Services/ChatService.cs b/ReallifeGamemode.Server/Services/ChatService.cs index 3b289130..b5fb7200 100644 --- a/ReallifeGamemode.Server/Services/ChatService.cs +++ b/ReallifeGamemode.Server/Services/ChatService.cs @@ -68,7 +68,7 @@ namespace ReallifeGamemode.Server.Services { NAPI.Pools.GetAllPlayers().ForEach(p => { - if(p.GetUser()?.IsAdmin(minLevel) ?? false) + if (p.GetUser()?.IsAdmin(minLevel) ?? false) { p.SendChatMessage(message); } diff --git a/ReallifeGamemode.Server/Services/ClientService.cs b/ReallifeGamemode.Server/Services/ClientService.cs index 5112794d..2c911efb 100644 --- a/ReallifeGamemode.Server/Services/ClientService.cs +++ b/ReallifeGamemode.Server/Services/ClientService.cs @@ -25,15 +25,15 @@ namespace ReallifeGamemode.Server.Services List playerList = NAPI.Pools.GetAllPlayers(); - if(int.TryParse(nameOrId, out int id)) + if (int.TryParse(nameOrId, out int id)) { toReturn = playerList.Find(p => p.Handle.Value == id); return toReturn; } - + toReturn = playerList.Find(p => p.Name.ToLower() == nameOrId); - if(toReturn == null) + if (toReturn == null) { toReturn = playerList.Find(p => p.Name.ToLower().StartsWith(nameOrId)); } diff --git a/ReallifeGamemode.Server/Util/DatabaseHelper.cs b/ReallifeGamemode.Server/Util/DatabaseHelper.cs index 7dec58f8..78531e60 100644 --- a/ReallifeGamemode.Server/Util/DatabaseHelper.cs +++ b/ReallifeGamemode.Server/Util/DatabaseHelper.cs @@ -9,7 +9,7 @@ namespace ReallifeGamemode.Server.Util public static void InitDatabaseFirstTime() { NAPI.Util.ConsoleOutput("Initializing database..."); - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { dbContext.Users.FirstOrDefault(); dbContext.SaveChanges(); diff --git a/ReallifeGamemode.Server/Util/FactionHelper.cs b/ReallifeGamemode.Server/Util/FactionHelper.cs index 5c5f8706..5bb56020 100644 --- a/ReallifeGamemode.Server/Util/FactionHelper.cs +++ b/ReallifeGamemode.Server/Util/FactionHelper.cs @@ -9,11 +9,11 @@ namespace ReallifeGamemode.Server.Util public static void CheckFactionBankAccounts() { NAPI.Util.ConsoleOutput("Checking faction bank accounts..."); - using(var dbContext = new DatabaseContext()) + using (var dbContext = new DatabaseContext()) { - foreach(Faction faction in dbContext.Factions) + foreach (Faction faction in dbContext.Factions) { - if(faction.GetBankAccount(dbContext) == null) + if (faction.GetBankAccount(dbContext) == null) { NAPI.Util.ConsoleOutput("Adding bank account for faction: " + faction.Name); FactionBankAccount factionBankAccount = new FactionBankAccount() diff --git a/ReallifeGamemode.Server/Util/GroupRanks.cs b/ReallifeGamemode.Server/Util/GroupRanks.cs new file mode 100644 index 00000000..440322ac --- /dev/null +++ b/ReallifeGamemode.Server/Util/GroupRanks.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace ReallifeGamemode.Server.Util +{ + public enum GroupRank + { + NONE, + MEMBER, + MANAGER, + OWNER + } +} diff --git a/ReallifeGamemode.Server/Util/ListPlayer.cs b/ReallifeGamemode.Server/Util/ListPlayer.cs index 5fbef9e1..34e750c6 100644 --- a/ReallifeGamemode.Server/Util/ListPlayer.cs +++ b/ReallifeGamemode.Server/Util/ListPlayer.cs @@ -11,7 +11,7 @@ using GTANetworkAPI; namespace ReallifeGamemode.Server.Util { - public class ListPlayer + public class ListPlayer { public int Id { get; set; } public string Name { get; set; } diff --git a/ReallifeGamemode.Server/Util/VehicleSync.cs b/ReallifeGamemode.Server/Util/VehicleSync.cs index 5fc2042b..e64a618a 100644 --- a/ReallifeGamemode.Server/Util/VehicleSync.cs +++ b/ReallifeGamemode.Server/Util/VehicleSync.cs @@ -179,7 +179,7 @@ namespace ReallifeGamemode.Server.Util VehicleSyncData data = GetVehicleSyncData(veh); if (data == default(VehicleSyncData)) data = new VehicleSyncData(); - + data.Engine = status; UpdateVehicleSyncData(veh, data); NAPI.ClientEvent.TriggerClientEventInDimension(veh.Dimension, "VehStream_SetEngineStatus", veh, status); @@ -207,7 +207,7 @@ namespace ReallifeGamemode.Server.Util NAPI.ClientEvent.TriggerClientEventInDimension(veh.Dimension, "VehStream_SetLockStatus", veh, status); NAPI.Pools.GetAllPlayers().ForEach(p => { - if(p.IsInVehicle && p.Vehicle.Handle == veh.Handle) + if (p.IsInVehicle && p.Vehicle.Handle == veh.Handle) { p.TriggerEvent("Vehicle_setLockStatus", status); }