Jump to content

Como funcionaria esta tabla?


Serginix

Recommended Posts

Posted

Hola!, estaba jugando y experimentando con tablas, aver q me salia... y quize hacer q al aprentar un boton en una GUI creara un marker y un blip... y con otro boton los eliminara, la cosa esq, apreto varias veces el boton, por lo tanto creo varios markers y blips, pero cuando le doy el boton de eliminarlos, solo elimina 1 de todos los q cree, y no pasa nada mas...

Se, por eso el titilo, q los elementos se tienen q meter en una tabla, y luego pasar a ser eliminados... la cosa esq no se bien como... en mi intento hize esto (realmente, normalmente tengo problemas con tablas xD) :

este seria el server side (no puse los trigeos, no son nesesarios, ya q no envia ninguna informacion, exepto el local player)

blip = {} 
marker = {} 
function poner () 
local x, y, z = getElementPosition (source) 
outputChatBox ("Marker y Blip Puestos", root, 255, 0, 0) 
blip[1] = createBlip (x, y, z, 49) 
marker[1] = createMarker (x, y, z, "checkpoint", 2, 135, 191, 255, 100) 
end 
  
function quitar () 
outputChatBox ("Marker y Blip Removido.", root, 255, 0, 0) 
destroyElement (eventblip[1]) 
destroyElement (eventmarker[1]) 
end 
  

n-560x95_FFFFFF_FFFFFF_000000_000000.png

"Proyecto SX" Owner :P

Posted

No lo he provado pero puedes hacer esto para irlos agregando y quitanto

blip = {} 
marker = {} 
function poner () 
local x, y, z = getElementPosition (source) 
outputChatBox ("Marker y Blip Puestos", root, 255, 0, 0) 
local maxBlip = table.maxn (blip) --Con esta funcion obtienes el indice maximo en una tabla 
local maxMarker = table.maxn(marker) 
blip[maxBlip + 1] = createBlip (x, y, z, 49) 
marker[maxMarker + 1] = createMarker (x, y, z, "checkpoint", 2, 135, 191, 255, 100) 
end 
  
function quitar () 
outputChatBox ("Marker y Blip Removido.", root, 255, 0, 0) 
local maxBlip2 = table.maxn (blip)  
local maxMarker2 = table.maxn(marker) 
destroyElement (blip[maxBlip2]) 
destroyElement (marker[maxMarker2]) 
end 
  

Hay esta mas o menos para que te guies ahora no tengo mi pc para probarlo asi que si te sale algun error lo pones por aca.

PD: si quieres ver mas funciones para las tablas clickea aca: http://www.lua.org/manual/5.1/es/manual.html#5.5

Posted
blip = {} 
marker = {} 
  
function poner () 
    local x, y, z = getElementPosition (source) 
    outputChatBox ("Marker y Blip Puestos", root, 255, 0, 0) 
    local maxBlip = #blip -- con esto contas los contenidos de la tabla. 
    local maxMarker = #marker 
    blip[maxBlip + 1] = createBlip (x, y, z, 49) 
    marker[maxMarker + 1] = createMarker (x, y, z, "checkpoint", 2, 135, 191, 255, 100) 
end 
      
function quitar () 
    outputChatBox ("Marker y Blip Removido.", root, 255, 0, 0) 
    for index, mkr in pairs(marker) do 
         destroyElement(mkr) 
    end 
    for index, blp in pairs(blip) do 
          destroyElement(blp) 
    end 
end 

Para destruir todos los markers Y blips de la tabla tenes que hacer un loop.

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

Haaa si como pude olvidar eso xD...

tambien lo puedes hacer en la funcion de quitar para que desaparezcan de a uno en uno segun como los fuistes poniendo, eso estaria genial en un resource de seguir pistas o algo asi

Posted

:o

Gracias a ambos, tanto por el script, la ayuda, y el enlace :)

suerte! :D... y si Mario intentare lo qme dijiste xD, ya q esa era la idea...

n-560x95_FFFFFF_FFFFFF_000000_000000.png

"Proyecto SX" Owner :P

  • Recently Browsing   0 members

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