Jump to content

Modificar Resource


HolaRocola

Recommended Posts

Hola amigos, me descargué un script de la comunidad que se trata de que cuando un jugador le da click o control se activa el nitro, pero quiero saber como agregarlo para que sea solamente para admin?

Hice esto pero nose si esta bien:

g_Me = getLocalPlayer( ); 
g_Root = getRootElement( ); 
g_ResRoot = getResourceRootElement( ); 
  
function toggleNOS( key, state ) 
    local accountName = getAccountName(getPlayerAccount(g_Me)); 
    if isObjectInACLGroup("user."..accountName, aclGetGroup("Admin")) then 
        local veh = getPedOccupiedVehicle( g_Me ); 
        if veh and not isEditingPosition then 
            if state == "up" then 
                removeVehicleUpgrade( veh, 1010 ); 
                setControlState( "vehicle_fire", false ); 
            else 
                addVehicleUpgrade( veh, 1010 ); 
            end 
        end 
    end 
end 
  
addEventHandler( "onClientResourceStart", g_ResRoot, 
    function( ) 
        for index, g_Me in pairs(getElementsByType("player")) do 
        bindKey(g_Me, "vehicle_fire", "both", toggleNOS ); 
        bindKey(g_Me, "vehicle_secondary_fire", "both", toggleNOS ); 
    end 
    end 
) 

Link to comment

isObjectInACLGroup solo funciona en serverside

function resourceStart () 
    for k, p in ipairs (getElementsByType("player")) do 
        bindKey (p, "lalt", "down", toggleNos, p) 
    end 
end 
addEventHandler ("onResourceStart", resourceRoot, resourceStart) 
  
function playerJoins () 
    bindKey (source, "lalt", "down", toggleNos, source) 
end 
addEventHandler("onPlayerJoin", root, playerJoins) 
  
function toggleNos (thePlayer) 
    local accName = getAccountName (getPlayerAccount (thePlayer)) 
    if isObjectInACLGroup ("user."..accName, aclGetGroup ("Admin"))  then 
        triggerClientEvent (thePlayer, "toggleNos", thePlayer) 
    end 
end 

g_Me = getLocalPlayer( ); 
g_Root = getRootElement( ); 
g_ResRoot = getResourceRootElement( ); 
  
function toggleNOS( key, state ) 
    local accountName = getAccountName(getPlayerAccount(g_Me)); 
    if isObjectInACLGroup("user."..accountName, aclGetGroup("Admin")) then 
        local veh = getPedOccupiedVehicle( g_Me ); 
        if veh and not isEditingPosition then 
            if state == "up" then 
                removeVehicleUpgrade( veh, 1010 ); 
                setControlState( "vehicle_fire", false ); 
            else 
                addVehicleUpgrade( veh, 1010 ); 
            end 
        end 
    end 
end 
addEvent ("toggleNOS", true) 
addEventHandler ("toggleNOS", root, toggleNOS) 

Mira si eso te funciona, el serverside lo saque de uno de mis primeros scripts XDD

Edited by Guest
Link to comment

Serverside...

g_ResRoot = getResourceRootElement( getThisResource() ); 
  
function toggleNOS( thePlayer, key, state ) 
    if isPlayerIsAdmin( thePlayer ) then 
        local veh = getPedOccupiedVehicle( thePlayer ); 
        if veh then 
            if state == "up" then 
                removeVehicleUpgrade( veh, 1010 ); 
            else 
                addVehicleUpgrade( veh, 1010 ); 
            end 
        end 
    end 
end 
  
function isPlayerIsAdmin( player ) 
    if isObjectInACLGroup("user."..getAccountName(getPlayerAccount( player )), aclGetGroup("Admin")) then 
         return true 
    end 
    return false 
end 
  
addEventHandler( "onResourceStart", g_ResRoot, 
    function( ) 
        for index, g_Me in ipairs(getElementsByType("player")) do 
        bindKey(g_Me, "vehicle_fire", "both", toggleNOS ); 
        bindKey(g_Me, "vehicle_secondary_fire", "both", toggleNOS ); 
    end 
    end 
) 
  
addEventHandler( "onPlayerJoin", root, 
    function( ) 
        bindKey(source, "vehicle_fire", "both", toggleNOS ); 
        bindKey(source, "vehicle_secondary_fire", "both", toggleNOS ); 
    end 
) 

Link to comment

Yo lo que tenia para reconocer en clientSide los admins era esto

--Esto es server side 
for k,v in ipairs(getElementsByType("player")) do if hasObjectPermissionTo(v, "command.ban") then setElementData(v, "admin", true) end end 

Luego en el client Side usaba el

--Esto es client side 
getElementData(localPlayer, "admin") 

Si era admin, daba true, sino, false

Link to comment
  • Recently Browsing   0 members

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