Resolve merge conflict
This commit is contained in:
15
.gitlab-ci.yml
Normal file
15
.gitlab-ci.yml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
#stages:
|
||||||
|
# - build
|
||||||
|
|
||||||
|
#before_script:
|
||||||
|
# - "dotnet restore"
|
||||||
|
|
||||||
|
#build:
|
||||||
|
# stage: build
|
||||||
|
# only:
|
||||||
|
# - develop
|
||||||
|
# script:
|
||||||
|
# - "dotnet build"
|
||||||
|
# - "cp bin/Debug/netcoreapp2.0/* /ragemp_srv/bridge/resources/reallife-gamemode"
|
||||||
|
# - "rm -rf /ragemp_srv/client_packages/*"
|
||||||
|
# - "cp -r Client/* /ragemp_srv/client_packages"
|
||||||
@@ -13,7 +13,7 @@ using reallife_gamemode.Model;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @overview Life of German Reallife - Admin Commands (Admin.cs)
|
* @overview Life of German Reallife - Admin Commands (Admin.cs)
|
||||||
* @author VegaZ, hydrant, xSprite
|
* @author VegaZ, hydrant, xSprite, balbo
|
||||||
* @copyright (c) 2008 - 2018 Life of German
|
* @copyright (c) 2008 - 2018 Life of German
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -466,7 +466,7 @@ namespace reallife_gamemode.Server.Commands
|
|||||||
|
|
||||||
foreach (var managedClient in peopleInRange)
|
foreach (var managedClient in peopleInRange)
|
||||||
{
|
{
|
||||||
managedClient.Health = Armor;
|
managedClient.Armor = Armor;
|
||||||
managedClient.SendChatMessage("~b~Admin " + player.Name + " hat im Radius von " + radius + " die Rüstung auf " + Armor + " gesetzt.");
|
managedClient.SendChatMessage("~b~Admin " + player.Name + " hat im Radius von " + radius + " die Rüstung auf " + Armor + " gesetzt.");
|
||||||
}
|
}
|
||||||
player.SendChatMessage("~b~Die Rüstung von " + peopleInRange.Count + " Spielern wurde auf " + Armor + " gesetzt.");
|
player.SendChatMessage("~b~Die Rüstung von " + peopleInRange.Count + " Spielern wurde auf " + Armor + " gesetzt.");
|
||||||
@@ -486,8 +486,11 @@ namespace reallife_gamemode.Server.Commands
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
string broadcastMsg = $"Serverzeit wurde auf {hour:D2}:{min:D2}:{sec:D2} gesetzt!";
|
||||||
|
|
||||||
|
NAPI.Chat.SendChatMessageToAll(broadcastMsg);
|
||||||
NAPI.World.SetTime(hour, min, sec);
|
NAPI.World.SetTime(hour, min, sec);
|
||||||
NAPI.Chat.SendChatMessageToAll("Serverzeit auf " + hour + ":" + min + ":" + sec + " gestellt");
|
return;
|
||||||
|
|
||||||
}
|
}
|
||||||
[Command("val")]
|
[Command("val")]
|
||||||
@@ -553,7 +556,6 @@ namespace reallife_gamemode.Server.Commands
|
|||||||
}
|
}
|
||||||
else player.SendChatMessage("~m~Du sitzt in keinem Fahrzeug!");
|
else player.SendChatMessage("~m~Du sitzt in keinem Fahrzeug!");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -632,7 +634,303 @@ namespace reallife_gamemode.Server.Commands
|
|||||||
|
|
||||||
}
|
}
|
||||||
else player.SendChatMessage("~m~Du sitzt in keinem Fahrzeug!");
|
else player.SendChatMessage("~m~Du sitzt in keinem Fahrzeug!");
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("a", "~m~Benutzung: ~s~/a [Nachricht]")]
|
||||||
|
public void CmdAdminA(Client player, string message)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
List<Client> playerlist = NAPI.Pools.GetAllPlayers();
|
||||||
|
foreach (Client currentPlayer in playerlist)
|
||||||
|
{
|
||||||
|
if (currentPlayer.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? false)
|
||||||
|
{
|
||||||
|
NAPI.Chat.SendChatMessageToPlayer(currentPlayer, "~r~Admin " + NAPI.Player.GetPlayerName(player) + "~w~: " + message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[Command("team", "~m~Benutzung: ~s~/team")]
|
||||||
|
public void CmdAdminTeam(Client player)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.SUPPORTER) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
NAPI.Chat.SendChatMessageToPlayer(player, "Online Teammitglieder:");
|
||||||
|
|
||||||
|
List<Client> playerlist = NAPI.Pools.GetAllPlayers();
|
||||||
|
foreach (Client currentPlayer in playerlist)
|
||||||
|
{
|
||||||
|
if (currentPlayer.GetUser()?.IsAdmin(AdminLevel.SUPPORTER) ?? false)
|
||||||
|
{
|
||||||
|
NAPI.Chat.SendChatMessageToPlayer(player, "~w~" + NAPI.Player.GetPlayerName(currentPlayer));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("setweather", "~m~Benutzung: ~s~/setweather [WEATHER]")]
|
||||||
|
public void CmdAdminSetweather(Client player, string weather)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Weather weatherBefore = NAPI.World.GetWeather();
|
||||||
|
NAPI.World.SetWeather(weather);
|
||||||
|
Weather weatherAfter = NAPI.World.GetWeather();
|
||||||
|
|
||||||
|
if (!weatherBefore.Equals(weatherAfter))
|
||||||
|
{
|
||||||
|
NAPI.Chat.SendChatMessageToPlayer(player, "~w~Wetter geändert: " + NAPI.World.GetWeather());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
NAPI.Chat.SendChatMessageToPlayer(player, "~w~Wetter konnte nicht geändert werden");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("freeze", "~m~Benutzung: ~s~/freeze [Player]")]
|
||||||
|
public void CmdAdminFreeze(Client player, string targetname)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Client target = ClientService.GetClientByName(targetname);
|
||||||
|
if (target == null)
|
||||||
|
{
|
||||||
|
ChatService.PlayerNotFound(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
target.Freeze(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("unfreeze", "~m~Benutzung: ~s~/freeze [Player]")]
|
||||||
|
public void CmdAdminUnfreeze(Client player, string targetname)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Client target = ClientService.GetClientByName(targetname);
|
||||||
|
if (target == null)
|
||||||
|
{
|
||||||
|
ChatService.PlayerNotFound(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
target.Freeze(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("kick", "~m~Benutzung: ~s~/kick [Player] [Grund]")]
|
||||||
|
public void CmdAdminKick(Client player, string targetname, string reason)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Client target = ClientService.GetClientByName(targetname);
|
||||||
|
if (target == null)
|
||||||
|
{
|
||||||
|
ChatService.PlayerNotFound(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
string targetPlayername = NAPI.Player.GetPlayerName(target);
|
||||||
|
string adminPlayername = NAPI.Player.GetPlayerName(player);
|
||||||
|
|
||||||
|
NAPI.Chat.SendChatMessageToPlayer(target, "~r~KICKINFO: ~w~Du wurdest von " + adminPlayername + " vom Server gekickt: " + reason);
|
||||||
|
target.Kick();
|
||||||
|
NAPI.Chat.SendChatMessageToAll("~y~INFO: ~w~" + targetPlayername + " wurde von " + adminPlayername + " gekickt: " + reason);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("clearchat", "~m~Benutzung: ~s~/clearchat")]
|
||||||
|
public void CmdAdminClearchat(Client player)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < 20; i++)
|
||||||
|
{
|
||||||
|
NAPI.Chat.SendChatMessageToAll("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("up", "~m~Benutzung: ~s~/up [Wert]")]
|
||||||
|
public void CmdAdminUp(Client player, int value = 5)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (player.IsInVehicle)
|
||||||
|
{
|
||||||
|
player.Vehicle.Position = new Vector3(player.Vehicle.Position.X, player.Vehicle.Position.Y, player.Vehicle.Position.Z + value);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
player.Position = new Vector3(player.Position.X, player.Position.Y, player.Position.Z + value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("dn", "~m~Benutzung: ~s~/dn [Wert]")]
|
||||||
|
public void CmdAdminDn(Client player, int value = 5)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (player.IsInVehicle)
|
||||||
|
{
|
||||||
|
player.Vehicle.Position = new Vector3(player.Vehicle.Position.X, player.Vehicle.Position.Y, player.Vehicle.Position.Z - value);
|
||||||
|
} else
|
||||||
|
{
|
||||||
|
player.Position = new Vector3(player.Position.X, player.Position.Y, player.Position.Z - value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("rt", "~m~Benutzung: ~s~/rt [Wert]")]
|
||||||
|
public void CmdAdminRt(Client player, int value = 5)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
float playerHeading = player.Heading;
|
||||||
|
|
||||||
|
if (playerHeading < 45 || playerHeading >= 315)
|
||||||
|
{
|
||||||
|
Vector3 playerPosition = new Vector3(player.Position.X + value, player.Position.Y, player.Position.Z);
|
||||||
|
player.Position = playerPosition;
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (playerHeading < 315 && playerHeading >= 225)
|
||||||
|
{
|
||||||
|
Vector3 playerPosition = new Vector3(player.Position.X, player.Position.Y - value, player.Position.Z);
|
||||||
|
player.Position = playerPosition;
|
||||||
|
}
|
||||||
|
else if (playerHeading >= 135 && playerHeading < 225)
|
||||||
|
{
|
||||||
|
Vector3 playerPosition = new Vector3(player.Position.X - value, player.Position.Y, player.Position.Z);
|
||||||
|
player.Position = playerPosition;
|
||||||
|
}
|
||||||
|
else if (playerHeading >= 45 && playerHeading < 135)
|
||||||
|
{
|
||||||
|
Vector3 playerPosition = new Vector3(player.Position.X, player.Position.Y + value, player.Position.Z);
|
||||||
|
player.Position = playerPosition;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("lt", "~m~Benutzung: ~s~/lt [Wert]")]
|
||||||
|
public void CmdAdminLt(Client player, int value = 5)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
float playerHeading = player.Heading;
|
||||||
|
|
||||||
|
if (playerHeading < 45 || playerHeading >= 315)
|
||||||
|
{
|
||||||
|
Vector3 playerPosition = new Vector3(player.Position.X - value, player.Position.Y, player.Position.Z);
|
||||||
|
player.Position = playerPosition;
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (playerHeading < 315 && playerHeading >= 225)
|
||||||
|
{
|
||||||
|
Vector3 playerPosition = new Vector3(player.Position.X, player.Position.Y + value, player.Position.Z);
|
||||||
|
player.Position = playerPosition;
|
||||||
|
}
|
||||||
|
else if (playerHeading >= 135 && playerHeading < 225)
|
||||||
|
{
|
||||||
|
Vector3 playerPosition = new Vector3(player.Position.X + value, player.Position.Y, player.Position.Z);
|
||||||
|
player.Position = playerPosition;
|
||||||
|
}
|
||||||
|
else if (playerHeading >= 45 && playerHeading < 135)
|
||||||
|
{
|
||||||
|
Vector3 playerPosition = new Vector3(player.Position.X, player.Position.Y - value, player.Position.Z);
|
||||||
|
player.Position = playerPosition;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[Command("spec", "~m~Benutzung: ~s~/spec [Player]")]
|
||||||
|
public void CmdAdminSpectate(Client player, string name)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Client target = ClientService.GetClientByName(name);
|
||||||
|
if (target == null)
|
||||||
|
{
|
||||||
|
ChatService.PlayerNotFound(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (target == player)
|
||||||
|
{
|
||||||
|
ChatService.ErrorMsg(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool spec = player.GetData("spec");
|
||||||
|
|
||||||
|
if (spec == false)
|
||||||
|
{
|
||||||
|
NAPI.Player.SetPlayerToSpectatePlayer(player, target);
|
||||||
|
player.SetData("spec", true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
NAPI.Player.UnspectatePlayer(player);
|
||||||
|
player.SetData("spec", false);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
[Command("ip", "~m~Benutzung: ~s~/ip [Spieler]")]
|
||||||
|
public void CmdAdminIp(Client player, string targetname)
|
||||||
|
{
|
||||||
|
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||||
|
{
|
||||||
|
ChatService.NotAuthorized(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Client target = ClientService.GetClientByName(targetname);
|
||||||
|
if (target == null)
|
||||||
|
{
|
||||||
|
ChatService.PlayerNotFound(player);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
player.SendChatMessage("IP von " + NAPI.Player.GetPlayerName(target) + ": " + target.Address);
|
||||||
}
|
}
|
||||||
//TEST COMMAND
|
//TEST COMMAND
|
||||||
[Command("myvehicles")]
|
[Command("myvehicles")]
|
||||||
|
|||||||
@@ -6,10 +6,13 @@ using GTANetworkAPI;
|
|||||||
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore;
|
||||||
using reallife_gamemode.Model;
|
using reallife_gamemode.Model;
|
||||||
using reallife_gamemode.Server.Entities;
|
using reallife_gamemode.Server.Entities;
|
||||||
|
using reallife_gamemode.Server.Extensions;
|
||||||
|
using reallife_gamemode.Server.Services;
|
||||||
|
using reallife_gamemode.Server.Util;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @overview Life of German Reallife - Event Login (Login.cs)
|
* @overview Life of German Reallife - Event Login (Login.cs)
|
||||||
* @author VegaZ
|
* @author VegaZ, xSprite
|
||||||
* @copyright (c) 2008 - 2018 Life of German
|
* @copyright (c) 2008 - 2018 Life of German
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -23,7 +26,21 @@ namespace reallife_gamemode.Server.Events
|
|||||||
player.SetData("isLoggedIn", false);
|
player.SetData("isLoggedIn", false);
|
||||||
player.Position = new Vector3(-1883.736, -781.4911, -10);
|
player.Position = new Vector3(-1883.736, -781.4911, -10);
|
||||||
player.FreezePosition = true;
|
player.FreezePosition = true;
|
||||||
|
string name = player.Name;
|
||||||
|
List<Client> playerlist = NAPI.Pools.GetAllPlayers();
|
||||||
|
foreach (Client currentPlayer in playerlist)
|
||||||
|
{
|
||||||
|
if (currentPlayer.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? false)
|
||||||
|
{
|
||||||
|
if (player.GetData("isLoggedIn"))
|
||||||
|
{
|
||||||
|
player.SendChatMessage("~m~*** "+player.Name+"["+player.SocialClubName+"] [ID:"+player.Handle.Value+"] ("+player.Address+")");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
<<<<<<< HEAD
|
||||||
[RemoteEvent("IsPlayerBanned")]
|
[RemoteEvent("IsPlayerBanned")]
|
||||||
public void IsPlayerBanned(Client player)
|
public void IsPlayerBanned(Client player)
|
||||||
{
|
{
|
||||||
@@ -55,5 +72,7 @@ namespace reallife_gamemode.Server.Events
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
=======
|
||||||
|
>>>>>>> 93818ed28ddf5427bc20581af533e442290ed7e0
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -7,10 +7,11 @@ using GTANetworkMethods;
|
|||||||
using reallife_gamemode.Model;
|
using reallife_gamemode.Model;
|
||||||
using reallife_gamemode.Server.Extensions;
|
using reallife_gamemode.Server.Extensions;
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* Author: balbo
|
* @overview Life of German Reallife - Events Death (Death.cs)
|
||||||
*
|
* @author VegaZ
|
||||||
* */
|
* @copyright (c) 2008 - 2018 Life of German
|
||||||
|
*/
|
||||||
|
|
||||||
namespace reallife_gamemode.Server.Events
|
namespace reallife_gamemode.Server.Events
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -45,6 +45,7 @@ namespace reallife_gamemode.Server.Events
|
|||||||
NAPI.Player.SpawnPlayer(player, Main.DEFAULT_SPAWN_POSITION, Main.DEFAULT_SPAWN_HEADING);
|
NAPI.Player.SpawnPlayer(player, Main.DEFAULT_SPAWN_POSITION, Main.DEFAULT_SPAWN_HEADING);
|
||||||
|
|
||||||
player.SetData("isLoggedIn", true);
|
player.SetData("isLoggedIn", true);
|
||||||
|
player.SetData("spec", true);
|
||||||
player.TriggerEvent("draw");
|
player.TriggerEvent("draw");
|
||||||
player.Position = new Vector3(user.PositionX, user.PositionY, user.PositionZ);
|
player.Position = new Vector3(user.PositionX, user.PositionY, user.PositionZ);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,13 +21,14 @@ namespace reallife_gamemode.Server.Services
|
|||||||
* Gibt "null" zurück, falls kein Client gefunden wurde
|
* Gibt "null" zurück, falls kein Client gefunden wurde
|
||||||
*/
|
*/
|
||||||
Client toReturn = null;
|
Client toReturn = null;
|
||||||
|
name = name.ToLower();
|
||||||
|
|
||||||
List<Client> playerList = NAPI.Pools.GetAllPlayers();
|
List<Client> playerList = NAPI.Pools.GetAllPlayers();
|
||||||
toReturn = playerList.Find(p => p.Name == name);
|
toReturn = playerList.Find(p => p.Name.ToLower() == name);
|
||||||
|
|
||||||
if(toReturn == null)
|
if(toReturn == null)
|
||||||
{
|
{
|
||||||
toReturn = playerList.Find(p => p.Name.StartsWith(name));
|
toReturn = playerList.Find(p => p.Name.ToLower().StartsWith(name));
|
||||||
}
|
}
|
||||||
|
|
||||||
return toReturn;
|
return toReturn;
|
||||||
|
|||||||
Reference in New Issue
Block a user