lLinux Posted July 26, 2014 Share Posted July 26, 2014 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 Link to comment
Castillo Posted July 26, 2014 Share Posted July 26, 2014 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". Link to comment
lLinux Posted July 27, 2014 Author Share Posted July 27, 2014 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 Link to comment
Castillo Posted July 27, 2014 Share Posted July 27, 2014 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. Link to comment
lLinux Posted July 27, 2014 Author Share Posted July 27, 2014 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? Link to comment
Castillo Posted July 27, 2014 Share Posted July 27, 2014 Podes guardar el nombre real usando guiGridListSetItemData, y luego usar guiGridListGetItemData en lugar de guiGridListGetItemText para obtener el jugador. Link to comment
lLinux Posted July 29, 2014 Author Share Posted July 29, 2014 Podes guardar el nombre real usando guiGridListSetItemData, y luego usar guiGridListGetItemData en lugar de guiGridListGetItemText para obtener el jugador. Ammm... muchas gracias. lo intentare. Link to comment
Recommended Posts