WT: PoliceT eingbunden, WT nicht starten wenn noch läuft
This commit is contained in:
@@ -24,9 +24,9 @@ namespace ReallifeGamemode.Server.WeaponDeal
|
||||
public void SrvEVENT_startWeaponDeal(Player client)
|
||||
{
|
||||
var user = client.GetUser();
|
||||
using (var context = new DatabaseContext())
|
||||
using (var context = new DatabaseContext(true))
|
||||
{
|
||||
FactionVehicle factionVehicle = context.FactionVehicles.ToList().Where(f => f.GetOwners().Contains(user.FactionId ?? 0) && f.Model == VehicleHash.Burrito3).FirstOrDefault();
|
||||
FactionVehicle factionVehicle = context.FactionVehicles.Where(f => f.Model == VehicleHash.Burrito3 || f.Model == VehicleHash.Policet).ToList().Where(f => f.GetOwners().Contains(user.FactionId ?? 0)).FirstOrDefault();
|
||||
|
||||
if (factionVehicle == null)
|
||||
{
|
||||
@@ -37,7 +37,14 @@ namespace ReallifeGamemode.Server.WeaponDeal
|
||||
|
||||
Vehicle fVeh = VehicleManager.GetVehicleFromServerVehicle(factionVehicle);
|
||||
|
||||
if (fVeh.Position.DistanceTo(client.Position) > 80)
|
||||
if (fVeh.HasData("weaponDeal") && fVeh.GetData<bool>("weaponDeal") == true)
|
||||
{
|
||||
ChatService.ErrorMessage(client, "Es läuft aktuell schon ein Waffentransport");
|
||||
return;
|
||||
}
|
||||
|
||||
float distance = fVeh.Position.DistanceTo2D(client.Position);
|
||||
if ((distance > 80 && factionVehicle.Model == VehicleHash.Burrito3) || (distance > 400 && factionVehicle.Model == VehicleHash.Policet))
|
||||
{
|
||||
ChatService.ErrorMessage(client, "Der Transporter ist zu weit entfernt");
|
||||
return;
|
||||
@@ -87,8 +94,10 @@ namespace ReallifeGamemode.Server.WeaponDeal
|
||||
}
|
||||
}
|
||||
|
||||
string vehName = NAPI.Vehicle.GetVehicleDisplayName(factionVehicle.Model);
|
||||
|
||||
ChatService.BroadcastFaction($"~y~[WAFFENDEAL]~s~ {msg}", user.Faction);
|
||||
ChatService.SendMessage(client, "~y~[WAFFENDEAL]~s~ Steige in den Burrito ein und fahre zum Waffendeal.");
|
||||
ChatService.SendMessage(client, $"~y~[WAFFENDEAL]~s~ Steige in den {vehName} ein und fahre zum Waffendeal.");
|
||||
fVeh.SetData("weaponDeal", true);
|
||||
InventoryManager.RemoveAllItemsfromVehicleInventory(fVeh);
|
||||
Faction fac = context.Factions.Where(f => f.Id == user.FactionId).FirstOrDefault();
|
||||
@@ -135,8 +144,16 @@ namespace ReallifeGamemode.Server.WeaponDeal
|
||||
[RemoteEvent("loadWeaponTransport")]
|
||||
public void SrvEVENT_loadWeaponTransport(Player client)
|
||||
{
|
||||
if ((VehicleHash)client.Vehicle.Model != VehicleHash.Burrito3)
|
||||
var veh = client.Vehicle;
|
||||
|
||||
if (veh == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if ((VehicleHash)veh.Model != VehicleHash.Burrito3 && (VehicleHash)veh.Model != VehicleHash.Policet)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
User user = client.GetUser();
|
||||
using (var context = new DatabaseContext())
|
||||
@@ -151,16 +168,15 @@ namespace ReallifeGamemode.Server.WeaponDeal
|
||||
fVeh.SetData("weaponDeal", false);
|
||||
fVeh.SetData("WeaponDealLoad", true);
|
||||
InventoryManager.RemoveAllItemsfromVehicleInventory(fVeh);
|
||||
Random rnd = new Random();
|
||||
int oMembers = NAPI.Pools.GetAllPlayers().Where(p => p.IsLoggedIn() && p.GetUser(context).FactionId == user.FactionId).Count();
|
||||
|
||||
if (factionVehicle.GetOwners().Contains(8) || factionVehicle.GetOwners().Contains(7))
|
||||
{
|
||||
VehicleItem item = new VehicleItem() { ItemId = 11, VehicleId = factionVehicle.Id, Amount = rnd.Next(3, 5) * oMembers }; //pistole
|
||||
VehicleItem item = new VehicleItem() { ItemId = 11, VehicleId = factionVehicle.Id, Amount = 2 * oMembers }; //pistole
|
||||
InventoryManager.AddItemToVehicleInventory(fVeh, item.ItemId, item.Amount);
|
||||
VehicleItem item3 = new VehicleItem() { ItemId = 14, VehicleId = factionVehicle.Id, Amount = rnd.Next(1, 4) * oMembers }; //Pumpe
|
||||
VehicleItem item3 = new VehicleItem() { ItemId = 14, VehicleId = factionVehicle.Id, Amount = 2 * oMembers }; //Pumpe
|
||||
InventoryManager.AddItemToVehicleInventory(fVeh, item3.ItemId, item3.Amount);
|
||||
VehicleItem item2 = new VehicleItem() { ItemId = 16, VehicleId = factionVehicle.Id, Amount = 1 * oMembers }; //Schutzweste
|
||||
VehicleItem item2 = new VehicleItem() { ItemId = 16, VehicleId = factionVehicle.Id, Amount = 2 * oMembers }; //Schutzweste
|
||||
InventoryManager.AddItemToVehicleInventory(fVeh, item2.ItemId, item2.Amount);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user