SkyDow Posted March 5, 2023 Share Posted March 5, 2023 Hello Multi Theft Auto Community, I need your help with the DayZ:MTA server script, I mean some commands for Admin such as: goto, gethere, sendto, ban, kick, mute, akill, etc.... please help me because I'm not that good at scripting and I really need your help! Link to comment
Addlibs Posted March 5, 2023 Share Posted March 5, 2023 (edited) The commands you listed are incredibly easy to implement yourself (beginner level stuff, may be difficult if you have absolutely not idea what you're doing but once you learn the basics it should be easy), have you even tried? If so, show us your progress/attempts and what your specific issue is. We're not here to script for you. Edited March 5, 2023 by Addlibs Link to comment
SkyDow Posted March 6, 2023 Author Share Posted March 6, 2023 ----------------------------[GO TO PLAYER]--------------------------------------- function gotoPlayer(thePlayer, commandName, target) if exports.integration:isPlayerTrialAdmin(thePlayer) or exports.integration:isPlayerSupporter(thePlayer) or exports.integration:isPlayerScripter(thePlayer) or exports.integration:isPlayerVCTMember(thePlayer) then if commandName:lower() == "goto" then if not (target) then outputChatBox("SYNTAX: /" .. commandName .. " [Partial Player Nick]", thePlayer, 255, 194, 14) else local username = getPlayerName(thePlayer) local targetPlayer, targetPlayerName = exports.global:findPlayerByPartialNick(thePlayer, target) if targetPlayer then local logged = getElementData(targetPlayer, "loggedin") if (logged==0) then outputChatBox("Player is not logged in.", thePlayer, 255, 0 , 0) else detachElements(thePlayer) local x, y, z = getElementPosition(targetPlayer) local interior = getElementInterior(targetPlayer) local dimension = getElementDimension(targetPlayer) local r = getPedRotation(targetPlayer) -- Maths calculations to stop the player being stuck in the target x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) setCameraInterior(thePlayer, interior) if (isPedInVehicle(thePlayer)) then local veh = getPedOccupiedVehicle(thePlayer) setElementAngularVelocity(veh, 0, 0, 0) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) setElementInterior(veh, interior) setElementDimension(veh, dimension) setElementPosition(veh, x, y, z + 1) warpPedIntoVehicle ( thePlayer, veh ) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) else setElementPosition(thePlayer, x, y, z) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) end outputChatBox(" You have teleported to player " .. targetPlayerName .. ".", thePlayer) triggerEvent ( "frames:loadInteriorTextures", thePlayer, dimension ) -- Adams if exports.integration:isPlayerSupporter(thePlayer) then outputChatBox(" Supporter " .. username .. " has teleported to you. ", targetPlayer) else local hiddenAdmin = getElementData(thePlayer, "hiddenadmin") if hiddenAdmin == 0 then outputChatBox(" Admin " .. username .. " has teleported to you. ", targetPlayer) end end end end end else local username = getPlayerName(thePlayer) local logged = getElementData(target, "loggedin") if (logged==0) then outputChatBox("Player is not logged in.", thePlayer, 255, 0 , 0) else detachElements(thePlayer) local x, y, z = getElementPosition(target) local interior = getElementInterior(target) local dimension = getElementDimension(target) local r = getPedRotation(target) -- Maths calculations to stop the player being stuck in the target x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) setCameraInterior(thePlayer, interior) if (isPedInVehicle(thePlayer)) then local veh = getPedOccupiedVehicle(thePlayer) setElementAngularVelocity(veh, 0, 0, 0) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) setElementInterior(veh, interior) setElementDimension(veh, dimension) setElementPosition(veh, x, y, z + 1) warpPedIntoVehicle ( thePlayer, veh ) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) else setElementPosition(thePlayer, x, y, z) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) end outputChatBox(" You have accepted teleport request from " .. getPlayerName(target):gsub("_", " ") .. ".", thePlayer) triggerEvent ( "frames:loadInteriorTextures", thePlayer, dimension ) -- Adams if exports.integration:isPlayerSupporter(thePlayer) then outputChatBox(" Supporter " .. username .. " has accepted your teleport request. ", target) else outputChatBox(" Admin " .. username .. " has accepted your teleport request.", target) end end end end end addCommandHandler("goto", gotoPlayer, false, false) function getPlayer(thePlayer, commandName, from, to) if exports.integration:isPlayerTrialAdmin(thePlayer) or exports.integration:isPlayerSupporter(thePlayer) or exports.integration:isPlayerScripter(thePlayer) or exports.integration:isPlayerVCTMember(thePlayer) then if(not from or not to) then outputChatBox("SYNTAX: /" .. commandName .. " [Sending Player] [To Player]", thePlayer, 255, 194, 14) else local admin = getPlayerName(thePlayer):gsub("_"," ") local fromplayer, targetPlayerName1 = exports.global:findPlayerByPartialNick(thePlayer, from) local toplayer, targetPlayerName2 = exports.global:findPlayerByPartialNick(thePlayer, to) if(fromplayer and toplayer) then local logged1 = getElementData(fromplayer, "loggedin") local logged2 = getElementData(toplayer, "loggedin") if(not logged1 or not logged2) then outputChatBox("At least one of the players is not logged in.", thePlayer, 255, 0 , 0) else detachElements(fromplayer) local x, y, z = getElementPosition(toplayer) local interior = getElementInterior(toplayer) local dimension = getElementDimension(toplayer) local r = getPedRotation(toplayer) -- Maths calculations to stop the target being stuck in the player x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) if (isPedInVehicle(fromplayer)) then local veh = getPedOccupiedVehicle(fromplayer) setElementAngularVelocity(veh, 0, 0, 0) setElementPosition(veh, x, y, z + 1) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) setElementInterior(veh, interior) setElementDimension(veh, dimension) else setElementPosition(fromplayer, x, y, z) setElementInterior(fromplayer, interior) setElementDimension(fromplayer, dimension) end outputChatBox(" You have teleported player " .. targetPlayerName1:gsub("_"," ") .. " to " .. targetPlayerName2:gsub("_"," ") .. ".", thePlayer) triggerEvent ( "frames:loadInteriorTextures", fromplayer, dimension ) -- Adams local hiddenAdmin = getElementData(thePlayer, "hiddenadmin") if hiddenAdmin == 0 then outputChatBox(" An admin " .. admin .. " has teleported you to " .. targetPlayerName2:gsub("_"," ") .. ". ", fromplayer) outputChatBox(" An admin " .. admin .. " has teleported " .. targetPlayerName1:gsub("_"," ") .. " to you.", toplayer) else outputChatBox(" An hidden admin has teleported you to " .. targetPlayerName2:gsub("_"," ") .. ". ", fromplayer) outputChatBox(" An hidden admin has teleported " .. targetPlayerName1:gsub("_"," ") .. " to you.", toplayer) end end end end end end addCommandHandler("sendto", getPlayer, false, false) ----------------------------[GET PLAYER HERE]--------------------------------------- function getPlayer(thePlayer, commandName, target) if exports.integration:isPlayerTrialAdmin(thePlayer) or exports.integration:isPlayerSupporter(thePlayer) or exports.integration:isPlayerScripter(thePlayer) then if not target then outputChatBox("SYNTAX: /" .. commandName .. " /gethere [Partial Player Nick]", thePlayer, 255, 194, 14) else local username = getPlayerName(thePlayer) local targetPlayer, targetPlayerName = exports.global:findPlayerByPartialNick(thePlayer, target) if targetPlayer then local logged = getElementData(targetPlayer, "loggedin") if (logged==0) then outputChatBox("Player is not logged in.", thePlayer, 255, 0 , 0) else local playerAdmLvl = getElementData( thePlayer, "admin_level" ) or 0 local targetAdmLvl = getElementData( targetPlayer, "admin_level" ) or 0 if (playerAdmLvl < targetAdmLvl) then outputChatBox("Sending "..targetPlayerName.." teleporting request as they're higher rank than you.", thePlayer, 255, 194, 14) outputChatBox(getPlayerName(thePlayer):gsub("_", " ").." wants to teleport you to them. /atp to accept, /dtp to deny.", targetPlayer, 255, 194, 14) setElementData(targetPlayer, "teleport:targetPlayer", thePlayer) return end detachElements(targetPlayer) local x, y, z = getElementPosition(thePlayer) local interior = getElementInterior(thePlayer) local dimension = getElementDimension(thePlayer) local r = getPedRotation(thePlayer) setCameraInterior(targetPlayer, interior) -- Maths calculations to stop the target being stuck in the player x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) if (isPedInVehicle(targetPlayer)) then local veh = getPedOccupiedVehicle(targetPlayer) setElementAngularVelocity(veh, 0, 0, 0) setElementPosition(veh, x, y, z + 1) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) setElementInterior(veh, interior) setElementDimension(veh, dimension) else setElementPosition(targetPlayer, x, y, z) setElementInterior(targetPlayer, interior) setElementDimension(targetPlayer, dimension) end outputChatBox(" You have teleported player " .. targetPlayerName .. " to you.", thePlayer) triggerEvent ( "frames:loadInteriorTextures", targetPlayer, dimension ) -- Adams if exports.integration:isPlayerSupporter(thePlayer) then outputChatBox(" Supporter " .. username .. " has teleported you to them. ", targetPlayer) else local hiddenAdmin = getElementData(thePlayer, "hiddenadmin") if hiddenAdmin == 0 then outputChatBox(" Admin " .. username .. " has teleported you to them. ", targetPlayer) end end end end end end end addCommandHandler("gethere", getPlayer, false, false) I have them but I want to remove integration, export and mysql, not for DayZ mode!? Link to comment
SkyDow Posted March 15, 2023 Author Share Posted March 15, 2023 (edited) On 06/03/2023 at 01:08, Addlibs said: The commands you listed are incredibly easy to implement yourself (beginner level stuff, may be difficult if you have absolutely not idea what you're doing but once you learn the basics it should be easy), have you even tried? If so, show us your progress/attempts and what your specific issue is. We're not here to script for you. yes it is very easy for you to say, but I want to remove these functions to be only the normal system. " exports.integration" yes, I'm not that good at scripting and I don't know how, help me! Edited March 15, 2023 by WRIST Link to comment
alex17" Posted March 15, 2023 Share Posted March 15, 2023 5 hours ago, WRIST said: yes it is very easy for you to say, but I want to remove these functions to be only the normal system. " exports.integration" yes, I'm not that good at scripting and I don't know how, help me! you just want to remove the export or you want to replace it with something else like ACL ? Link to comment
SkyDow Posted March 15, 2023 Author Share Posted March 15, 2023 11 minutes ago, alex17" said: you just want to remove the export or you want to replace it with something else like ACL ? I want to explain one thing to you, in Roleplay gamemodes, in scripts there are those commands only with integration.exports, but in normal servers there are only clean commands like this: in Roleplay mode the commands are like this: function gotoPlayer(thePlayer, commandName, target) if exports.integration:isPlayerTrialAdmin(thePlayer) or exports.integration:isPlayerSupporter(thePlayer) or exports.integration:isPlayerScripter(thePlayer) or exports.integration:isPlayerVCTMember(thePlayer) and in other DayZ-type modes and other modes below, the commands are scripted like this: function teleport(thePlayer,cmd,target) local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then if (target) then local targetPlayer = getPlayerFromName(target) if (targetPlayer) then x,y,z = getElementPosition (targetPlayer) setElementPosition (thePlayer, x,y,z) And that's why I want all commands for the admin system in DayZ mode to be like I gave an example in the DayZ server scripts and freeroam. I think you understand?! If I wanted to be good at scripting, then I would do it myself without asking for your help, and if I don't know the basics of scripting very well, I'm asking you to help me a lot! Link to comment
alex17" Posted March 15, 2023 Share Posted March 15, 2023 4 minutes ago, WRIST said: I want to explain one thing to you, in Roleplay gamemodes, in scripts there are those commands only with integration.exports, but in normal servers there are only clean commands like this: in Roleplay mode the commands are like this: function gotoPlayer(thePlayer, commandName, target) if exports.integration:isPlayerTrialAdmin(thePlayer) or exports.integration:isPlayerSupporter(thePlayer) or exports.integration:isPlayerScripter(thePlayer) or exports.integration:isPlayerVCTMember(thePlayer) and in other DayZ-type modes and other modes below, the commands are scripted like this: function teleport(thePlayer,cmd,target) local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then if (target) then local targetPlayer = getPlayerFromName(target) if (targetPlayer) then x,y,z = getElementPosition (targetPlayer) setElementPosition (thePlayer, x,y,z) And that's why I want all commands for the admin system in DayZ mode to be like I gave an example in the DayZ server scripts and freeroam. I think you understand?! If I wanted to be good at scripting, then I would do it myself without asking for your help, and if I don't know the basics of scripting very well, I'm asking you to help me a lot! ----------------------------[GO TO PLAYER]--------------------------------------- function gotoPlayer(thePlayer, commandName, target) if isObjectInACLGroup ("user."..getAccountName ( getPlayerAccount ( thePlayer ) ), aclGetGroup ( "Admin" ) ) then if commandName:lower() == "goto" then if not (target) then outputChatBox("SYNTAX: /" .. commandName .. " [Partial Player Nick]", thePlayer, 255, 194, 14) else local username = getPlayerName(thePlayer) local targetPlayer, targetPlayerName = exports.global:findPlayerByPartialNick(thePlayer, target) if targetPlayer then local logged = getElementData(targetPlayer, "loggedin") if (logged==0) then outputChatBox("Player is not logged in.", thePlayer, 255, 0 , 0) else detachElements(thePlayer) local x, y, z = getElementPosition(targetPlayer) local interior = getElementInterior(targetPlayer) local dimension = getElementDimension(targetPlayer) local r = getPedRotation(targetPlayer) -- Maths calculations to stop the player being stuck in the target x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) setCameraInterior(thePlayer, interior) if (isPedInVehicle(thePlayer)) then local veh = getPedOccupiedVehicle(thePlayer) setElementAngularVelocity(veh, 0, 0, 0) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) setElementInterior(veh, interior) setElementDimension(veh, dimension) setElementPosition(veh, x, y, z + 1) warpPedIntoVehicle ( thePlayer, veh ) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) else setElementPosition(thePlayer, x, y, z) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) end outputChatBox(" You have teleported to player " .. targetPlayerName .. ".", thePlayer) triggerEvent ( "frames:loadInteriorTextures", thePlayer, dimension ) -- Adams if exports.integration:isPlayerSupporter(thePlayer) then outputChatBox(" Supporter " .. username .. " has teleported to you. ", targetPlayer) else local hiddenAdmin = getElementData(thePlayer, "hiddenadmin") if hiddenAdmin == 0 then outputChatBox(" Admin " .. username .. " has teleported to you. ", targetPlayer) end end end end end else local username = getPlayerName(thePlayer) local logged = getElementData(target, "loggedin") if (logged==0) then outputChatBox("Player is not logged in.", thePlayer, 255, 0 , 0) else detachElements(thePlayer) local x, y, z = getElementPosition(target) local interior = getElementInterior(target) local dimension = getElementDimension(target) local r = getPedRotation(target) -- Maths calculations to stop the player being stuck in the target x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) setCameraInterior(thePlayer, interior) if (isPedInVehicle(thePlayer)) then local veh = getPedOccupiedVehicle(thePlayer) setElementAngularVelocity(veh, 0, 0, 0) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) setElementInterior(veh, interior) setElementDimension(veh, dimension) setElementPosition(veh, x, y, z + 1) warpPedIntoVehicle ( thePlayer, veh ) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) else setElementPosition(thePlayer, x, y, z) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) end outputChatBox(" You have accepted teleport request from " .. getPlayerName(target):gsub("_", " ") .. ".", thePlayer) triggerEvent ( "frames:loadInteriorTextures", thePlayer, dimension ) -- Adams if exports.integration:isPlayerSupporter(thePlayer) then outputChatBox(" Supporter " .. username .. " has accepted your teleport request. ", target) else outputChatBox(" Admin " .. username .. " has accepted your teleport request.", target) end end end end end addCommandHandler("goto", gotoPlayer, false, false) function getPlayer(thePlayer, commandName, from, to) if isObjectInACLGroup ("user."..getAccountName ( getPlayerAccount ( thePlayer ) ), aclGetGroup ( "Admin" ) ) then if(not from or not to) then outputChatBox("SYNTAX: /" .. commandName .. " [Sending Player] [To Player]", thePlayer, 255, 194, 14) else local admin = getPlayerName(thePlayer):gsub("_"," ") local fromplayer, targetPlayerName1 = exports.global:findPlayerByPartialNick(thePlayer, from) local toplayer, targetPlayerName2 = exports.global:findPlayerByPartialNick(thePlayer, to) if(fromplayer and toplayer) then local logged1 = getElementData(fromplayer, "loggedin") local logged2 = getElementData(toplayer, "loggedin") if(not logged1 or not logged2) then outputChatBox("At least one of the players is not logged in.", thePlayer, 255, 0 , 0) else detachElements(fromplayer) local x, y, z = getElementPosition(toplayer) local interior = getElementInterior(toplayer) local dimension = getElementDimension(toplayer) local r = getPedRotation(toplayer) -- Maths calculations to stop the target being stuck in the player x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) if (isPedInVehicle(fromplayer)) then local veh = getPedOccupiedVehicle(fromplayer) setElementAngularVelocity(veh, 0, 0, 0) setElementPosition(veh, x, y, z + 1) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) setElementInterior(veh, interior) setElementDimension(veh, dimension) else setElementPosition(fromplayer, x, y, z) setElementInterior(fromplayer, interior) setElementDimension(fromplayer, dimension) end outputChatBox(" You have teleported player " .. targetPlayerName1:gsub("_"," ") .. " to " .. targetPlayerName2:gsub("_"," ") .. ".", thePlayer) triggerEvent ( "frames:loadInteriorTextures", fromplayer, dimension ) -- Adams local hiddenAdmin = getElementData(thePlayer, "hiddenadmin") if hiddenAdmin == 0 then outputChatBox(" An admin " .. admin .. " has teleported you to " .. targetPlayerName2:gsub("_"," ") .. ". ", fromplayer) outputChatBox(" An admin " .. admin .. " has teleported " .. targetPlayerName1:gsub("_"," ") .. " to you.", toplayer) else outputChatBox(" An hidden admin has teleported you to " .. targetPlayerName2:gsub("_"," ") .. ". ", fromplayer) outputChatBox(" An hidden admin has teleported " .. targetPlayerName1:gsub("_"," ") .. " to you.", toplayer) end end end end end end addCommandHandler("sendto", getPlayer, false, false) ----------------------------[GET PLAYER HERE]--------------------------------------- function getPlayer(thePlayer, commandName, target) if isObjectInACLGroup ("user."..getAccountName ( getPlayerAccount ( thePlayer ) ), aclGetGroup ( "Admin" ) ) then if not target then outputChatBox("SYNTAX: /" .. commandName .. " /gethere [Partial Player Nick]", thePlayer, 255, 194, 14) else local username = getPlayerName(thePlayer) local targetPlayer, targetPlayerName = exports.global:findPlayerByPartialNick(thePlayer, target) if targetPlayer then local logged = getElementData(targetPlayer, "loggedin") if (logged==0) then outputChatBox("Player is not logged in.", thePlayer, 255, 0 , 0) else local playerAdmLvl = getElementData( thePlayer, "admin_level" ) or 0 local targetAdmLvl = getElementData( targetPlayer, "admin_level" ) or 0 if (playerAdmLvl < targetAdmLvl) then outputChatBox("Sending "..targetPlayerName.." teleporting request as they're higher rank than you.", thePlayer, 255, 194, 14) outputChatBox(getPlayerName(thePlayer):gsub("_", " ").." wants to teleport you to them. /atp to accept, /dtp to deny.", targetPlayer, 255, 194, 14) setElementData(targetPlayer, "teleport:targetPlayer", thePlayer) return end detachElements(targetPlayer) local x, y, z = getElementPosition(thePlayer) local interior = getElementInterior(thePlayer) local dimension = getElementDimension(thePlayer) local r = getPedRotation(thePlayer) setCameraInterior(targetPlayer, interior) -- Maths calculations to stop the target being stuck in the player x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) if (isPedInVehicle(targetPlayer)) then local veh = getPedOccupiedVehicle(targetPlayer) setElementAngularVelocity(veh, 0, 0, 0) setElementPosition(veh, x, y, z + 1) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) setElementInterior(veh, interior) setElementDimension(veh, dimension) else setElementPosition(targetPlayer, x, y, z) setElementInterior(targetPlayer, interior) setElementDimension(targetPlayer, dimension) end outputChatBox(" You have teleported player " .. targetPlayerName .. " to you.", thePlayer) triggerEvent ( "frames:loadInteriorTextures", targetPlayer, dimension ) -- Adams if exports.integration:isPlayerSupporter(thePlayer) then outputChatBox(" Supporter " .. username .. " has teleported you to them. ", targetPlayer) else local hiddenAdmin = getElementData(thePlayer, "hiddenadmin") if hiddenAdmin == 0 then outputChatBox(" Admin " .. username .. " has teleported you to them. ", targetPlayer) end end end end end end end addCommandHandler("gethere", getPlayer, false, false) Link to comment
SkyDow Posted March 15, 2023 Author Share Posted March 15, 2023 1 hour ago, alex17" said: ----------------------------[GO TO PLAYER]--------------------------------------- function gotoPlayer(thePlayer, commandName, target) if isObjectInACLGroup ("user."..getAccountName ( getPlayerAccount ( thePlayer ) ), aclGetGroup ( "Admin" ) ) then if commandName:lower() == "goto" then if not (target) then outputChatBox("SYNTAX: /" .. commandName .. " [Partial Player Nick]", thePlayer, 255, 194, 14) else local username = getPlayerName(thePlayer) local targetPlayer, targetPlayerName = exports.global:findPlayerByPartialNick(thePlayer, target) if targetPlayer then local logged = getElementData(targetPlayer, "loggedin") if (logged==0) then outputChatBox("Player is not logged in.", thePlayer, 255, 0 , 0) else detachElements(thePlayer) local x, y, z = getElementPosition(targetPlayer) local interior = getElementInterior(targetPlayer) local dimension = getElementDimension(targetPlayer) local r = getPedRotation(targetPlayer) -- Maths calculations to stop the player being stuck in the target x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) setCameraInterior(thePlayer, interior) if (isPedInVehicle(thePlayer)) then local veh = getPedOccupiedVehicle(thePlayer) setElementAngularVelocity(veh, 0, 0, 0) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) setElementInterior(veh, interior) setElementDimension(veh, dimension) setElementPosition(veh, x, y, z + 1) warpPedIntoVehicle ( thePlayer, veh ) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) else setElementPosition(thePlayer, x, y, z) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) end outputChatBox(" You have teleported to player " .. targetPlayerName .. ".", thePlayer) triggerEvent ( "frames:loadInteriorTextures", thePlayer, dimension ) -- Adams if exports.integration:isPlayerSupporter(thePlayer) then outputChatBox(" Supporter " .. username .. " has teleported to you. ", targetPlayer) else local hiddenAdmin = getElementData(thePlayer, "hiddenadmin") if hiddenAdmin == 0 then outputChatBox(" Admin " .. username .. " has teleported to you. ", targetPlayer) end end end end end else local username = getPlayerName(thePlayer) local logged = getElementData(target, "loggedin") if (logged==0) then outputChatBox("Player is not logged in.", thePlayer, 255, 0 , 0) else detachElements(thePlayer) local x, y, z = getElementPosition(target) local interior = getElementInterior(target) local dimension = getElementDimension(target) local r = getPedRotation(target) -- Maths calculations to stop the player being stuck in the target x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) setCameraInterior(thePlayer, interior) if (isPedInVehicle(thePlayer)) then local veh = getPedOccupiedVehicle(thePlayer) setElementAngularVelocity(veh, 0, 0, 0) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) setElementInterior(veh, interior) setElementDimension(veh, dimension) setElementPosition(veh, x, y, z + 1) warpPedIntoVehicle ( thePlayer, veh ) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) else setElementPosition(thePlayer, x, y, z) setElementInterior(thePlayer, interior) setElementDimension(thePlayer, dimension) end outputChatBox(" You have accepted teleport request from " .. getPlayerName(target):gsub("_", " ") .. ".", thePlayer) triggerEvent ( "frames:loadInteriorTextures", thePlayer, dimension ) -- Adams if exports.integration:isPlayerSupporter(thePlayer) then outputChatBox(" Supporter " .. username .. " has accepted your teleport request. ", target) else outputChatBox(" Admin " .. username .. " has accepted your teleport request.", target) end end end end end addCommandHandler("goto", gotoPlayer, false, false) function getPlayer(thePlayer, commandName, from, to) if isObjectInACLGroup ("user."..getAccountName ( getPlayerAccount ( thePlayer ) ), aclGetGroup ( "Admin" ) ) then if(not from or not to) then outputChatBox("SYNTAX: /" .. commandName .. " [Sending Player] [To Player]", thePlayer, 255, 194, 14) else local admin = getPlayerName(thePlayer):gsub("_"," ") local fromplayer, targetPlayerName1 = exports.global:findPlayerByPartialNick(thePlayer, from) local toplayer, targetPlayerName2 = exports.global:findPlayerByPartialNick(thePlayer, to) if(fromplayer and toplayer) then local logged1 = getElementData(fromplayer, "loggedin") local logged2 = getElementData(toplayer, "loggedin") if(not logged1 or not logged2) then outputChatBox("At least one of the players is not logged in.", thePlayer, 255, 0 , 0) else detachElements(fromplayer) local x, y, z = getElementPosition(toplayer) local interior = getElementInterior(toplayer) local dimension = getElementDimension(toplayer) local r = getPedRotation(toplayer) -- Maths calculations to stop the target being stuck in the player x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) if (isPedInVehicle(fromplayer)) then local veh = getPedOccupiedVehicle(fromplayer) setElementAngularVelocity(veh, 0, 0, 0) setElementPosition(veh, x, y, z + 1) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) setElementInterior(veh, interior) setElementDimension(veh, dimension) else setElementPosition(fromplayer, x, y, z) setElementInterior(fromplayer, interior) setElementDimension(fromplayer, dimension) end outputChatBox(" You have teleported player " .. targetPlayerName1:gsub("_"," ") .. " to " .. targetPlayerName2:gsub("_"," ") .. ".", thePlayer) triggerEvent ( "frames:loadInteriorTextures", fromplayer, dimension ) -- Adams local hiddenAdmin = getElementData(thePlayer, "hiddenadmin") if hiddenAdmin == 0 then outputChatBox(" An admin " .. admin .. " has teleported you to " .. targetPlayerName2:gsub("_"," ") .. ". ", fromplayer) outputChatBox(" An admin " .. admin .. " has teleported " .. targetPlayerName1:gsub("_"," ") .. " to you.", toplayer) else outputChatBox(" An hidden admin has teleported you to " .. targetPlayerName2:gsub("_"," ") .. ". ", fromplayer) outputChatBox(" An hidden admin has teleported " .. targetPlayerName1:gsub("_"," ") .. " to you.", toplayer) end end end end end end addCommandHandler("sendto", getPlayer, false, false) ----------------------------[GET PLAYER HERE]--------------------------------------- function getPlayer(thePlayer, commandName, target) if isObjectInACLGroup ("user."..getAccountName ( getPlayerAccount ( thePlayer ) ), aclGetGroup ( "Admin" ) ) then if not target then outputChatBox("SYNTAX: /" .. commandName .. " /gethere [Partial Player Nick]", thePlayer, 255, 194, 14) else local username = getPlayerName(thePlayer) local targetPlayer, targetPlayerName = exports.global:findPlayerByPartialNick(thePlayer, target) if targetPlayer then local logged = getElementData(targetPlayer, "loggedin") if (logged==0) then outputChatBox("Player is not logged in.", thePlayer, 255, 0 , 0) else local playerAdmLvl = getElementData( thePlayer, "admin_level" ) or 0 local targetAdmLvl = getElementData( targetPlayer, "admin_level" ) or 0 if (playerAdmLvl < targetAdmLvl) then outputChatBox("Sending "..targetPlayerName.." teleporting request as they're higher rank than you.", thePlayer, 255, 194, 14) outputChatBox(getPlayerName(thePlayer):gsub("_", " ").." wants to teleport you to them. /atp to accept, /dtp to deny.", targetPlayer, 255, 194, 14) setElementData(targetPlayer, "teleport:targetPlayer", thePlayer) return end detachElements(targetPlayer) local x, y, z = getElementPosition(thePlayer) local interior = getElementInterior(thePlayer) local dimension = getElementDimension(thePlayer) local r = getPedRotation(thePlayer) setCameraInterior(targetPlayer, interior) -- Maths calculations to stop the target being stuck in the player x = x + ( ( math.cos ( math.rad ( r ) ) ) * 2 ) y = y + ( ( math.sin ( math.rad ( r ) ) ) * 2 ) if (isPedInVehicle(targetPlayer)) then local veh = getPedOccupiedVehicle(targetPlayer) setElementAngularVelocity(veh, 0, 0, 0) setElementPosition(veh, x, y, z + 1) setTimer(setElementAngularVelocity, 50, 20, veh, 0, 0, 0) setElementInterior(veh, interior) setElementDimension(veh, dimension) else setElementPosition(targetPlayer, x, y, z) setElementInterior(targetPlayer, interior) setElementDimension(targetPlayer, dimension) end outputChatBox(" You have teleported player " .. targetPlayerName .. " to you.", thePlayer) triggerEvent ( "frames:loadInteriorTextures", targetPlayer, dimension ) -- Adams if exports.integration:isPlayerSupporter(thePlayer) then outputChatBox(" Supporter " .. username .. " has teleported you to them. ", targetPlayer) else local hiddenAdmin = getElementData(thePlayer, "hiddenadmin") if hiddenAdmin == 0 then outputChatBox(" Admin " .. username .. " has teleported you to them. ", targetPlayer) end end end end end end end addCommandHandler("gethere", getPlayer, false, false) What is this? Did you copy the script? But I said it must not be exports.integration! Link to comment
alex17" Posted March 15, 2023 Share Posted March 15, 2023 3 minutes ago, WRIST said: What is this? Did you copy the script? But I said it must not be exports.integration! change the restriction of the command to Acl Admin, use that as an example and change the rest is not complicated Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now