Merge pull request #1526 from esx-framework/fix-tp-cmds

feat(es_extended/server/modules/commands): add /setdim cmd
This commit is contained in:
Kenshin13
2024-12-06 11:03:15 +01:00
committed by GitHub
3 changed files with 41 additions and 2 deletions
+2
View File
@@ -114,9 +114,11 @@ Locales["en"] = {
["commanderror_invalidcommand"] = "Invalid Command - /%s",
["commanderror_invalidplayerid"] = "Specified Player is not online",
["commandgeneric_playerid"] = "Player`s Server Id",
["commandgeneric_dimension"] = "Target Dimension",
["command_giveammo_noweapon_found"] = "%s does not have that weapon",
["command_giveammo_weapon"] = "Weapon name",
["command_giveammo_ammo"] = "Ammo Quantity",
["command_setdim"] = "Set a players dimension",
["tpm_nowaypoint"] = "No Waypoint Set.",
["tpm_success"] = "Successfully Teleported",
+2 -2
View File
@@ -299,14 +299,14 @@ function ESX.GetExtendedPlayers(key, val)
local xPlayers = {}
if type(val) == "table" then
for i, xPlayer in pairs(ESX.Players) do
for _, xPlayer in pairs(ESX.Players) do
checkTable(key, val, xPlayer, xPlayers)
end
return xPlayers
end
for i, xPlayer in pairs(ESX.Players) do
for _, xPlayer in pairs(ESX.Players) do
if (key == "job" and xPlayer.job.name == val) or xPlayer[key] == val then
xPlayers[#xPlayers + 1] = xPlayer
end
@@ -593,6 +593,12 @@ ESX.RegisterCommand(
"admin",
function(xPlayer, args)
local targetCoords = args.playerId.getCoords()
local srcDim = GetPlayerRoutingBucket(xPlayer.source)
local targetDim = GetPlayerRoutingBucket(args.playerId.source)
if srcDim ~= targetDim then
SetPlayerRoutingBucket(xPlayer.source, targetDim)
end
xPlayer.setCoords(targetCoords)
if Config.AdminLogging then
ESX.DiscordLogFields("UserActions", "Admin Teleport /goto Triggered!", "pink", {
@@ -619,6 +625,12 @@ ESX.RegisterCommand(
function(xPlayer, args)
local targetCoords = args.playerId.getCoords()
local playerCoords = xPlayer.getCoords()
local targetDim = GetPlayerRoutingBucket(args.playerId.source)
local srcDim = GetPlayerRoutingBucket(xPlayer.source)
if targetDim ~= srcDim then
SetPlayerRoutingBucket(args.playerId.source, srcDim)
end
args.playerId.setCoords(playerCoords)
if Config.AdminLogging then
ESX.DiscordLogFields("UserActions", "Admin Teleport /bring Triggered!", "pink", {
@@ -726,3 +738,28 @@ ESX.RegisterCommand("players", "admin", function()
print(("^1[^2ID: ^5%s^0 | ^2Name : ^5%s^0 | ^2Group : ^5%s^0 | ^2Identifier : ^5%s^1]^0\n"):format(xPlayer.source, xPlayer.getName(), xPlayer.getGroup(), xPlayer.identifier))
end
end, true)
ESX.RegisterCommand(
{"setdim", "setbucket"},
"admin",
function(xPlayer, args)
SetPlayerRoutingBucket(args.playerId.source, args.dimension)
if Config.AdminLogging then
ESX.DiscordLogFields("UserActions", "Admin Set Dim /setdim Triggered!", "pink", {
{ name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true },
{ name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true },
{ name = "Target", value = args.playerId.name, inline = true },
{ name = "Dimension", value = args.dimension, inline = true },
})
end
end,
true,
{
help = TranslateCap("command_setdim"),
validate = true,
arguments = {
{ name = "playerId", help = TranslateCap("commandgeneric_playerid"), type = "player" },
{ name = "dimension", help = TranslateCap("commandgeneric_dimension"), type = "number" },
},
}
)