Postado Abril 25, 2016 9 anos local config = { pos1 = {x = 1152, y = 643, z = 9}, pos3 = {x = 1154, y = 643, z = 9} } config.pos2 = {x = config.pos1.x - 1, y = config.pos1.y, z = config.pos1.z}
Postado Abril 25, 2016 9 anos Autor 10 horas atrás, Talesigorvr disse: Estranho, só pra confirmar, você está botando no código config.pos1 invés de apenas pos1, certo? Sim, eu já testei com (config.pos2) & sem (apenas o pos2). 10 horas atrás, MaTTch disse: local config = { pos1 = {x = 1152, y = 643, z = 9}, pos3 = {x = 1154, y = 643, z = 9} } config.pos2 = {x = config.pos1.x - 1, y = config.pos1.y, z = config.pos1.z} Olha eu fiz assim, pelo que testei vi que ele consegue pegar a pos1 na parte doCreateItem, por que se eu tirar as partes referentes ao pos2/3 ele cria o SQM do pos1, mas quando eu crio a pos2, mandando ele pegar pela posição do pos1 ele da o erro, "attempt to global index "config" (a nil value). function onUse(cid, item, frompos, item2, topos) local config = { pos1 = {x=1152,y=643,z=9}, pos2 = {x=config.pos1.x+1, y=config.pos1.y, z=config.pos1.z}, pos3 = {x=config.pos1.x+2, y=config.pos1.y, z=config.pos1.z} } if item.itemid == 1945 then doTransformItem(item.uid,1946) -- Puxar alavanca doCreateItem(17669, 1, config.pos1) doCreateItem(17669, 1, config.pos2) doCreateItem(17669, 1, config.pos3) addEvent(alavanca,2 * 1000) -- Retornar alavanca addEvent(removeponte,2 * 1000) -- Remover ponte else doCreatureSay(cid, "Não é possivel.", TALKTYPE_ORANGE_1, false, 0, topos) end end Eu já testei assim tambem, "pos2 = {x=pos1.x+1, y=pos1.y, z=pos1.z}", da o mesmo erro "attempt ... "pos1" (a nil value).
Postado Abril 25, 2016 9 anos Até onde eu sei, só é possível puxar um valor da própria tabela se usar metatable, mas posso estar errado. local p = {x = 1152, y = 643, z = 9} function onUse(cid, item, frompos, item2, topos) if(item.itemid == 1945) then doTransformItem(item.uid, 1946) -- Puxar alavanca doCreateItem(17669, 1, p) doCreateItem(17669, 1, {x = p.x + 1, y = p.y, z = p.z}) doCreateItem(17669, 1, {x = p.x + 2, y = p.y, z = p.z}) addEvent(alavanca, 2 * 1000) -- Retornar alavanca addEvent(removeponte, 2 * 1000) -- Remover ponte else doCreatureSay(cid, "Não é possivel.", TALKTYPE_ORANGE_1, false, 0, topos) end return true end
Postado Abril 26, 2016 9 anos Autor 5 horas atrás, MaTTch disse: Até onde eu sei, só é possível puxar um valor da própria tabela se usar metatable, mas posso estar errado. local p = {x = 1152, y = 643, z = 9} function onUse(cid, item, frompos, item2, topos) if(item.itemid == 1945) then doTransformItem(item.uid, 1946) -- Puxar alavanca doCreateItem(17669, 1, p) doCreateItem(17669, 1, {x = p.x + 1, y = p.y, z = p.z}) doCreateItem(17669, 1, {x = p.x + 2, y = p.y, z = p.z}) addEvent(alavanca, 2 * 1000) -- Retornar alavanca addEvent(removeponte, 2 * 1000) -- Remover ponte else doCreatureSay(cid, "Não é possivel.", TALKTYPE_ORANGE_1, false, 0, topos) end return true end Dessa forma já vai ajudar bastante, é por que a quest não ta no lugar certo ainda, e se eu criasse colocando xyz em todos, depois teria que alterar todos, dessa forma só mudar o "p" que o resto vai junto, muito obrigado.
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.