Jump to content

Commando por acl


eldelahoz

Recommended Posts

Posted

Hola es lo siguiente es que tengo un gui sacado de la comunidad es un panel pero quiero que lo use solamente los admins por asi decirlo tengo que poner

function startTeleportWindow() 
        local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) 
        if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then 
    createTeleportWindow() 
    guiSetVisible(window, true) 
    showCursor(true) 
    guiSetInputEnabled(true) 
       end 
end 
  
addCommandHandler("teleport", startTeleportWindow) 
  

pero no meda no me ejecuta que tengo mal?

Posted

Algo asi?

function startTeleportWindow() 
    triggerServerEvent ( "submitTeleport", thePlayer ) 
    local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) 
    if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then 
    createTeleportWindow() 
    guiSetVisible(window, true) 
    showCursor(true) 
    guiSetInputEnabled(true) 
    end 
end 
  

Posted

No, intenta esto

Client

function startTeleportWindow() 
    triggerServerEvent ( "submitTeleport", getRootElement(), getLocalPlayer() ) 
    createTeleportWindow() 
    guiSetVisible(window, true) 
    showCursor(true) 
    guiSetInputEnabled(true) 
    end 

Server

addEvent("submitTeleport", true) 
function private(thePlayer) 
    local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) 
    if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then 
    end 
end 
addEventHandler("submitTeleport", root, private) 

Posted

Server:

function showGui() 
    local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) 
    if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then 
     triggerClientEvent("startTeleportWindow", thePlayer) 
 end 
end 
addCommandHandler("teleport", showGui) 

Client:

function startTele() 
    createTeleportWindow() 
    guiSetVisible(window, true) 
    showCursor(true) 
    guiSetInputEnabled(true) 
addEvent("startTeleportWindow", true) 
addEventHandler("startTeleportWindow", root, startTele) 

Posted
Server:
function showGui() 
    local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) 
    if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then 
     triggerClientEvent("startTeleportWindow", thePlayer) 
 end 
end 
addCommandHandler("teleport", showGui) 

Client:

function startTele() 
    createTeleportWindow() 
    guiSetVisible(window, true) 
    showCursor(true) 
    guiSetInputEnabled(true) 
addEvent("startTeleportWindow", true) 
addEventHandler("startTeleportWindow", root, startTele) 

Olvidaste definir 'thePlayer'.

Posted

Este es el script completo no ce por que algunas cosas no van en el server y en el client

Client

function createTeleportWindow() 
    window = guiCreateWindow(0.3852,0.2075,0.2344,0.2688,"P-Teleport",true) 
    guiSetAlpha(window,0.80000001192093) 
    editX = guiCreateEdit(128,31,161,27,"",false,window) 
    guiSetAlpha(editX,1) 
    editY = guiCreateEdit(128,68,161,27,"",false,window) 
    guiSetAlpha(editY,1) 
    editZ = guiCreateEdit(128,105,161,27,"",false,window) 
    guiSetAlpha(editZ,1) 
    editInterior = guiCreateEdit(128,142,161,27,"",false,window) 
    guiSetAlpha(editInterior,1) 
    buttonTeleport = guiCreateButton(12,179,277,24,"Teleport me!",false,window) 
    guiSetAlpha(buttonTeleport,1) 
    labelX = guiCreateLabel(12,37,106,15,"Insert X",false,window) 
    guiSetAlpha(labelX,1) 
    guiLabelSetColor(labelX,255,255,255) 
    guiLabelSetVerticalAlign(labelX,"top") 
    guiLabelSetHorizontalAlign(labelX,"right",false) 
    labelY = guiCreateLabel(12,75,106,15,"Insert Y",false,window) 
    guiSetAlpha(labelY,1) 
    guiLabelSetColor(labelY,255,255,255) 
    guiLabelSetVerticalAlign(labelY,"top") 
    guiLabelSetHorizontalAlign(labelY,"right",false) 
    labelZ = guiCreateLabel(12,112,106,15,"Insert Z",false,window) 
    guiSetAlpha(labelZ,1) 
    guiLabelSetColor(labelZ,255,255,255) 
    guiLabelSetVerticalAlign(labelZ,"top") 
    guiLabelSetHorizontalAlign(labelZ,"right",false) 
    labelInterior = guiCreateLabel(12,148,106,15,"Insert Interior ID",false,window) 
    guiSetAlpha(labelInterior,1) 
    guiLabelSetColor(labelInterior,255,255,255) 
    guiLabelSetVerticalAlign(labelInterior,"top") 
    guiLabelSetHorizontalAlign(labelInterior,"right",false) 
     
    guiSetVisible(window, false) 
     
    addEventHandler("onClientGUIClick", buttonTeleport, clientSubmitTeleport, false) 
end 
  
function startTeleportWindow() 
    createTeleportWindow() 
    guiSetVisible(window, true) 
    showCursor(true) 
    guiSetInputEnabled(true) 
end 
  
function clientSubmitTeleport(button,state) 
    if button == "left" and state == "up" then 
        local teleX = guiGetText(editX) 
        local teleY = guiGetText(editY) 
        local teleZ = guiGetText(editZ) 
        local teleI = guiGetText(editInterior) 
  
        localPlayer = getLocalPlayer() 
        setElementInterior(localPlayer, teleI, teleX, teleY, teleZ) 
         
        guiSetInputEnabled(false) 
        guiSetVisible(window, false) 
        showCursor(false) 
    end 
end 
  
addCommandHandler("teleport", startTeleportWindow) 

Server

function teleportHandler(teleX, teleY, teleZ, teleI) 
    localPlayer = getLocalPlayer() 
    setElementInterior(localPlayer, teleI, teleX, teleY, teleZ) 
end 
  
addEvent("submitTeleport", true) 
addEventHandler("submitTeleport", root, teleportHandler) 

Posted

Client:

  
function startTeleportWindow() 
    createTeleportWindow() 
    guiSetVisible(window, true) 
    showCursor(true) 
    guiSetInputEnabled(true) 
end 
addEvent("mostrarVentana",true)  
addEventHandler("mostrarVentana",root,startTeleportWindow) 
  

Server:

addCommandHandler("teleport",function() 
local cuenta = getAccountName ( getPlayerAccount ( thePlayer ) ) 
if isObjectInACLGroup ("user."..cuenta, aclGetGroup ( "Admin" ) ) then 
triggerClientEvent(thePlayer,"mostrarVentana",thePlayer) 
else 
outputChatBox("No tienes permiso para usar este comando",thePlayer,255,0,0,false) 
end end) 
  

  • Other Languages Moderators
Posted

Este es el resource original, editalo a tu gusto.

CLIENT:

function createTeleportWindow() 
    window = guiCreateWindow(0.3852,0.2075,0.2344,0.2688,"P-Teleport",true) 
    guiSetAlpha(window,0.80000001192093) 
    editX = guiCreateEdit(128,31,161,27,"",false,window) 
    guiSetAlpha(editX,1) 
    editY = guiCreateEdit(128,68,161,27,"",false,window) 
    guiSetAlpha(editY,1) 
    editZ = guiCreateEdit(128,105,161,27,"",false,window) 
    guiSetAlpha(editZ,1) 
    editInterior = guiCreateEdit(128,142,161,27,"",false,window) 
    guiSetAlpha(editInterior,1) 
    buttonTeleport = guiCreateButton(12,179,277,24,"Teleport me!",false,window) 
    guiSetAlpha(buttonTeleport,1) 
    labelX = guiCreateLabel(12,37,106,15,"Insert X",false,window) 
    guiSetAlpha(labelX,1) 
    guiLabelSetColor(labelX,255,255,255) 
    guiLabelSetVerticalAlign(labelX,"top") 
    guiLabelSetHorizontalAlign(labelX,"right",false) 
    labelY = guiCreateLabel(12,75,106,15,"Insert Y",false,window) 
    guiSetAlpha(labelY,1) 
    guiLabelSetColor(labelY,255,255,255) 
    guiLabelSetVerticalAlign(labelY,"top") 
    guiLabelSetHorizontalAlign(labelY,"right",false) 
    labelZ = guiCreateLabel(12,112,106,15,"Insert Z",false,window) 
    guiSetAlpha(labelZ,1) 
    guiLabelSetColor(labelZ,255,255,255) 
    guiLabelSetVerticalAlign(labelZ,"top") 
    guiLabelSetHorizontalAlign(labelZ,"right",false) 
    labelInterior = guiCreateLabel(12,148,106,15,"Insert Interior ID",false,window) 
    guiSetAlpha(labelInterior,1) 
    guiLabelSetColor(labelInterior,255,255,255) 
    guiLabelSetVerticalAlign(labelInterior,"top") 
    guiLabelSetHorizontalAlign(labelInterior,"right",false) 
     
    guiSetVisible(window, false) 
     
    addEventHandler("onClientGUIClick", buttonTeleport, clientSubmitTeleport, false) 
end 
  
function startTeleportWindow() 
    createTeleportWindow() 
    guiSetVisible(window, true) 
    showCursor(true) 
    guiSetInputEnabled(true) 
end 
addEvent("onAdminTeleport", true) 
addEventHandler("onAdminTeleport", getRootElement(), startTeleportWindow) 
  
function clientSubmitTeleport(button,state) 
    if button == "left" and state == "up" then 
        local teleX = guiGetText(editX) 
        local teleY = guiGetText(editY) 
        local teleZ = guiGetText(editZ) 
        local teleI = guiGetText(editInterior) 
  
        localPlayer = getLocalPlayer() 
        setElementInterior(localPlayer, teleI, teleX, teleY, teleZ) 
         
        guiSetInputEnabled(false) 
        guiSetVisible(window, false) 
        showCursor(false) 
    end 
end 

SERVER:

function checkAdminTeleport (thePlayer) 
    local accName = getAccountName ( getPlayerAccount ( thePlayer ) )  
    if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then 
        triggerClientEvent(thePlayer, "onAdminTeleport", getRootElement()) 
    else 
        outputChatBox("Este comando es solo para Administradores.",player,255,12,15) 
    end 
end 
addCommandHandler("teleport", checkAdminTeleport ) 

EDIT: me confundi en el evento xD!. ya lo arregle.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...