Files
reallife-gamemode/ReallifeGamemode.Server/Commands/UserCommands.cs
2020-08-08 22:01:49 +02:00

77 lines
2.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using GTANetworkAPI;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Server.Extensions;
using ReallifeGamemode.Server.Finance;
using ReallifeGamemode.Server.Managers;
using ReallifeGamemode.Server.Services;
using ReallifeGamemode.Server.Types;
using ReallifeGamemode.Server.Util;
using ReallifeGamemode.Services;
namespace ReallifeGamemode.Server.Commands
{
internal class UserCommands : Script
{
[Command("id", "~m~Benutzung: ~s~/id")]
public void CmdUserId(Player player, String targetname)
{
Player target = PlayerService.GetPlayerByNameOrId(targetname);
if (target == null)
{
player.SendChatMessage("~c~Spieler ist nicht online.");
} else
{
player.SendChatMessage("~c~ID: (" + target.Id + ") " + target.Name);
}
}
[Command("dice", "~m~Benutzung: ~s~/dice")]
public void CmdUserDice(Player player)
{
if (!player.IsLoggedIn()) return;
Random rnd = new Random();
int number = rnd.Next(1, 7);
var peopleInRange = NAPI.Player.GetPlayersInRadiusOfPlayer(7, player);
foreach (var managedPlayer in peopleInRange)
{
if (!managedPlayer.IsLoggedIn()) return;
ChatService.SendMessage(managedPlayer, "* " + player.Name + " hat eine " + number + " gewürfelt.");
}
}
[Command("car", "~m~Benutzung: ~s~/car")]
public void CmdUserCar(Player player)
{
if (!player.IsLoggedIn()) return;
Vehicle pVeh = null;
if (player.IsInVehicle)
{
pVeh = player.Vehicle;
}
else
{
pVeh = NAPI.Pools.GetAllVehicles().Where(v => v.Position.DistanceTo(player.Position) <= 5).FirstOrDefault();
}
if (pVeh == null)
{
return;
}
if (pVeh.GetServerVehicle() is ServerVehicle veh)
{
ChatService.SendMessage(player, "~m~" + ((VehicleHash)pVeh.Model) + " | " + veh.ToString() + " | Farbe 1: " + pVeh.PrimaryColor + " | Farbe 2: " + pVeh.SecondaryColor + " | ID: " + pVeh.Handle.Value);
}
}
}
}