inshallah kein fehler

This commit is contained in:
hydrant
2020-05-10 23:18:53 +02:00
153 changed files with 6517 additions and 3407 deletions

View File

@@ -1,6 +1,6 @@
using System.Text.RegularExpressions;
using GTANetworkAPI;
using ReallifeGamemode.Server.Services;
using System.Text.RegularExpressions;
namespace ReallifeGamemode.Server.Events
{
@@ -13,7 +13,7 @@ namespace ReallifeGamemode.Server.Events
if (serverMsg.Trim().Length == 0) return;
NAPI.Player.GetPlayersInRadiusOfPlayer(10, player).ForEach(p =>
{
ChatService.SendMessage(p, $"{player.Name} sagt: {serverMsg}");//
ChatService.SendMessage(p, $"{player.Name} sagt: {serverMsg}");
});
}
}

View File

@@ -1,13 +1,10 @@
using System;
using System.Linq;
using GTANetworkAPI;
using ReallifeGamemode.Database;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Managers;
using ReallifeGamemode.Server.Services;
using ReallifeGamemode.Server.Types;
using ReallifeGamemode.Server.Util;
using ReallifeGamemode.Server.Wanted;
/**
* @overview Life of German Reallife - Event Login (Login.cs)
@@ -17,7 +14,7 @@ using ReallifeGamemode.Server.Wanted;
namespace ReallifeGamemode.Server.Events
{
class Connect : Script
internal class Connect : Script
{
private readonly TimeSpan LightModeTimeFrom = new TimeSpan(5, 30, 0);
private readonly TimeSpan LightModeTimeTo = new TimeSpan(21, 00, 0);

View File

@@ -1,13 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using GTANetworkAPI;
using ReallifeGamemode.Database;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Extensions;
using ReallifeGamemode.Server.Factions.Medic;
using ReallifeGamemode.Server.Inventory;
using ReallifeGamemode.Server.Inventory.Interfaces;
using ReallifeGamemode.Server.Managers;
using ReallifeGamemode.Server.Services;
using ReallifeGamemode.Server.Types;
using ReallifeGamemode.Server.Util;
using ReallifeGamemode.Server.Wanted;
/**
@@ -66,7 +69,6 @@ namespace ReallifeGamemode.Server.Events
User user = player.GetUser();
if (user.JailTime <= 0)
{
//MEDIC AUFTRAG
MedicTask reviveTask = new MedicTask()
{
@@ -92,8 +94,35 @@ namespace ReallifeGamemode.Server.Events
//TODO PICTURE NOTIFICATION + SOUND für Medics
player.ClearAttachments();
using (var userDeath = new DatabaseContext())
{
List<UserItem> fItem = userDeath.UserItems.Where(u => u.UserId == user.Id).ToList();
foreach (var item in fItem)
{
IItem iItem = InventoryManager.GetItemById(item.ItemId);
if (iItem is IWeaponDealItem obj)
{
int amount = item.Amount;
Vector3 dropPosition = PlayerExtension.GetPositionFromPlayer(player, 0.6f, 0);
//new Vector3(player.Position.X, player.Position.Y, player.Position.Z - 0.8f);
Random r = new Random();
GTANetworkAPI.Object grndObject;
Vector3 textPos = dropPosition;
dropPosition.Z -= 1.05f;
grndObject = NAPI.Object.CreateObject(3666746839, dropPosition, new Vector3(0, 0, r.Next(0, 360)), 255, 0);
GroundItem grndItem = new GroundItem { ItemId = iItem.Id, Amount = amount, Position = dropPosition };
TextLabel grndTxtLbl = NAPI.TextLabel.CreateTextLabel(iItem.Name + " ~s~(~y~" + amount + "~s~)", textPos, 5, 0.5f, 4, new Color(255, 255, 255), false, 0);
GroundItem.AddGroundItem(grndItem, grndObject, grndTxtLbl);
userDeath.Remove(item);
}
}
var dead = new Database.Entities.Logs.Death
{
VictimId = player.GetUser().Id,
@@ -167,7 +196,6 @@ namespace ReallifeGamemode.Server.Events
Jail.Check_PutBehindBars(player);
}
[RemoteEvent("RespawnPlayerAtHospital")]
public void RespawnPlayerAtHospital(Player player)
{

View File

@@ -12,8 +12,8 @@ using ReallifeGamemode.Server.Managers;
using ReallifeGamemode.Server.Util;
using ReallifeGamemode.Services;
using ReallifeGamemode.Server.Services;
using ReallifeGamemode.Database;
using ReallifeGamemode.Server.Types;
using ReallifeGamemode.Server.Util;
/**

View File

@@ -1,6 +1,4 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections.Generic;
using GTANetworkAPI;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Server.Extensions;
@@ -19,17 +17,17 @@ namespace ReallifeGamemode.Server.Events
return;
}
if (vehicle.HasMarkerBehind())
vehicle.RemoveMarkerBehind();
if (vehicle.GetServerVehicle() is FactionVehicle veh)
{
User u = client.GetUser();
if (u.FactionId != null && veh.GetOwners().Contains(u.FactionId.Value) && (veh.Model == VehicleHash.Burrito3) && vehicle.HasData("weaponDeal") && vehicle.GetData<bool>("weaponDeal") == true)
{
Vector3 vector = WeaponDealPoints.getRndWD_Route(client.GetUser().FactionId.Value);
if (vector == new Vector3())
return;
List<Vector3> dealPoint = new List<Vector3>();
dealPoint.Add(vector);
CheckPointHandle.StartCheckPointRoute(client, dealPoint, 5000, 1, 7, 4, true, "loadWeaponTransport");
dealPoint.Add(vehicle.GetData<Vector3>("weaponDealPoint"));
CheckPointHandle.StartCheckPointRoute(client, dealPoint, 5000, 1, 7, "loadWeaponTransport");
}
}
}

View File

@@ -12,7 +12,6 @@ using ReallifeGamemode.Server.Managers;
namespace ReallifeGamemode.Server.Events
{
public class EnterVehicleAttempt : Script
{
public static GTANetworkAPI.Vehicle Roller;

View File

@@ -8,7 +8,6 @@ using ReallifeGamemode.Server.Extensions;
using ReallifeGamemode.Server.Managers;
using ReallifeGamemode.Server.Services;
using ReallifeGamemode.Server.Util;
using ReallifeGamemode.Server.WeaponDeal;
namespace ReallifeGamemode.Server.Events
{
@@ -22,6 +21,7 @@ namespace ReallifeGamemode.Server.Events
LastVehicle = vehicle;
if (client.VehicleSeat != 0)
return;
if (vehicle.GetServerVehicle() is FactionVehicle veh)
{
User u = client.GetUser();
@@ -30,6 +30,10 @@ namespace ReallifeGamemode.Server.Events
CheckPointHandle.RemovePlayerHandlerFromList(client);
client.TriggerEvent("destroyCP");
}
else if ((u.FactionId != null) && (veh.GetOwners().Contains(u.FactionId ?? 0)) && ((VehicleHash)vehicle.Model == VehicleHash.Burrito3 || (VehicleHash)vehicle.Model == VehicleHash.Policet) && vehicle.HasData("WeaponDealLoad") && vehicle.GetData<bool>("WeaponDealLoad") == true)
{
client.TriggerEvent("SERVER:setMarkerBehindVehicle", vehicle);
}
}
if (vehicle.GetServerVehicle() is SchoolVehicle vehS)
{

View File

@@ -1,15 +1,15 @@
using System.Collections.Generic;
using System.Linq;
using GTANetworkAPI;
using Newtonsoft.Json;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Services;
using ReallifeGamemode.Server.Util;
using System.Collections.Generic;
using System.Linq;
namespace ReallifeGamemode.Server.Events
{
class Faction : Script
internal class Faction : Script
{
[RemoteEvent("OnFactionRanksEdit")]
public void OnFactionRanksEdit(Player player, string jsonData)

View File

@@ -1,7 +1,5 @@
using System;
using System.Collections.Generic;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using GTANetworkAPI;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Database.Models;
@@ -61,7 +59,6 @@ namespace ReallifeGamemode.Server.Events
iName.Add(iItem.Name);
iAmount.Add(vehItem.Amount);
iId.Add(iItem.Id);
}
var vehInv = new VehicleInventory
{
@@ -76,6 +73,5 @@ namespace ReallifeGamemode.Server.Events
}
return vehicleInventory;
}
}
}

View File

@@ -2,21 +2,21 @@
using System.Linq;
using GTANetworkAPI;
using Newtonsoft.Json;
using ReallifeGamemode.Server.Classes;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Classes;
using ReallifeGamemode.Server.DrivingSchool;
using ReallifeGamemode.Server.Extensions;
using ReallifeGamemode.Server.Factions.Medic;
using ReallifeGamemode.Server.Finance;
using ReallifeGamemode.Server.Inventory;
using ReallifeGamemode.Server.Inventory.Interfaces;
using ReallifeGamemode.Server.Managers;
using ReallifeGamemode.Server.Services;
using ReallifeGamemode.Database;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Util;
using ReallifeGamemode.Server.Inventory.Interfaces;
using ReallifeGamemode.Server.DrivingSchool;
using ReallifeGamemode.Server.Types;
using Microsoft.EntityFrameworkCore;
using ReallifeGamemode.Server.Util;
using ReallifeGamemode.Server.WeaponDeal;
/**
* @overview Life of German Reallife - Event Key (Key.cs)
* @author VegaZ
@@ -47,6 +47,7 @@ namespace ReallifeGamemode.Server.Events
tempBlip.Transparency.ToString(), 200.ToString(), tempBlip.ShortRange.ToString(), 0.ToString(), 0.ToString());
player.SendNotification("~y~Blip~s~ erstellt!", false);
break;
case "atm":
SaveManager.OnSaveBlipData(player, "500", "Geldautomat", 0.7.ToString(), "11",
"0", "200", true.ToString(), 0.ToString(), 0.ToString());
@@ -182,20 +183,73 @@ namespace ReallifeGamemode.Server.Events
if (!player.IsLoggedIn()) return;
var user = player.GetUser();
ElevatorPoint nearestElevatorPoint = PositionManager.ElevatorPoints.Find(e => e.Position.DistanceTo(player.Position) <= 1.6 && (user.FactionId == 1 || user.FactionId == 3));
ClotheshopPoint nearestClotheShopPoint = PositionManager.clotheshopPoints.Find(s => s.Position.DistanceTo(player.Position) <= 1.6 && (!user.GetData<bool>("duty")));
ItemshopPoint nearestItemShopPoint = PositionManager.itemshopPoints.Find(s => s.Position.DistanceTo(player.Position) <= 1.6);
JobPoint nearestJobPoint = PositionManager.JobPoints.Find(s => s.Position.DistanceTo(player.Position) <= 1.6);
if (user?.FactionId != null)
{
DutyPoint nearestDuty = PositionManager.DutyPoints.Find(d => d.Position.DistanceTo(player.Position) <= 1.6 && d.FactionId == user.FactionId);
WeaponPoint nearestWeapon = PositionManager.WeaponPoints.Find(w => w.Position.DistanceTo(player.Position) <= 1.6 && w.FactionId == user.FactionId);
JailReleasePoint nearestJailReleasePoint = PositionManager.JailReleasePoints.Find(j => j.Position.DistanceTo(player.Position) <= 1.6 && (user.FactionId == 1 || user.FactionId == 3) && user.GetData<bool>("duty"));
DutyPoint nearestDuty = PositionManager.DutyPoints.Find(d => d.Position.DistanceTo(player.Position) <= 1.5 && d.FactionId == user.FactionId);
WeaponPoint nearestWeapon = PositionManager.WeaponPoints.Find(w => w.Position.DistanceTo(player.Position) <= 1.5 && w.FactionId == user.FactionId);
JailReleasePoint nearestJailReleasePoint = PositionManager.JailReleasePoints.Find(j => j.Position.DistanceTo(player.Position) <= 1.5 && (user.FactionId == 1 || user.FactionId == 3) && user.GetData<bool>("duty"));
ElevatorPoint nearestElevatorPoint = PositionManager.ElevatorPoints.Find(e => e.Position.DistanceTo(player.Position) <= 1.5 && (user.FactionId == 1 || user.FactionId == 3));
ClotheshopPoint nearestClotheShopPoint = PositionManager.clotheshopPoints.Find(s => s.Position.DistanceTo(player.Position) <= 1.5 && (!user.GetData<bool>("duty")));
ItemshopPoint nearestItemShopPoint = PositionManager.itemshopPoints.Find(s => s.Position.DistanceTo(player.Position) <= 1.5);
BehindVehiclePoint nearestBehindVehiclePoint = MarkerBehinVehicle.behindVehiclePoints.Find(s => s.marker.Position.DistanceTo(player.Position) <= 3 && (user.FactionId == 8 || user.FactionId == 7 || user.FactionId == 1 || user.FactionId == 3));
if (nearestBehindVehiclePoint != null)
{
if (player.HasAttachment("ammobox")) return;
using (var dbContext = new DatabaseContext())
{
List<VehicleItem> vehicleItems = dbContext.VehicleItems.Where(f => f.GetVehicle().GetVehicle() == nearestBehindVehiclePoint.vehicle && InventoryManager.GetItemById(f.ItemId) is IWeaponDealItem).ToList();
if (vehicleItems.Count == 0)
{
GTANetworkAPI.Vehicle vehicle = nearestBehindVehiclePoint.vehicle;
if (nearestDuty != null && !player.IsInVehicle)// Duty Point
if (WeaponDealManager.checkWeaponDbyVehicle(vehicle))
{
vehicle.ResetData("WeaponDealLoad");
}
nearestBehindVehiclePoint.vehicle.RemoveMarkerBehind();
return;
}
foreach (var v in vehicleItems)
{
int itemToAdd = 0;
for (int i = 1; i <= v.Amount; i++)
{
if (InventoryManager.GetUserInventoryWeight(player) + (i * InventoryManager.GetItemById(v.ItemId).Gewicht) > 40000)
{
break;
}
else
{
itemToAdd = i;
}
}
if (itemToAdd == 0)
break;
v.Amount -= itemToAdd;
if (v.Amount <= 0)
dbContext.VehicleItems.Remove(v);
var newItem = new UserItem()
{
ItemId = v.ItemId,
Slot = v.Slot,
Amount = itemToAdd,
UserId = user.Id,
};
InventoryManager.AddItemToInventory(player, newItem.Id, newItem.Amount);
nearestBehindVehiclePoint.usePoint(player);
dbContext.SaveChanges();
return;
}
}
}
if (nearestDuty != null)// Duty Point
{
var nameTagColor = new Color(0, 0, 0);
var factionId = user.FactionId;
@@ -275,7 +329,6 @@ namespace ReallifeGamemode.Server.Events
if (nearestWeapon != null) // Weapon Point
{
List<string> primarys = new List<string>();
List<string> secondarys = new List<string>();
List<string> melees = new List<string>();
@@ -287,10 +340,14 @@ namespace ReallifeGamemode.Server.Events
melees.Add("Keine");
specials.Add("Keine");
using (var context = new DatabaseContext())
{
if (player.HasAttachment("ammobox"))
{
player.AddAttachment("ammobox", true);
player.StopAnimation();
}
bool unloadedWeaponPackage = false;
List<UserItem> fItem = context.UserItems.Where(u => u.UserId == user.Id).ToList();
@@ -301,7 +358,11 @@ namespace ReallifeGamemode.Server.Events
{
FactionWeapon weapon = context.FactionWeapons.Where(w => w.FactionId == user.FactionId && w.WeaponModel == iItem.Name).FirstOrDefault();
if (weapon == null)
{
context.Remove(item);
continue;
}
weapon.Ammount += item.Amount;
ChatService.SendMessage(player, item.Amount + " " + iItem.Name + " wurden im Waffenlager hinzugefürgt.");
context.Remove(item);
@@ -332,14 +393,17 @@ namespace ReallifeGamemode.Server.Events
if (user.FactionRank.Order >= weapon.Rank)
primarys.Add(weapon.WeaponModel.ToString());
break;
case 2:
if (user.FactionRank.Order >= weapon.Rank)
secondarys.Add(weapon.WeaponModel.ToString());
break;
case 3:
if (user.FactionRank.Order >= weapon.Rank)
melees.Add(weapon.WeaponModel.ToString());
break;
case 4:
if (user.FactionRank.Order >= weapon.Rank)
specials.Add(weapon.WeaponModel.ToString());
@@ -452,7 +516,8 @@ namespace ReallifeGamemode.Server.Events
public void KeyPressI(Player player)
{
if (!player.IsLoggedIn()) return;
InventoryManager.GetUserItems(player);
player.TriggerEvent("inventoryShow");
InventoryManager.SetBackpackItems(player);
}
[RemoteEvent("keyPress:O")]
@@ -507,9 +572,11 @@ namespace ReallifeGamemode.Server.Events
case 11:
tops.Add(cloth.ClothId.ToString());
break;
case 4:
legs.Add(cloth.ClothId.ToString());
break;
case 6:
shoes.Add(cloth.ClothId.ToString());
break;
@@ -519,7 +586,6 @@ namespace ReallifeGamemode.Server.Events
player.TriggerEvent("showDutyClothMenu", hats.ToArray(), tops.ToArray(), legs.ToArray(), shoes.ToArray());
}
}
}
[RemoteEvent("keyPress:L")]
@@ -693,7 +759,6 @@ namespace ReallifeGamemode.Server.Events
if (!player.IsInVehicle)
{
Vehicle.VehicleMenuLockCarEvent(player);
GroundItem.PickUpGroundItem(player);

View File

@@ -1,16 +1,14 @@
using System.Linq;
using GTANetworkAPI;
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Extensions;
using ReallifeGamemode.Server.Managers;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Services;
using ReallifeGamemode.Server.Types;
using ReallifeGamemode.Server.Util;
using ReallifeGamemode.Server.Wanted;
using ReallifeGamemode.Database;
using ReallifeGamemode.Server.Types;
using ReallifeGamemode.Database.Entities;
using Newtonsoft.Json;
/**
* @overview Life of German Reallife - Event Login (Login.cs)
@@ -102,12 +100,15 @@ namespace ReallifeGamemode.Server.Events
case null:
player.SetSharedData("blipColor", 0);
break;
case 8:
player.SetSharedData("blipColor", 83);
break;
case 7:
player.SetSharedData("blipColor", 52);
break;
case 4:
player.SetSharedData("blipColor", 5);
break;

View File

@@ -1,6 +1,5 @@
using System.Linq;
using GTANetworkAPI;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Database.Entities;
using Newtonsoft.Json;
@@ -12,7 +11,7 @@ using Newtonsoft.Json;
namespace ReallifeGamemode.Server.Events
{
class Register : Script
internal class Register : Script
{
[RemoteEvent("CLIENT:Login_RegisterRequest")]
public void OnPlayerRegister(Player player, string password)

View File

@@ -1,4 +1,5 @@
using GTANetworkAPI;
using System.Linq;
using GTANetworkAPI;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Extensions;

View File

@@ -1,11 +1,9 @@
using GTANetworkAPI;
using System;
using System.Collections.Generic;
using System.Text;
using GTANetworkAPI;
namespace ReallifeGamemode.Server.Events
{
class Siren : Script
internal class Siren : Script
{
private readonly Dictionary<NetHandle, bool> _sirenStates = new Dictionary<NetHandle, bool>();
@@ -21,7 +19,6 @@ namespace ReallifeGamemode.Server.Events
pV.SetSharedData("sirenSound", newValue);
NAPI.ClientEvent.TriggerClientEventForAll("toggleVehicleSiren", pV, newValue);
}
}
}

View File

@@ -198,7 +198,6 @@ namespace ReallifeGamemode.Server.Events
}
using (var dbContext = new DatabaseContext())
{
var clothes = dbContext.CharacterClothes.FirstOrDefault(c => c.UserId == user.Id && c.SlotId == data[0] && c.Duty == false);
if (clothes == null)
@@ -265,7 +264,6 @@ namespace ReallifeGamemode.Server.Events
client.GetUser(dbContext).Handmoney -= data[6];
dbContext.SaveChanges();
client.TriggerEvent("SERVER:SET_HANDMONEY", user.Handmoney);
}
client.TriggerEvent("clothesMenu:updateLast", data[2], data[1], data[4], data[5], data[3]);
}

View File

@@ -1,10 +1,6 @@
using System;
using System.Collections.Generic;
using System.Text;
using GTANetworkAPI;
using ReallifeGamemode.Server.Managers;
namespace ReallifeGamemode.Server.Events
{
public class UpdateCharacterElevator : Script

View File

@@ -1,4 +1,3 @@
using System.Collections.Generic;
using System.Linq;
using GTANetworkAPI;
using ReallifeGamemode.Database.Entities;
@@ -48,7 +47,6 @@ namespace ReallifeGamemode.Server.Events
client.RemoveAllWeapons();
}
[RemoteEvent("saveWeaponSelection")]
public void SaveWeaponSelection(Player client, string primaryModel, string secondaryModel, string meleeModel, string specialModel)
{
@@ -69,7 +67,6 @@ namespace ReallifeGamemode.Server.Events
melee = NAPI.Util.GetHashKey($"weapon_{meleeModel}");
}
client.GiveWeapon((WeaponHash)primary, 50);
client.GiveWeapon((WeaponHash)secondary, 150);
client.GiveWeapon((WeaponHash)melee, 1);

View File

@@ -1,11 +1,10 @@
using System;
using GTANetworkAPI;
using ReallifeGamemode.Database;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Extensions;
using ReallifeGamemode.Server.Types;
using ReallifeGamemode.Server.Util;
using System;
namespace ReallifeGamemode.Server.Events
{
@@ -175,7 +174,6 @@ namespace ReallifeGamemode.Server.Events
msg += state ? "~g~abgeschlossen" : "~r~aufgeschlossen";
player.TriggerEvent("vehsync:OpenCar", state);
player.SendNotification(msg);
}
}
@@ -280,7 +278,5 @@ namespace ReallifeGamemode.Server.Events
VehicleStreaming.SetDoorState(veh, doorId, DoorState.DoorClosed);
}
}
}
}

View File

@@ -8,7 +8,7 @@ using GTANetworkAPI;
namespace ReallifeGamemode.Server.Events
{
class Voice : Script
internal class Voice : Script
{
[RemoteEvent("CLIENT:AddVoiceListener")]
public void AddPlayerVoiceListenerEvent(Player player, Player target)