Dokitoh Posted February 29, 2016 Share Posted February 29, 2016 Hola buenas tardes, queria saber si existe la posibilidad de crear automaticamente una tabla con los nombres de los jugadores y en esa misma tabla que me genera, que se añada un elemento que acompaña a esos jugadores. He estado buscando la manera, y me he encontrado con la función getElementsByType, pero claro esto solo me copia ciertos elementos entre ellos "player" que sirviria para lo primero que he explicado. Asique no se ni por donde agarrarlo. ¿Alguien sabe algo? Saludos. EDIT: Vamos a imaginar, que yo lo que quiero es hacer un script de modo que cuando yo escriba un comando p.ej: "mvp", salga en el chat, que jugador es el que más zombies ha matado. function mostvalueplayer () local players = getElementsByType ("player") local playersm = getElementsByType ("zombieskilled", below) for i,thePlayer in ipairs (players) do if (getElementData(thePlayer, "zombieskilled")+1) > (tonumber (playersm)) then outputChatBox (getPlayerName (thePlayer).." is the most value player") else outputChatBox ("NONE") end end end addCommandHandler ( "mvp", mostvalueplayer ) Eso me da error, ya que no se crea la tabla de elementos de "zombieskilled", de modo que no puede comparar. Hay alguna forma, de crear eficientemente, esa tabla de datos que necesito para terminar el script?. Gracias de nuevo. Link to comment
Tomas Posted February 29, 2016 Share Posted February 29, 2016 Intenta con esto: local max = -math.huge local maxv = nil for k, v in ipairs (getElementsByType("players")) do if ( getElementData(v, "zombieskilled") > max ) then maxv = v max = getElementData(v, "zombieskilled") end end if ( isElement(maxv) ) then outputChatBox(getPlayerName(maxv)) end Link to comment
Dokitoh Posted February 29, 2016 Author Share Posted February 29, 2016 Intenta con esto: local max = -math.huge local maxv = nil for k, v in ipairs (getElementsByType("players")) do if ( getElementData(v, "zombieskilled") > max ) then maxv = v max = getElementData(v, "zombieskilled") end end if ( isElement(maxv) ) then outputChatBox(getPlayerName(maxv)) end Con eso no sale absolutamente nada, pero con esto almenos sale algo, lo que no se es si la información es correcta.(hasta que no llegue mi compañero no lo puedo probar). function mostvalueplayer () local players = getElementsByType ("player") local max = -math.huge local maxv = nil for i,thePlayer in ipairs (players) do if (getElementData(thePlayer, "zombieskilled") > max) then maxv = thePlayer max = getElementData(thePlayer, "zombieskilled") else outputChatBox ("NONE") end end if (isElement(maxv)) then outputChatBox (getPlayerName (maxv).." is the most value player", source) end end addCommandHandler ( "mvp", mostvalueplayer ) Link to comment
Dokitoh Posted March 1, 2016 Author Share Posted March 1, 2016 Tomas, gracias por la información, funciona a la perfección. Saludos crack. Link to comment
Recommended Posts