@@ -1,26 +1,25 @@
using System ;
using System.Collections.Generic ;
using System.Linq ;
using System.Text.RegularExpressions ;
using GTANetworkAPI ;
using Microsoft.EntityFrameworkCore ;
using Newtonsoft.Json ;
using ReallifeGamemode.Database.Entities ;
using ReallifeGamemode.Server.Extensions ;
using ReallifeGamemode.Server.Services ;
using ReallifeGamemode.Server.Util ;
using ReallifeGamemode.Server.Managers ;
using ReallifeGamemode.Server.Inventory.Interfaces ;
using ReallifeGamemode.Server.Business ;
using System.Text.RegularExpressions ;
using ReallifeGamemode.Server.Classes ;
using ReallifeGamemode.Server.Factions.Medic ;
using ReallifeGamemode.Server.Job ;
using ReallifeGamemode.Server.Finance ;
using ReallifeGamemode.Server.Wanted ;
using Microsoft.EntityFrameworkCore ;
using ReallifeGamemode.Database.Models ;
using ReallifeGamemode.Database ;
using ReallifeGamemode.Servic es ;
using ReallifeGamemode.Server.Business ;
using ReallifeGamemode.Server.Class es ;
using ReallifeGamemode.Server.Extensions ;
using ReallifeGamemode.Server.Factions.Medic ;
using ReallifeGamemode.Server.Finance ;
using ReallifeGamemode.Server.Inventory.Interfaces ;
using ReallifeGamemode.Server.Job ;
using ReallifeGamemode.Server.Managers ;
using ReallifeGamemode.Server.Services ;
using ReallifeGamemode.Server.Types ;
using ReallifeGamemode.Server.Util ;
using ReallifeGamemode.Server.Wanted ;
using ReallifeGamemode.Services ;
/**
* @overview Life of German Reallife - Admin Commands (Admin.cs)
@@ -32,8 +31,8 @@ namespace ReallifeGamemode.Server.Commands
{
public class AdminCommands : Script
{
#region Todo
[Command("eat", "~m~Benutzung: ~s~/eat [Item] ")]
public void CmdAdminEat ( Player player , string item )
{
@@ -126,8 +125,10 @@ namespace ReallifeGamemode.Server.Commands
ChatService . SendMessage ( player , msg ) ;
}
#endregion
#endregion Todo
#region ahelp
[Command("ahelp", "~m~Benutzung: ~s~/ahelp")]
public void CmdAdminHelp ( Player player )
{
@@ -143,35 +144,39 @@ namespace ReallifeGamemode.Server.Commands
case AdminLevel . MAPPING :
ChatService . SendMessage ( player , "~b~ " + "/team, /tc, /position" ) ;
break ;
case AdminLevel . ENTWICKLUNG :
ChatService . SendMessage ( player , "~b~ " + "/team, /tc, /position" ) ;
break ;
case AdminLevel . SUPPORTER :
ChatService . SendMessage ( player , "~b~ " + "/tsupport, /showtickets, /rc, /rc quit, /o, /pm, /dimension, /to, /gh, /clearchat, /skick" ) ;
break ;
case AdminLevel . ADMIN :
ChatService . SendMessage ( player , "~b~ " + "/a, /countdown, /freeze, /unfreeze, /mark, /gotmark, /gotox, /up, /setdimension, /spec, /warn, /ip, /kick, /ban /unban, /slap, /takeweapon, /tov, /ghv, /factionlist, /businesslist, /joblist" ) ;
break ;
case AdminLevel . ADMIN2 :
ChatService . SendMessage ( player , "~b~ " + "/sethp, /setarmor, /arevive, /aunjail, /aclear, /clothes, /props" ) ;
break ;
case AdminLevel . ADMIN3 :
ChatService . SendMessage ( player , "~b~ " + "/adice, /settime, /setweather, /rsetarmor, /rgiveweapon, /giveweapon, /veh, /fv, /vfix, /vdestroy, /vlivery, /vcolor, /vehsmoke, /aneon, /mod, /showtuningmenu, /rvdestroy, /vsethp" ) ;
break ;
case AdminLevel . HEADADMIN :
ChatService . SendMessage ( player , "~b~ " + "/aspeed, /set, /setmoney, /givemoney, /sethandmoney, /givehandmoney, /paydaydrop, /setwage, /freekh, /ainvite, /makeleader, /managefactionranks, /setweaponrack, /rmweaponrack, /setweaponrank, /giveitem, /inventory, /save, /remove, /house, /setbusinessbankbalance, /reloaddors, /interior, /editmode, /setbliptemplate, /ipl, /load, /quicksavemode, /createturf, /setturf, /cancleturf, /reloadturfs, /deleteturfs, /setturfpoint" ) ;
break ;
case AdminLevel . PROJEKTLEITUNG :
ChatService . SendMessage ( player , "~b~ " + "/makeadmin, /whitelist, /blind" ) ;
break ;
}
}
}
#endregion
#endregion ahelp
#region Mapping / Entwicklung
@@ -219,9 +224,10 @@ namespace ReallifeGamemode.Server.Commands
ChatService . SendMessage ( player , "Position: X Y Z: " + player . Position + " Richtung: " + player . Heading ) ;
}
#endregion Mapping / Entwicklung
#endregion
#region Support
[Command("tsupport", "~m~Benutzung: ~s~/tsupport", Alias = "ts")]
public void tsup ( Player player )
{
@@ -242,8 +248,6 @@ namespace ReallifeGamemode.Server.Commands
GlobalHelper . tsupAdmins . Remove ( player ) ;
ChatService . SendMessage ( player , "!{#ee4d2e}** " + "Du befindest dich nicht mehr im T-Support" ) ;
using ( var dbContext = new DatabaseContext ( ) )
{
User targetUser = player . GetUser ( dbContext ) ;
@@ -252,12 +256,15 @@ namespace ReallifeGamemode.Server.Commands
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 ;
@@ -281,8 +288,6 @@ namespace ReallifeGamemode.Server.Commands
ChatService . Broadcast ( "~g~[SUPPORT] " + player . Name + " hat sich zum Support angemeldet" ) ;
player . TriggerEvent ( "toggleADutyMode" , true ) ;
}
else
{
@@ -440,7 +445,7 @@ namespace ReallifeGamemode.Server.Commands
}
}
#endregion
#endregion Support
#region ALevel1
@@ -485,9 +490,6 @@ namespace ReallifeGamemode.Server.Commands
ChatService . BroadcastAdmin ( "!{#1db992}** AC " + player . Name + ":~w~ " + message , AdminLevel . ADMIN ) ;
}
[Command("gotolist", "~m~Benutzung: ~s~/gotolist")] //TODO Als Browser anzeigeN??
public void CmdAdminGotoList ( Player player )
{
@@ -815,7 +817,6 @@ namespace ReallifeGamemode.Server.Commands
NAPI . Entity . SetEntityVelocity ( player . Vehicle , new Vector3 ( ) ) ;
}
else player . Position = new Vector3 ( p . X , p . Y , p . Z ) ;
}
}
@@ -831,7 +832,6 @@ namespace ReallifeGamemode.Server.Commands
else player . Position = new Vector3 ( x , y , z ) ;
}
[Command("slap", "~m~Benutzung: ~s~/slap [Spieler] ( Höhe ) ")]
public void CmdAdminSlap ( Player player , string name , int wert = 5 )
{
@@ -963,8 +963,10 @@ namespace ReallifeGamemode.Server.Commands
}
}
#endregion
#endregion ALevel1
#region ALevel2
[Command("sethp", "~m~Benutzung: ~s~/sethp [Spieler] ( Hp ) ")]
public void CmdAdminSetHp ( Player player , string name , int hp = 100 )
{
@@ -1130,7 +1132,6 @@ namespace ReallifeGamemode.Server.Commands
[Command("aclear", "~m~Benutzung: ~s~/aclear [Spieler] [ Grund ] ", GreedyArg = true)]
public void CmdFactionClear ( Player player , string nameOrId , string reason )
{
User user = player . GetUser ( ) ;
if ( ! player . GetUser ( ) ? . IsAdmin ( AdminLevel . ADMIN2 ) ? ? true )
{
@@ -1160,12 +1161,15 @@ namespace ReallifeGamemode.Server.Commands
case null :
target . SetSharedData ( "blipColor" , 0 ) ;
break ;
case 8 :
target . SetSharedData ( "blipColor" , 83 ) ;
break ;
case 7 :
target . SetSharedData ( "blipColor" , 52 ) ;
break ;
case 4 :
target . SetSharedData ( "blipColor" , 5 ) ;
break ;
@@ -1176,7 +1180,9 @@ namespace ReallifeGamemode.Server.Commands
dbContext . SaveChanges ( ) ;
}
}
#endregion
#endregion ALevel2
#region ALevel3
[Command("adice", "~m~Benutzung: ~s~/adice [Zahl] ")]
@@ -1537,7 +1543,6 @@ namespace ReallifeGamemode.Server.Commands
TimeManager . PauseTimeManager ( ) ;
NAPI . World . SetTime ( hour , min , sec ) ;
return ;
}
[Command("setweather", "~m~Benutzung: ~s~/setweather [Wetter] ")]
@@ -1600,7 +1605,8 @@ namespace ReallifeGamemode.Server.Commands
}
}
#endregion
#endregion ALevel3
#region ALevel1337
[Command("wepmod", "~m~Benutzung: ~s~/wepmod [Variable] ")]
public void CmdWeaponModifier ( Player player , float modifier )
@@ -1618,7 +1624,6 @@ namespace ReallifeGamemode.Server.Commands
public void CmdAdminGotocp ( Player admin )
{
admin . TriggerEvent ( "getCP" ) ;
}
[RemoteEvent("sendCP")]
@@ -1725,7 +1730,7 @@ namespace ReallifeGamemode.Server.Commands
else
{
UserItem item = new UserItem ( ) { ItemId = itemId , UserId = target . GetUser ( ) . Id , Amount = amount } ;
InventoryManager . AddItemToInventory ( target , item ) ;
InventoryManager . AddItemToInventory ( target , item . ItemId , item . Amount );
}
}
@@ -1771,7 +1776,6 @@ namespace ReallifeGamemode.Server.Commands
player . SendNotification ( "Edit-Mode ~r~deaktiviert" ) ;
player . TriggerEvent ( "toggleEditMode" , false ) ;
}
}
[Command("setbliptemplate", "~m~Benutzung: ~s~/setbliptemplate [byte COLOR] [ byte ALPHA ] [ bool SHORTRANGE ] [ uint SPRITE ] [ float SCALE ] [ string NAME ] ", GreedyArg = true)]
@@ -1911,16 +1915,18 @@ namespace ReallifeGamemode.Server.Commands
case null :
target . SetSharedData ( "blipColor" , 0 ) ;
break ;
case 8 :
target . SetSharedData ( "blipColor" , 83 ) ;
break ;
case 7 :
target . SetSharedData ( "blipColor" , 52 ) ;
break ;
case 4 :
target . SetSharedData ( "blipColor" , 5 ) ;
break ;
}
dbContext . SaveChanges ( ) ;
}
@@ -1969,16 +1975,18 @@ namespace ReallifeGamemode.Server.Commands
case null :
target . SetSharedData ( "blipColor" , 0 ) ;
break ;
case 8 :
target . SetSharedData ( "blipColor" , 83 ) ;
break ;
case 7 :
target . SetSharedData ( "blipColor" , 52 ) ;
break ;
case 4 :
target . SetSharedData ( "blipColor" , 5 ) ;
break ;
}
dbContext . SaveChanges ( ) ;
@@ -1999,6 +2007,7 @@ namespace ReallifeGamemode.Server.Commands
case "blip" :
player . TriggerEvent ( "saveBlip" ) ;
break ;
case "goto" :
if ( option1 = = null )
{
@@ -2020,10 +2029,10 @@ namespace ReallifeGamemode.Server.Commands
ChatService . SendMessage ( player , "Einen Goto-Punkt mit dieser Bezeichnung gibt es schon!" ) ;
}
}
}
break ;
case "vehicle" :
if ( player . IsInVehicle )
{
@@ -2036,6 +2045,7 @@ namespace ReallifeGamemode.Server.Commands
}
else ChatService . SendMessage ( player , "~m~Du sitzt in keinem Fahrzeug!" ) ;
break ;
case "fvehicle" :
if ( player . IsInVehicle )
{
@@ -2074,6 +2084,7 @@ namespace ReallifeGamemode.Server.Commands
}
else ChatService . SendMessage ( player , "~m~Du sitzt in keinem Fahrzeug!" ) ;
break ;
case "jvehicle" :
if ( player . IsInVehicle )
{
@@ -2262,6 +2273,7 @@ namespace ReallifeGamemode.Server.Commands
}
#region loadCommand
[Command("load", "~m~Benutzung: ~s~/load [Typ = OnlineBunkers, ArcadiusBusinessCentre, MazeBankBuilding, LomBank, MazeBankWest, ClubWareHouse, SpecialLocations, GRHYacht, DHYacht, PYacht, AircraftCarrier, BridgeTC, BridgeTN, NorthYankton, ONeilsFarmB, ONeilsFarm, Morgue")]
public void CmdAdminloadlocation ( Player player , string typ )
{
@@ -2288,6 +2300,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "gr_case4_bunkerclosed" ) ;
ChatService . SendMessage ( player , "~y~ Online Bunkers~s~ erfolgreich geladen!" ) ;
break ;
case "ArcadiusBusinessCentre" :
NAPI . World . RequestIpl ( "ex_dt1_02_office_02b" ) ;
NAPI . World . RequestIpl ( "ex_dt1_02_office_02c" ) ;
@@ -2304,6 +2317,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "imp_dt1_02_modgarage" ) ;
ChatService . SendMessage ( player , "~y~ Arcadius Business Centre~s~ erfolgreich geladen!" ) ;
break ;
case "MazeBankBuilding" :
NAPI . World . RequestIpl ( "ex_dt1_11_office_02b" ) ;
NAPI . World . RequestIpl ( "ex_dt1_11_office_02c" ) ;
@@ -2320,6 +2334,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "imp_dt1_11_modgarage" ) ;
ChatService . SendMessage ( player , "~y~ Maze Bank Building~s~ erfolgreich geladen!" ) ;
break ;
case "LomBank" :
NAPI . World . RequestIpl ( "ex_sm_13_office_02b" ) ;
NAPI . World . RequestIpl ( "ex_sm_13_office_02c" ) ;
@@ -2336,6 +2351,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "imp_sm_13_modgarage" ) ;
ChatService . SendMessage ( player , "~y~Lom Bank~s~ erfolgreich geladen!" ) ;
break ;
case "MazeBankWest" :
NAPI . World . RequestIpl ( "ex_sm_15_office_02b" ) ;
NAPI . World . RequestIpl ( "ex_sm_15_office_02c" ) ;
@@ -2352,6 +2368,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "imp_sm_15_modgarage" ) ;
ChatService . SendMessage ( player , "~y~Maze Bank West~s~ erfolgreich geladen!" ) ;
break ;
case "ClubWareHouse" :
NAPI . World . RequestIpl ( "bkr_biker_interior_placement_interior_0_biker_dlc_int_01_milo" ) ;
NAPI . World . RequestIpl ( "bkr_biker_interior_placement_interior_1_biker_dlc_int_02_milo" ) ;
@@ -2367,6 +2384,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "bkr_bi_hw1_13_int" ) ;
ChatService . SendMessage ( player , "~y~Clubs & Warehouses~s~ erfolgreich geladen!" ) ;
break ;
case "SpecialLocations" :
NAPI . World . RequestIpl ( "cargoship" ) ;
NAPI . World . RequestIpl ( "sunkcargoship" ) ;
@@ -2383,6 +2401,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "FIBlobby" ) ;
ChatService . SendMessage ( player , "~y~Special Locations~s~ erfolgreich geladen!" ) ;
break ;
case "GRHYacht" :
NAPI . World . RequestIpl ( "gr_heist_yacht2" ) ;
NAPI . World . RequestIpl ( "gr_heist_yacht2_bar" ) ;
@@ -2392,6 +2411,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "gr_heist_yacht2_lounge" ) ;
ChatService . SendMessage ( player , "~y~Gunrunning heist Yacht~s~ erfolgreich geladen!" ) ;
break ;
case "DHYacht" :
NAPI . World . RequestIpl ( "hei_yacht_heist" ) ;
NAPI . World . RequestIpl ( "hei_yacht_heist_enginrm" ) ;
@@ -2403,11 +2423,13 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "hei_yacht_heist_LODLights" ) ;
ChatService . SendMessage ( player , "~y~Dignity heist Yacht~s~ erfolgreich geladen!" ) ;
break ;
case "PYacht" :
NAPI . World . RequestIpl ( "smboat" ) ;
NAPI . World . RequestIpl ( "smboat_lod" ) ;
ChatService . SendMessage ( player , "~y~Party Yacht~s~ erfolgreich geladen!" ) ;
break ;
case "AircraftCarrier" :
NAPI . World . RequestIpl ( "hei_carrier" ) ;
NAPI . World . RequestIpl ( "hei_carrier_DistantLights" ) ;
@@ -2420,16 +2442,19 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "hei_carrier_LODLights" ) ;
ChatService . SendMessage ( player , "~y~Aircraft Carrier~s~ erfolgreich geladen!" ) ;
break ;
case "BridgeTC" :
NAPI . World . RequestIpl ( "canyonriver01_traincrash" ) ;
NAPI . World . RequestIpl ( "canyonriver01_traincrash" ) ;
ChatService . SendMessage ( player , "~y~Bridge Train Crash~s~ erfolgreich geladen!" ) ;
break ;
case "BridgeTN" :
NAPI . World . RequestIpl ( "canyonriver01" ) ;
NAPI . World . RequestIpl ( "railing_start" ) ;
ChatService . SendMessage ( player , "~y~Bridge Train Normal~s~ erfolgreich geladen!" ) ;
break ;
case "NorthYankton" :
NAPI . World . RequestIpl ( "prologue01" ) ;
NAPI . World . RequestIpl ( "prologue01c" ) ;
@@ -2464,6 +2489,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "prologuerdb" ) ;
ChatService . SendMessage ( player , "~y~North Yankton~s~ erfolgreich geladen!" ) ;
break ;
case "ONeilsFarmB" :
NAPI . World . RequestIpl ( "farmint" ) ;
NAPI . World . RequestIpl ( "farm_burnt" ) ;
@@ -2472,21 +2498,23 @@ namespace ReallifeGamemode.Server.Commands
NAPI . World . RequestIpl ( "des_farmhs_end_occl" ) ;
ChatService . SendMessage ( player , "~y~ONeils Farm Burnt~s~ erfolgreich geladen!" ) ;
break ;
case "ONeilsFarm" :
NAPI . World . RequestIpl ( "farm" ) ;
NAPI . World . RequestIpl ( "farm_props" ) ;
NAPI . World . RequestIpl ( "farm_int" ) ;
ChatService . SendMessage ( player , "~y~ONeils Farm~s~ erfolgreich geladen!" ) ;
break ;
case "Morgue" :
NAPI . World . RequestIpl ( "coronertrash" ) ;
NAPI . World . RequestIpl ( "Coroner_Int_On" ) ;
ChatService . SendMessage ( player , "~y~Morgue~s~ erfolgreich geladen!" ) ;
break ;
}
}
#endregion
#endregion loadCommand
//
[Command("managefactionranks", "~m~Benutzung: ~s~/managefactionranks [Fraktions-ID] ", Alias = " mfr ")]
@@ -2713,7 +2741,6 @@ namespace ReallifeGamemode.Server.Commands
// return;
// }
//}
[Command("reloaddoors", "~m~Benutzung: ~s~/reloaddoors")]
@@ -2828,7 +2855,6 @@ namespace ReallifeGamemode.Server.Commands
dbContext . SaveChanges ( ) ;
ChatService . SendMessage ( player , "Waffeneintrag bearbeitet für die Fraktion " + f . Name + ": " + weaponModel + ", SlotId: " + slotId ) ;
return ;
}
FactionWeapon fw2 = dbContext . FactionWeapons . FirstOrDefault ( w = > w . FactionId = = factionID & & w . WeaponModel = = weaponModel ) ;
@@ -2854,7 +2880,6 @@ namespace ReallifeGamemode.Server.Commands
}
}
[Command("rmweaponrack", "~m~Benutzung: ~s~/rmweaponrack [Fraktion ID] [ Waffen Model ] ")]
public void CmdAdminRmWeaponrack ( Player player , int factionID , string weaponModel )
{
@@ -3016,9 +3041,11 @@ namespace ReallifeGamemode.Server.Commands
}
player . TriggerEvent ( "ADMIN:Turf_CreateLeaderBlip" ) ;
}
#endregion
#endregion ALevel1337
#region ALevel1338
[Command("whitelist", "~m~Benutzung: ~s~/whitelist [Add / Remove] [ Socialclub Name ] ")]
public void CmdAdminWhitelist ( Player player , string option , string scName )
{
@@ -3123,6 +3150,7 @@ namespace ReallifeGamemode.Server.Commands
ChatService . SendMessage ( target , "~b~[ADMIN]~s~ Du wurdest durch ~y~" + player . Name + " ~s~auf Adminlevel ~y~" + target . GetUser ( ) . AdminLevel . GetName ( ) + " ~y~(" + rank + ") ~s~gesetzt." ) ;
ChatService . SendMessage ( player , "~b~[ADMIN]~s~ Du hast ~y~" + target . Name + " ~s~auf Adminlevel ~y~" + target . GetUser ( ) . AdminLevel . GetName ( ) + " ~y~(" + rank + ") ~s~gesetzt." ) ;
}
#endregion
#endregion ALevel1338
}
}