bestimmte fahrzeuge nur für 1337

This commit is contained in:
hydrant
2021-05-09 22:03:18 +02:00
parent 751fc4c311
commit 4f43cad8ff
2 changed files with 131 additions and 3 deletions

View File

@@ -1554,8 +1554,8 @@ namespace ReallifeGamemode.Server.Commands
[Command("veh", "~m~Benutzung: ~s~/veh [Fahrzeug] (Farbe 1) (Farbe 2)")]
public void CmdAdminVeh(Player player, string hash, int color1 = 111, int color2 = 111)
{
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
//TODO: Bestimmte Autos nur ab Adminlevel 1337, "normale Fahrzeuge" schon ab Adminlevel 3.
User user = player.GetUser();
if (!user.IsAdmin(AdminLevel.ADMIN))
{
ChatService.NotAuthorized(player);
return;
@@ -1576,6 +1576,12 @@ namespace ReallifeGamemode.Server.Commands
return;
}
if (VehicleManager.IsVehicleRestricted(hash) && !user.IsAdmin(AdminLevel.HEADADMIN))
{
ChatService.SendMessage(player, "haha kein 1337 rofl");
return;
}
Vehicle v = NAPI.Vehicle.CreateVehicle(uHash, player.Position, player.Heading, color1, color2, engine: true);
VehicleStreaming.SetEngineState(v, true);
VehicleStreaming.SetLockStatus(v, false);

View File

@@ -767,6 +767,126 @@ namespace ReallifeGamemode.Server.Managers
"fibr",//mod
};
private static readonly List<string> _restrictedVehicles = new List<string>()
{
"dinghy5",
"kosatka",
"cerberus",
"cerberus2",
"cerberus3",
"firetruk",
"issi4",
"issi5",
"issi6",
"jb700",
"jb7002",
"riot2",
"akula",
"annihilator",
"buzzard",
"havok",
"hunter",
"savage",
"seasparrow",
"valkyrie",
"valkyrie2",
"annihilator2",
"seasparrow2",
"seasparrow3",
"apc",
"barrage",
"chernobog",
"halftrack",
"khanjali",
"minitank",
"rhino",
"scarab",
"scarab2",
"scarab3",
"thruster",
"trailersmall2",
"oppressor",
"oppressor2",
"deathbike",
"deathbike2",
"deathbike3",
"dominator4",
"dominator5",
"dominator6",
"slamvan4",
"slamvan5",
"slamvan6",
"imperator3",
"imperator",
"imperator2",
"impaler2",
"impaler3",
"impaler4",
"tampa3",
"bruiser",
"bruiser2",
"bruiser3",
"brutus",
"brutus2",
"brutus3",
"caracara",
"dune3",
"insurgent",
"insurgent3",
"monster3",
"monster4",
"monster5",
"menacer",
"nightshark",
"fibn2",
"rcbandito",
"minitank",
"technical",
"technical2",
"technical3",
"avenger",
"avenger2",
"bombushka",
"hydra",
"lazer",
"microlight",
"mogul",
"molotok",
"nokota",
"pyro",
"rogue",
"strikeforce",
"seabreeze",
"starling",
"tula",
"volatol",
"alkonost",
"limo2",
"zr380",
"zr3802",
"zr3803",
"ardent",
"deluxo",
"stromberg",
"toreador",
"comet4",
"scramjet",
"vigilante",
"voltic2",
"freight",
"freightcar",
"freightcont1",
"freightcont2",
"freightgrain",
"metrotrain",
"tankercar",
"trailerlarge",
"boxville5",
"mule4",
"speedo4",
"pounder2"
};
private static readonly Dictionary<int, ushort> _serverVehicles = new Dictionary<int, ushort>();
private static readonly Dictionary<NetHandle, Vector3> lastPositions = new Dictionary<NetHandle, Vector3>();
@@ -785,6 +905,8 @@ namespace ReallifeGamemode.Server.Managers
}
}
public static bool IsVehicleRestricted(string name) => _restrictedVehicles.Contains(name.ToLower());
public static void VehicleTimerTick()
{
NAPI.Task.Run(() =>
@@ -967,7 +1089,7 @@ namespace ReallifeGamemode.Server.Managers
return;
}
InventoryManager.RemoveAllItemsfromVehicleInventory(vehicle);
serverVehicle.Spawn(vehicle);
}