diff --git a/ReallifeGamemode.Client/Interaction/clothes/ClotheShop.ts b/ReallifeGamemode.Client/Interaction/clothes/ClotheShop.ts index f7c8088c..b112c072 100644 --- a/ReallifeGamemode.Client/Interaction/clothes/ClotheShop.ts +++ b/ReallifeGamemode.Client/Interaction/clothes/ClotheShop.ts @@ -26,25 +26,25 @@ const Color = NativeUI.Color; export default function clotheShopList(globalData: IGlobalData) { const categoryTitles = { clothes: { - 1: "Masks", - 2: "Hair Styles", - 3: "Torsos", - 4: "Legs", - 5: "Bags and Parachutes", - 6: "Shoes", + 1: "Masken", + 2: "Haar Stil", + 3: "Oberkörper", + 4: "Hosen", + 5: "Taschen und Fallschirme", + 6: "Schuhe", 7: "Accessories", 8: "Undershirts", - 9: "Body Armors", + 9: "Schutzwesten", 10: "Decals", - 11: "Tops" + 11: "Oberteile" }, props: { - 0: "Hats", - 1: "Glasses", - 2: "Ears", - 6: "Watches", - 7: "Bracelets" + 0: "Kopfbedeckungen", + 1: "Brillen", + 2: "Ohrringe", + 6: "Uhren", + 7: "Armbänder" } }; @@ -158,12 +158,12 @@ export default function clotheShopList(globalData: IGlobalData) { return; } } - mainMenu.AddItem(new UIMenuItem(categoryTitles[type][key], `${type === "props" ? "Prop category." : "Clothing category."}`)); + mainMenu.AddItem(new UIMenuItem(categoryTitles[type][key], `${type === "props" ? " " : " "}`)); // Create category menu categoryMenu = new UIMenu("", categoryTitles[type][key].toUpperCase(), new Point(0, 0), bannerSprite.library, bannerSprite.texture); categoryMenu.Visible = false; } else { - mainMenu.AddItem(new UIMenuItem(categoryTitles[type][key], `${type === "props" ? "Prop category." : "Clothing category."}`)); + mainMenu.AddItem(new UIMenuItem(categoryTitles[type][key], `${type === "props" ? " " : " "}`)); // Create category menu categoryMenu = new UIMenu("", categoryTitles[type][key].toUpperCase(), new Point(0, 0), bannerSprite.library, bannerSprite.texture); categoryMenu.Visible = false; @@ -175,24 +175,28 @@ export default function clotheShopList(globalData: IGlobalData) { for (const item of value) { if (item.ComponentId == key) { + var txData = getClothingName(key, item.ClotheId, gender); + let clotheUpperMenu = new UIMenu(mp.game.ui.getLabelText(txData[0].data[0].GXT), " ", new Point(0, 0), bannerSprite.library, bannerSprite.texture); + clotheUpperMenu.Visible = false; for (const x of txData) { - var itemDescription = (key === 11 ? mp.game.ui.getLabelText(x.undershirt[1].GXT) : "Clothing item."); + var itemDescription = (key === 11 ? mp.game.ui.getLabelText(x.undershirt[1].GXT) : " "); //var itemDescription = (key === 11 ? x.undershirt[1].GXT + " - " + x.id: "Clothing item."); if (itemDescription == "NULL") { - itemDescription = "Clothing item."; + itemDescription = ""; } const tempItem = new UIMenuItem(mp.game.ui.getLabelText(x.data[0].GXT), itemDescription); //const tempItem = new UIMenuItem(x.data[0].GXT + " - " + x.id , itemDescription); - tempItem.SetRightLabel(`${item.Price > 0 ? `$${item.Price}` : "FREE"}`); + tempItem.SetRightLabel(`${item.Price > 0 ? `$${item.Price}` : "KOSTENLOS"}`); - categoryMenu.AddItem(tempItem); + clotheUpperMenu.AddItem(tempItem); cloth.push(item); tx.push(x); } + categoryMenu.AddItem(clotheUpperMenu); } } diff --git a/ReallifeGamemode.Client/Interaction/interactionmenu.ts b/ReallifeGamemode.Client/Interaction/interactionmenu.ts index 3b81278e..d664ecf3 100644 --- a/ReallifeGamemode.Client/Interaction/interactionmenu.ts +++ b/ReallifeGamemode.Client/Interaction/interactionmenu.ts @@ -169,7 +169,6 @@ export default function (globalData: IGlobalData) { } else if (item === payItem) { mp.gui.chat.activate(true); mp.gui.cursor.show(true, true); - globalData.InMenu = true; var input = new InputHelper("Welchem Spieler möchtest du Geld geben (Name / ID)?", globalData); input.show(); input.getValue(name => { diff --git a/ReallifeGamemode.Server/Job/BusDriverJob.cs b/ReallifeGamemode.Server/Job/BusDriverJob.cs index 7587bf04..617978c3 100644 --- a/ReallifeGamemode.Server/Job/BusDriverJob.cs +++ b/ReallifeGamemode.Server/Job/BusDriverJob.cs @@ -100,7 +100,6 @@ namespace ReallifeGamemode.Server.Job }.AsReadOnly(); private readonly IReadOnlyCollection Skill2Route2 = new List//Bus_Skill_2_Route_2 { - new Vector3(1925.767333984375, 2614.566162109375, 46.16560363769531), new Vector3(299.0667419433594, 2642.93798828125, 44.60177993774414), new Vector3(1162.4556884765625, 1806.3663330078125, 74.3133773803711), @@ -111,13 +110,26 @@ namespace ReallifeGamemode.Server.Job }.AsReadOnly(); private readonly IReadOnlyCollection Skill2Route3 = new List//Bus_Skill_2_Route_3 { - - new Vector3(-562.68, -2203.85, 5.5), + new Vector3(-1855.54,153.604,79.0297), + new Vector3(-1538.72,1375.19,124.3), + new Vector3(-1101.74,2668.48,17.7363), + new Vector3(1964.14,3718.04,31.2255), + new Vector3(2566.1,396.879,107.463), + new Vector3(254.405,-982.937,28.274), + new Vector3(-562.68, -2203.85, 4.5), }.AsReadOnly(); private readonly IReadOnlyCollection Skill2Route4 = new List//Bus_Skill_2_Route_4 { + new Vector3(-1037.8,-2716.02,12.7963), + new Vector3(1662.69,4849.72,40.9165), + new Vector3(57.8575,3735.46,38.7301), + new Vector3(-1109.48,2681,17.8602), + new Vector3(-2536.35,2322.65,32.0599), + new Vector3(-3232.01,961.997,12.1515), + new Vector3(-3014.22,364.543,13.7242), + new Vector3(-1580.52,-652.24,28.5874), + new Vector3(-578.954,-2224.8,4.75774), - new Vector3(-562.68, -2203.85, 5.5), }.AsReadOnly(); private readonly IReadOnlyCollection Skill3Route1 = new List//Bus_Skill_3_Route_1 { @@ -159,8 +171,16 @@ namespace ReallifeGamemode.Server.Job }.AsReadOnly(); private readonly IReadOnlyCollection Skill3Route3 = new List//Bus_Skill_3_Route_3 { - - new Vector3(-562.68, -2203.85, 5.5), + new Vector3(-146.62071, -2178.8228, 9.194298), + new Vector3(14.580393, -1578.6385, 28.212185), + new Vector3(222.91612, -1098.8556, 28.227453), + new Vector3(246.44946, -648.45496, 38.420746), + new Vector3(102.181, -298.95276, 45.04399), + new Vector3(-104.91002, -606.26013, 35.06103), + new Vector3(-288.1007, -1204.5107, 23.403156), + new Vector3(-166.23526, -1574.4166, 34.152023), + new Vector3(-60.337997, -1976.121, 15.486664), + new Vector3(-599.1891, -2049.2695, 5.14637), }.AsReadOnly(); private readonly IReadOnlyCollection Skill3Route4 = new List//Bus_Skill_3_Route_4 { @@ -302,7 +322,7 @@ namespace ReallifeGamemode.Server.Job if ((VehicleHash)veh.Model == VehicleHash.Coach) { Random rnd = new Random(); - int rroute = rnd.Next(1, 3); + int rroute = rnd.Next(1, 5); switch (rroute) { case 1: @@ -340,7 +360,7 @@ namespace ReallifeGamemode.Server.Job if ((VehicleHash)veh.Model == VehicleHash.Tourbus) { Random rnd = new Random(); - int rroute = rnd.Next(1, 3); + int rroute = rnd.Next(1, 4); switch (rroute) { case 1: diff --git a/ReallifeGamemode.Server/Managers/InteractionManager.cs b/ReallifeGamemode.Server/Managers/InteractionManager.cs index ae4656a1..33bad362 100644 --- a/ReallifeGamemode.Server/Managers/InteractionManager.cs +++ b/ReallifeGamemode.Server/Managers/InteractionManager.cs @@ -796,14 +796,15 @@ namespace ReallifeGamemode.Server.Managers if (!player.IsLoggedIn()) return; List players = NAPI.Pools.GetAllPlayers(); - var listPlayers = players.Select(p => new + var listPlayers = players.Where(p => p.GetUser().Wanteds > 0) + .Select(p => new { Id = p.Handle.Value, p.Name, wanted = p.GetUser().Wanteds, - }) ; + }); - if(listPlayers.Count() > 0) + if (listPlayers.Count() > 0) player.TriggerEvent("showWantedlist", JsonConvert.SerializeObject(listPlayers)); else player.SendNotification("~r~[Fehler] ~w~Es gibt derzeitig keine Verbrecher!");