Merge branch 'develop' of ssh://development.life-of-german.org:451/log-gtav/reallife-gamemode into develop
This commit is contained in:
@@ -90,13 +90,10 @@ namespace reallife_gamemode.Server.Commands
|
||||
|
||||
player.SendChatMessage("Online Teammitglieder:");
|
||||
|
||||
List<Client> playerlist = NAPI.Pools.GetAllPlayers();
|
||||
List<Client> playerlist = NAPI.Pools.GetAllPlayers().FindAll(c => c.GetUser()?.IsAdmin(AdminLevel.SUPPORTER) ?? false).OrderByDescending(c => c.GetUser().AdminLevel).ToList();
|
||||
foreach (Client currentPlayer in playerlist)
|
||||
{
|
||||
if (currentPlayer.GetUser()?.IsAdmin(AdminLevel.SUPPORTER) ?? false)
|
||||
{
|
||||
player.SendChatMessage(currentPlayer.Name);
|
||||
}
|
||||
player.SendChatMessage(currentPlayer.GetUser().AdminLevel.GetName() + " | " + currentPlayer.Name);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -842,7 +839,8 @@ namespace reallife_gamemode.Server.Commands
|
||||
return;
|
||||
}
|
||||
|
||||
uint uHash = NAPI.Util.GetHashKey(hash);
|
||||
if(!uint.TryParse(hash, out uint uHash))
|
||||
uHash = NAPI.Util.GetHashKey(hash);
|
||||
|
||||
if(!VehicleManager.IsValidHash(uHash))
|
||||
{
|
||||
@@ -873,8 +871,8 @@ namespace reallife_gamemode.Server.Commands
|
||||
player.Vehicle.Repair();
|
||||
}
|
||||
|
||||
[Command("vdestroy")]
|
||||
public void CmdAdminVdestroy(Client player)
|
||||
[Command("vdestroy", "~m~Benutzung: ~s~/vdestroy (ID)")]
|
||||
public void CmdAdminVdestroy(Client player, int vid = -1)
|
||||
{
|
||||
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN3) ?? true)
|
||||
{
|
||||
@@ -882,22 +880,35 @@ namespace reallife_gamemode.Server.Commands
|
||||
return;
|
||||
}
|
||||
|
||||
if (!player.IsInVehicle)
|
||||
Vehicle targetVeh;
|
||||
|
||||
if (vid == -1)
|
||||
{
|
||||
player.SendChatMessage("~r~[FEHLER]~s~ Du sitzt momentan nicht in einem Fahrzeug.");
|
||||
return;
|
||||
if (!player.IsInVehicle)
|
||||
{
|
||||
player.SendChatMessage("~m~Benutzung: ~s~/vdestroy (ID)");
|
||||
return;
|
||||
}
|
||||
targetVeh = player.Vehicle;
|
||||
}
|
||||
else
|
||||
{
|
||||
targetVeh = VehicleManager.GetVehicleFromId(vid);
|
||||
if(targetVeh == null)
|
||||
{
|
||||
player.SendChatMessage("~r~[FEHLER]~s~ Dieses Fahrzeug existiert nicht.");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Vehicle playerVeh = player.Vehicle;
|
||||
|
||||
ServerVehicle veh = VehicleManager.GetServerVehicleFromVehicle(playerVeh);
|
||||
ServerVehicle veh = VehicleManager.GetServerVehicleFromVehicle(targetVeh);
|
||||
if(veh != null)
|
||||
{
|
||||
player.SendChatMessage("~r~[FEHLER]~s~ Dieses Fahrzeug wird von einem Server-System benutzt: ~m~" + veh.GetType().Name);
|
||||
return;
|
||||
}
|
||||
|
||||
VehicleManager.DeleteVehicle(playerVeh);
|
||||
VehicleManager.DeleteVehicle(targetVeh);
|
||||
}
|
||||
|
||||
[Command("vlivery", "~m~Benutzung: ~s~/vlivery [Livery]")]
|
||||
@@ -1297,7 +1308,7 @@ namespace reallife_gamemode.Server.Commands
|
||||
}
|
||||
|
||||
[Command("time", "~m~Benutzung: ~s~/time [Stunde] (Minuten) (Sekunden)")]
|
||||
public void CmdAdminSetTime(Client player, int hour, int min = 0, int sec = 0)
|
||||
public void CmdAdminTime(Client player, int hour, int min = 0, int sec = 0)
|
||||
{
|
||||
if (!player.GetUser()?.IsAdmin(AdminLevel.HEADADMIN) ?? true)
|
||||
{
|
||||
@@ -1305,8 +1316,22 @@ namespace reallife_gamemode.Server.Commands
|
||||
return;
|
||||
}
|
||||
|
||||
if(hour > 23 || min > 59 || sec > 59)
|
||||
{
|
||||
player.SendChatMessage("~r~[FEHLER]~s~ Es wurde eine ungültige Zeit eingegeben.");
|
||||
return;
|
||||
}
|
||||
|
||||
if(hour == -1)
|
||||
{
|
||||
player.SendChatMessage("Es wird nun wieder die Echtzeit genutzt.");
|
||||
TimeManager.StartTimeManager();
|
||||
return;
|
||||
}
|
||||
|
||||
string broadcastMsg = $"Serverzeit wurde auf {hour:D2}:{min:D2}:{sec:D2} gesetzt!";
|
||||
NAPI.Notification.SendNotificationToAll(broadcastMsg);
|
||||
TimeManager.PauseTimeManager();
|
||||
NAPI.World.SetTime(hour, min, sec);
|
||||
return;
|
||||
|
||||
@@ -2034,6 +2059,18 @@ namespace reallife_gamemode.Server.Commands
|
||||
BankManager.SetMoney(player, business, amount, "Admin");
|
||||
}
|
||||
|
||||
[Command("showtuningmenu", "~m~Benutzung: ~s~/showtuningmenu")]
|
||||
public void CmdAdminShowtuningmenu(Client player)
|
||||
{
|
||||
if (!player.GetUser()?.IsAdmin(AdminLevel.HEADADMIN) ?? true)
|
||||
{
|
||||
ChatService.NotAuthorized(player);
|
||||
return;
|
||||
}
|
||||
|
||||
player.TriggerEvent("showTuningMenu");
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region ALevel1338
|
||||
|
||||
@@ -8,12 +8,22 @@ namespace reallife_gamemode.Server.Managers
|
||||
{
|
||||
public class TimeManager
|
||||
{
|
||||
private static Timer realTimeTimer;
|
||||
|
||||
public static void StartTimeManager()
|
||||
{
|
||||
Timer t = new Timer(1000);
|
||||
t.Elapsed += SetTime;
|
||||
if(realTimeTimer == null)
|
||||
{
|
||||
realTimeTimer = new Timer(1000);
|
||||
realTimeTimer.Elapsed += SetTime;
|
||||
}
|
||||
|
||||
t.Start();
|
||||
realTimeTimer.Start();
|
||||
}
|
||||
|
||||
public static void PauseTimeManager()
|
||||
{
|
||||
realTimeTimer.Stop();
|
||||
}
|
||||
|
||||
private static void SetTime(object sender, ElapsedEventArgs args)
|
||||
|
||||
@@ -47,17 +47,23 @@ namespace reallife_gamemode.Server.Managers
|
||||
|
||||
|
||||
veh.SetSharedData("mod18", false);
|
||||
veh.SetSharedData("mod22", false);
|
||||
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
foreach(VehicleMod vMod in dbContext.VehicleMods.ToList().FindAll(vM => vM.ServerVehicleId == sVeh.Id))
|
||||
{
|
||||
if(vMod.Slot == 18 || vMod.Slot == 22)
|
||||
if(vMod.Slot == 18)
|
||||
{
|
||||
veh.SetSharedData("mod" + vMod.Slot, true);
|
||||
}
|
||||
veh.SetMod(vMod.Slot, vMod.ModId - 1);
|
||||
else if(vMod.Slot == 22)
|
||||
{
|
||||
int color = vMod.ModId - 2;
|
||||
if (vMod.ModId == 0) color = -1;
|
||||
if (vMod.ModId == 1) color = 13;
|
||||
veh.SetSharedData("headlightColor", color);
|
||||
}
|
||||
else veh.SetMod(vMod.Slot, vMod.ModId - 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -83,13 +89,24 @@ namespace reallife_gamemode.Server.Managers
|
||||
Vehicle pV = player.Vehicle;
|
||||
if (index == 0) index--;
|
||||
|
||||
if(slot != 18 && slot != 22)
|
||||
if(slot != 18)
|
||||
{
|
||||
pV.SetMod(slot, index - 1);
|
||||
if(slot == 22)
|
||||
{
|
||||
int color = index - 2;
|
||||
if (index == 0) color = -1;
|
||||
if (index == 1) color = 13;
|
||||
pV.SetSharedData("headlightColor", color);
|
||||
}
|
||||
else
|
||||
{
|
||||
pV.SetMod(slot, index - 1);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
bool newVal = index == -1 ? false : true;
|
||||
NAPI.Util.ConsoleOutput("Setting turbo to: " + newVal.ToString());
|
||||
pV.SetSharedData("mod" + slot, newVal);
|
||||
NAPI.ClientEvent.TriggerClientEventForAll("vehicleToggleMod", pV, slot, newVal);
|
||||
}
|
||||
|
||||
@@ -11,7 +11,53 @@ namespace reallife_gamemode.Server.Managers
|
||||
{
|
||||
private static readonly List<string> _enabledMods = new List<string>()
|
||||
{
|
||||
"polamggtr"
|
||||
"polamggtr",
|
||||
"impaler3",
|
||||
"monster4",
|
||||
"monster5",
|
||||
"slamvan6",
|
||||
"issi6",
|
||||
"cerberus2",
|
||||
"cerberus3",
|
||||
"deathbike2",
|
||||
"dominator6",
|
||||
"deathbike3",
|
||||
"impaler4",
|
||||
"slamvan4",
|
||||
"slamvan5",
|
||||
"brutus",
|
||||
"brutus2",
|
||||
"brutus3",
|
||||
"deathbike",
|
||||
"dominator4",
|
||||
"dominator5",
|
||||
"bruiser",
|
||||
"bruiser2",
|
||||
"bruiser3",
|
||||
"rcbandito",
|
||||
"italigto",
|
||||
"cerberus",
|
||||
"impaler2",
|
||||
"monster3",
|
||||
"tulip",
|
||||
"scarab",
|
||||
"scarab2",
|
||||
"scarab3",
|
||||
"issi4",
|
||||
"issi5",
|
||||
"clique",
|
||||
"deveste",
|
||||
"vamos",
|
||||
"imperator",
|
||||
"imperator2",
|
||||
"imperator3",
|
||||
"toros",
|
||||
"deviant",
|
||||
"schlagen",
|
||||
"impaler",
|
||||
"zr380",
|
||||
"zr3802",
|
||||
"zr3803"
|
||||
};
|
||||
|
||||
private static Dictionary<int, NetHandle> _serverVehicles = new Dictionary<int, NetHandle>();
|
||||
|
||||
Reference in New Issue
Block a user