Jump to content

Añadir objeto/player a Acl group?


lLinux

Recommended Posts

Posted

Hola a todos bueno lo que quiero hacer es un panel para dar rangos... lo que pasa es que no obtiene la cuenta de player seleccionado.

El client: Donde precionan el boton del rango y obtiene los datos y envia al server:

addEventHandler("onClientGUIClick", guiRoot, 
function() 
    if source == b_mod then 
        local row, column = guiGridListGetSelectedItem(lista) 
        if row == -1 then return end 
        local playerName = guiGridListGetItemText(lista,row,column) 
        local player = getPlayerFromName(playerName) 
        if not playerName then 
            guiGridListRemoveRow(row) 
            return 
        end 
            triggerServerEvent("setRankMOD", getLocalPlayer(),playerName) 
        end 
    end) 

El server: donde obtiene la cuenta del player y el nombre:

function darRangoMOD(playername) 
    local player = getPlayerFromName(playername) 
    local account = getPlayerAccount(player) 
    if account then 
        aclGroupAddObject (aclGetGroup("Moderator"), "user."..account)  
        outputChatBox ("Account '"..account.."' succesfully added to the admin group", source) 
    end 
end 
addEvent("setRankMOD",true) 
addEventHandler("setRankMOD", getRootElement(), darRangoMOD) 

Dice algo sobre el argumento 1 de getPlayerAccount

Skype: HackerlLinux

¿Quieres aprender scripting para MTA? - http://www.scriptingmtasa.wordpress.com

"La disciplina es la clave del exito"

Posted

Por lo que parece, el jugador no existe.

if not playerName then 
            guiGridListRemoveRow(row) 
            return 
        end 

Eso no esta del todo bien, cambia "if not playerName then" a "if not player then".

San Andreas Utopia RPG (SAUR) Owner & Developer.

560x95_FFFFFF_FF9900_000000_000000.png

Education is the most powerful weapon which you can use to change the world.

Posted
Por lo que parece, el jugador no existe.
if not playerName then 
            guiGridListRemoveRow(row) 
            return 
        end 

Eso no esta del todo bien, cambia "if not playerName then" a "if not player then".

Ya lo solucione... no sé porque pero era lo de quitar los codigos Hex HTML de los nick.. se lo quite y funciono, pero no entiendo bien eso.

hablo del: string.gsub

Skype: HackerlLinux

¿Quieres aprender scripting para MTA? - http://www.scriptingmtasa.wordpress.com

"La disciplina es la clave del exito"

Posted

Ah, le quitaste los codigos de color al agregarlos a la grid list, por eso es que getPlayerFromName devolvia false, ya que el jugador no existia.

San Andreas Utopia RPG (SAUR) Owner & Developer.

560x95_FFFFFF_FF9900_000000_000000.png

Education is the most powerful weapon which you can use to change the world.

Posted
Ah, le quitaste los codigos de color al agregarlos a la grid list, por eso es que getPlayerFromName devolvia false, ya que el jugador no existia.

Yo le quite el string.gsub... y funciono... pero aparecen los codigos, si se lo pongo deja de funcionar que pudo hacer?

Skype: HackerlLinux

¿Quieres aprender scripting para MTA? - http://www.scriptingmtasa.wordpress.com

"La disciplina es la clave del exito"

Posted

Podes guardar el nombre real usando guiGridListSetItemData, y luego usar guiGridListGetItemData en lugar de guiGridListGetItemText para obtener el jugador.

San Andreas Utopia RPG (SAUR) Owner & Developer.

560x95_FFFFFF_FF9900_000000_000000.png

Education is the most powerful weapon which you can use to change the world.

Posted
Podes guardar el nombre real usando guiGridListSetItemData, y luego usar guiGridListGetItemData en lugar de guiGridListGetItemText para obtener el jugador.

Ammm... muchas gracias. lo intentare.

Skype: HackerlLinux

¿Quieres aprender scripting para MTA? - http://www.scriptingmtasa.wordpress.com

"La disciplina es la clave del exito"

  • Recently Browsing   0 members

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