/rrveh hinzugefügert

This commit is contained in:
Luke
2020-08-09 22:22:20 +02:00
parent 336bfd0f18
commit d94188740b

View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
@@ -1230,6 +1230,49 @@ namespace ReallifeGamemode.Server.Commands
newVeh.Rotation = new Vector3(0, 0, serverVehicle.Heading);
}
[Command("rrespawnvehicle", "~m~Benutzung: ~s~/rrespawnvehicle [Radius]", Alias = "rrveh")]
public void CmdAdminRangeRespawnVehicle(Player player, float radius)
{
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
{
ChatService.NotAuthorized(player);
return;
}
if (radius > 500)
{
ChatService.ErrorMessage(player, $"Der angegebene Radius ist zu hoch (Maximum: 500)");
return;
}
List<Vehicle> vehiclesInRange = NAPI.Pools.GetAllVehicles().Where(v => v.Position.DistanceTo(player.Position) <= radius).ToList<Vehicle>();
if (vehiclesInRange.Count == 0)
{
ChatService.ErrorMessage(player, $"Es befinden sich keine Fahrzeuge in deiner Nähe (Radius: {radius} SE)");
return;
}
int respawnedVehicleCount = 0;
foreach (Vehicle v in vehiclesInRange)
{
ServerVehicle serverVehicle = VehicleManager.GetServerVehicleFromVehicle(v);
if(serverVehicle == null)
{
VehicleManager.DeleteVehicle(v);
v.Trailer?.Delete();
continue;
}
Vehicle newVeh = serverVehicle.Spawn(v);
newVeh.Repair();
newVeh.Rotation = new Vector3(0, 0, serverVehicle.Heading);
respawnedVehicleCount++;
}
ChatService.BroadcastAdmin($"~g~Fahrzeug(e) respawnt: ~s~{player.Name} hat {respawnedVehicleCount} Fahrzeuge respawnt (Radius: {radius} SE).", AdminLevel.ADMIN);
}
#endregion ALevel1
#region ALevel2