castaño Posted January 5, 2014 Share Posted January 5, 2014 hola nesito saber como pasar un argumento de un comando a una función, tengo el siguiente cpdigo: function moneyAllPlayer(source, amount) local account = getAccountName(getPlayerAccount(source)) local playerName = getPlayerName(source) local players = getElementsByType("player") if isObjectInACLGroup("user." .. account, aclGetGroup("Admin")) then for k, v in ipairs(players) do givePlayerMoney(v, amount) outputChatBox("#00ff00[iNFO: ] #ffff00Admin#00ff00 ["..playerName.."] #ffff00 Has give to all players #00ff00["..amount.."]", getRootElement(), 255, 0, 0, true) end else outputChatBox("#00ff00[iNFO] #ffff00You aren't admin", source, 255, 0, 0, true) end end addCommandHandler("giveallmoney", moneyAllPlayer, amount) loque sucede aca es el monto de dinero que quiero dar no me lo recibe en la función por ejemplo hago esto: /giveallmoney 100 , pero los 100 no pasan a la función, me sale que la variable amount es nula. Link to comment
Castillo Posted January 5, 2014 Share Posted January 5, 2014 Por defecto, addCommandHandler server-side tiene 2 argumentos: player y commandName, osea que tu funcion tiene que ser asi: function moneyAllPlayer ( source, command, amount ) Link to comment
castaño Posted January 5, 2014 Author Share Posted January 5, 2014 Por defecto, addCommandHandler server-side tiene 2 argumentos: player y commandName, osea que tu funcion tiene que ser asi: function moneyAllPlayer ( source, command, amount ) muchas gracias eso soluciono el problema, pero tengo una ultima duda si tengo mas argumentos por ejemplo / giveallmoney 100 500, en la función es donde se agregan mas parámetros? osea amount seria para 100 y declaria otra para recibir los 500, como para quedar asi: function moneyAllPlayer ( source, command, amount, amount2 ) disculpa por la pregunta pero no estoy relacionado mucho con la programación en lua si no en Java. Link to comment
Recommended Posts