[+] Add /release Command to get Prisoners out of Jail
This commit is contained in:
@@ -209,7 +209,7 @@ namespace ReallifeGamemode.Server.Commands
|
||||
}
|
||||
|
||||
User targetCop = target.GetUser();
|
||||
if(targetCop.FactionId == 1 || targetCop.FactionId == 2)
|
||||
if(targetCop.FactionId == 1 || targetCop.FactionId == 3)
|
||||
{
|
||||
ChatService.ErrorMessage(player, "Du kannst dieser Person keine Wanteds geben");
|
||||
return;
|
||||
@@ -223,7 +223,7 @@ namespace ReallifeGamemode.Server.Commands
|
||||
{
|
||||
|
||||
User user = player.GetUser();
|
||||
if (user == null || (user.FactionId != 1 && user.FactionId != 2))
|
||||
if (user == null || (user.FactionId != 1 && user.FactionId != 3))
|
||||
{
|
||||
ChatService.NotAuthorized(player);
|
||||
return;
|
||||
@@ -249,6 +249,55 @@ namespace ReallifeGamemode.Server.Commands
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
}
|
||||
|
||||
[Command("release", "~m~Benutzung: ~s~/release [Name / ID] [Grund]")]
|
||||
public void CmdFactionJailRelease(Client player, string nameOrId, string reason)
|
||||
{
|
||||
User user = player.GetUser();
|
||||
if (user == null || (user.FactionId != 1 && user.FactionId != 3))
|
||||
{
|
||||
ChatService.NotAuthorized(player);
|
||||
return;
|
||||
}
|
||||
|
||||
Client target = ClientService.GetClientByNameOrId(nameOrId);
|
||||
if (target == null || !target.IsLoggedIn())
|
||||
{
|
||||
ChatService.PlayerNotFound(player);
|
||||
return;
|
||||
}
|
||||
|
||||
User targetCop = target.GetUser();
|
||||
if (targetCop.FactionId == 1 || targetCop.FactionId == 3)
|
||||
{
|
||||
ChatService.ErrorMessage(player, "Diese Person sollte sich nicht im Knast befinden");
|
||||
return;
|
||||
}
|
||||
if(target.Position.DistanceTo(player.Position) < 6)
|
||||
{
|
||||
User targetUser = target.GetUser();
|
||||
if (targetUser.JailTime > 0)
|
||||
{
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
target.GetUser(dbContext).JailTime = 0;
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
ChatService.ErrorMessage(player, "Diese Person befindet sich nicht im Knast");
|
||||
return;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
ChatService.ErrorMessage(player, "Du bist zu weit entfernt");
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
#region Global Fraktions Commands
|
||||
#endregion
|
||||
|
||||
@@ -110,7 +110,7 @@ namespace ReallifeGamemode.Server.Extensions
|
||||
{
|
||||
ChatService.SendMessage(copPlayer, "~r~HQ: Straftat gemeldet von" + cop + " - " + reason + ". Straftäter: "+ user.Name + ".");
|
||||
}
|
||||
else
|
||||
else if((copUser.FactionId == 1 || copUser.FactionId == 2) && cop == null)
|
||||
{
|
||||
ChatService.SendMessage(copPlayer, "~r~HQ: " + user.Name + " hat eine Straftat begangen - " + reason + ".");
|
||||
}
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using GTANetworkAPI;
|
||||
using ReallifeGamemode.Server.Entities;
|
||||
using ReallifeGamemode.Server.Extensions;
|
||||
using ReallifeGamemode.Server.Factions.Medic;
|
||||
using ReallifeGamemode.Server.Models;
|
||||
|
||||
namespace ReallifeGamemode.Server.Wanted
|
||||
@@ -50,7 +52,11 @@ namespace ReallifeGamemode.Server.Wanted
|
||||
if (rndInt == 3)
|
||||
NAPI.Player.SpawnPlayer(client, new Vector3(458.3372, -1001.258, 24.91485)); //send client to jail
|
||||
|
||||
|
||||
client.TriggerEvent("onPlayerRevived");
|
||||
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == client.Name);
|
||||
Medic.RemoveTaskFromList(task);
|
||||
client.Health = 100;
|
||||
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
client.GetUser(dbContext).JailTime = user.Wanteds * 54; // 54 sec for each wanted star -> in total 45min for 50 Wanteds
|
||||
@@ -147,6 +153,7 @@ namespace ReallifeGamemode.Server.Wanted
|
||||
player.GetUser(dbContext).JailTime -= 60;
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
player.Health = 100;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user