Jump to content

[ayuda]puerta privada


Atouk

Recommended Posts

Hola quería preguntar como se podría hacer una puerta que se abra con un comando y se cierre co el mismo, pero si ejecutas ese comando y no sos del team te sale un mensaje diciendo que este comando se utiliza solo para los miembros de ese team...

Espero respuestas, gracias..

Link to comment

Asi esta bien???

puerta = createObject ( 980, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
  
function abrir ( thePlayer, seat, jacked ) 
    if ( source == puerta  ) and ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
      outputChatBox("Solo los del clan ZS~Gamers pueden abrir esta puerta.", thePlayer, 255,90,0, true) 
    isObjectInACLGroup ( puerta, "Console" ) 
    isObjectInACLGroup ( puerta, "Admin" ) 
    isObjectInACLGroup ( puerta, "SuperModerator" ) 
    isObjectInACLGroup ( puerta, "Moderator" ) 
    moveObject ( puerta, 1500, -3131.3000488281, 467.5, 3.5999999046326 ) 
    end 
end 
addCommandHandler  (  "test1" , abrir ) 
  
function cerrar ( thePlayer, seat, jacked ) 
    if ( source == puerta  ) and ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
    moveObject ( puerta, 3000, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
    end 
end 
addCommandHandler  (  "test2" , abrir ) 

Link to comment

Lo de los acl esta mal tenes que usar un for-loop

    puerta = createObject ( 980, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
      
    function abrir ( thePlayer, seat, jacked ) -- seat, jacked WTF? 
    local playerAcc = getPlayerAccount ( source ) 
        if ( source == puerta  ) and ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
          outputChatBox("Solo los del clan ZS~Gamers pueden abrir esta puerta.", thePlayer, 255,90,0, true) 
            for _, group in ipairs ( { "Admin", "Moderator", "SuperModerator", "Console" } ) do 
                if isObjectInACLGroup ( "user.".. getAccountName ( playerAcc ), aclGetGroup ( group ) ) then 
        moveObject ( puerta, 1500, -3131.3000488281, 467.5, 3.5999999046326 ) 
        end 
    end 
end 
    addCommandHandler  (  "test1" , abrir ) 
      
    function cerrar ( thePlayer, seat, jacked ) -- quita los argumentos de seat jacked 
        if ( source == puerta  ) and ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
        moveObject ( puerta, 3000, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
        end 
    end 
    addCommandHandler  (  "test2" , abrir ) 

despues nose lo demas si esta bien jaja :P

Link to comment

Emm, tengo un error en el debug me dice..

WARNING: puerta/entradaZSG.lua:4: Bad argument @ "getPlayerAccount" [Expected element at argument 1, got string "test1"]

el script:

puerta = createObject ( 980, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
      
    function abrir ( thePlayer, source ) -- seat, jacked WTF? 
    local playerAcc = getPlayerAccount ( source ) 
        if ( source == puerta  ) and ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
          outputChatBox("Solo los del clan ZS~Gamers pueden abrir esta puerta.", thePlayer, 255,90,0, true) 
            for _, group in ipairs ( { "Admin", "Moderator", "SuperModerator", "Console" } ) do 
                if isObjectInACLGroup ( "user.".. getAccountName ( playerAcc ), aclGetGroup ( group ) ) then 
        moveObject ( puerta, 1500, -3131.3000488281, 467.5, 3.5999999046326 ) 
        end 
    end 
end 
end 
    addCommandHandler  (  "test1" , abrir ) 
      
    function abrir1 ( thePlayer ) -- quita los argumentos de seat jacked 
        if ( source == puerta  ) and ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
        moveObject ( puerta, 3000, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
        end 
    end 
    addCommandHandler  (  "test2" , abrir1 ) 

Link to comment

El segundo parámetro de addCommandHandler es el comando que se uso, no el jugador:

puerta = createObject ( 980, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
      
    function abrir ( thePlayer ) -- seat, jacked WTF? 
    local playerAcc = getPlayerAccount ( thePlayer ) 
        if ( source == puerta  ) and ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
          outputChatBox("Solo los del clan ZS~Gamers pueden abrir esta puerta.", thePlayer, 255,90,0, true) 
            for _, group in ipairs ( { "Admin", "Moderator", "SuperModerator", "Console" } ) do 
                if isObjectInACLGroup ( "user.".. getAccountName ( playerAcc ), aclGetGroup ( group ) ) then 
        moveObject ( puerta, 1500, -3131.3000488281, 467.5, 3.5999999046326 ) 
        end 
    end 
end 
end 
    addCommandHandler  (  "test1" , abrir ) 
      
    function abrir1 ( thePlayer ) -- quita los argumentos de seat jacked 
        if ( source == puerta  ) and ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
        moveObject ( puerta, 3000, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
        end 
    end 
    addCommandHandler  (  "test2" , abrir1 ) 

No mire bien el código pruebalo.

PD: 'addCommandHandler' no tiene 'source'.

Link to comment

Intenta:

puerta = createObject ( 980, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
      
    function abrir ( thePlayer  ) -- seat, jacked WTF? 
    local playerAcc = getPlayerAccount ( thePlayer ) 
        if ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
          outputChatBox("Solo los del clan ZS~Gamers pueden abrir esta puerta.", thePlayer, 255,90,0, true) 
            for _, group in ipairs ( { "Admin", "Moderator", "SuperModerator", "Console" } ) do 
                if isObjectInACLGroup ( "user.".. getAccountName ( playerAcc ), aclGetGroup ( group ) ) then 
        moveObject ( puerta, 1500, -3131.3000488281, 467.5, 3.5999999046326 ) 
        end 
    end 
end 
end 
    addCommandHandler  (  "test1" , abrir ) 
      
    function abrir1 ( thePlayer ) -- quita los argumentos de seat jacked 
        if ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
        moveObject ( puerta, 3000, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
        end 
    end 
    addCommandHandler  (  "test2" , abrir1 ) 

No estoy muy seguro de ese loop.

Edited by Guest
Link to comment

Duda aparte, si tu pregunta fue:

Hola quería preguntar como se podría hacer una puerta que se abra con un comando y se cierre co el mismo, pero si ejecutas ese comando y no sos del team te sale un mensaje diciendo que este comando se utiliza solo para los miembros de ese team...

Espero respuestas, gracias..

Por que metiste el ACL?

Esto esta sin lo del ACL, ya que no estoy seguro de ese for-loop.

puerta = createObject ( 980, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
      
    function abrir ( thePlayer  ) -- seat, jacked WTF? 
        if ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
          outputChatBox("Solo los del clan ZS~Gamers pueden abrir esta puerta.", thePlayer, 255,90,0, true) 
         else 
        moveObject ( puerta, 1500, -3131.3000488281, 467.5, 3.5999999046326 ) 
        end 
end 
    addCommandHandler  (  "test1" , abrir ) 
      
    function abrir1 ( thePlayer ) -- quita los argumentos de seat jacked 
        if ( getPlayerTeam(thePlayer) and getTeamName(getPlayerTeam(thePlayer)) ~= "ZS~Gamers" ) then 
        moveObject ( puerta, 3000, -3131.3000488281, 467.5, 7.5999999046326, 0, 0, 270.99975585938 ) 
        end 
    end 
    addCommandHandler  (  "test2" , abrir1 ) 

Link to comment
  • Recently Browsing   0 members

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