Pesquisar na Comunidade
Mostrando resultados para as tags ''string''.
Encontrado 2 registros
-
Bem, galera, estou com dúvida sobre strings, queria saber como usa-las, não string tipo doPlayerSendCancel(cid, 'Message here') '-', quero saber como usar por exemplo, string.explode, string.gsub, string.match e etc, não achei nenhum tutorial no fórum, se alguem poder me ajudar, ficarei grato.
-
bom essa duas funções são bem simples de entder o que elas fazem . tabletostring comverte tabelas em strings iguais a elas(mas desordenadas pela função pairs) loadtablestring transforma uma string de table em uma table comun antes que venham pergunta ou criticar leiam as respostas abaixo random noob:lord, ja n existe a função table.concat?pra que essa? lordbug99: a funçao concat n ser pra isso,ela apenas pegas os elemtos de uma tabela e os junta numa string separados pelo sep que vc escolher ela excui os index, deixa sem as chaves(pois n fas parte da função dela),e se um dos elementos dessa tabela for uma tabela ela retorna um erro,já minha função tranforma em uma replica da tabela(com index,aceita tabelas dentro de tabelas). random noob2:mas n é so usar tosting? lordbug99:n se vc fiser isso ele vai so comverter a alocação da tabela em string(algo tipo 3xx2547) aki vão as funções(nessesario copiar tudo),assim já ia esqucendo de fala tem mais duas funçoes de bonus(istable e isstring) obs:obrigatoriamente tem que copiar as funções istring e istable(elas saõ usadas na tabletostring) para adiconalas basta ir a pasta lib e em qualque um dos arquivos, apos o final adicionalas(de preferencia adicioneas no arquivo 050-functions para ficar organizado) function tabletostring(tab) st = "{" k = 0 for x,y in pairs(tab) do if istable(x) then st = st.."["..tabletostring(x).."] = " k =1 elseif isstring(x) then st = st.."['"..x.."'] = " k =1 else st = st.."["..x.."] = " k =1 end if istable(y) then st = st..""..tabletostring(y).."," k =1 elseif isstring(y) then st = st.."'"..y .."'," k =1 else st = st..""..y.."," k =1 end end if k == 1 then st = st:sub(1,-2) end st = st.."}" return st end function istable(t) if type(t) == "table" then return true else return false end end function isstring(t) if type(t) == "string" then return true else return false end end function loadstringtable(str) if isstring(str) then t = loadstring('return'..str) tab = t() return tab end return false end table.tostring = tabletostring string.loadtable = loadstringtable exexemplo de uso(bem simples) function onSay(cid,words,param) if words:lower() == "savepos" then pos = getCreaturePos(cid) storagepos = tabletostring(pos) setPlayerStorageValue(cid,5754,storagepos) elseif words:lower() == "returnpos" then stroagepos = getPlayerStorageValue(cid,5754) pos = {} if isstring(storagepos) then pos = loadstringtable(storagepos) if pos then doTeleportThing(cid, pos) end end end return true end obs: lembre-se quer tab.x == tab["x"] (então todos vão ficar da forma ['x'])