gabisaoo 6 Postado Novembro 19, 2011 Share Postado Novembro 19, 2011 (editado) Gente ele era para fazer o seguinte, voce falava algo em cima da coordenada correta, dai voce é teleportado para outro lugar e voce recebe uma mensagem. O problema é que não da erro, dai não sei onde arruma apenas ele não faz oque era pra fazer. local pos = {x=1188,y=238,x=4}function onSay(cid, words, param) if getCreaturePosition(cid) == {x=1181,y=239,z=4} then doTeleportThing(cid, pos) doPlayerSendTextMessage(cid, 24, "Msg") end end Obrigado Gabriel Editado Novembro 19, 2011 por gabisaoo Link para o comentário https://xtibia.com/forum/topic/172886-pedido-arrumar-script-que-fiz/ Compartilhar em outros sites More sharing options...
jedian1 34 Postado Novembro 19, 2011 Share Postado Novembro 19, 2011 Essa função provavelmente retorna mais valores do que esses, então pra ficar do jeito que você quer, teríamos que por todos os valores na tabela da posição, como não sabemos(eu não sei '-') TODOS os valores da tabela, podemos fazer de outro jeito, que consiste em pegar o que está na posição(getThingfromPos) que seja uma criatura(.uid) e também fica necessário colocar o stackpos, que significa posição numa "pilha", por exemplo, o player está em cima do tile(chão), de um tufo de grama, de vários itens, como saber em qual posição ele está? a stackpos "255" retorna as criaturas que estiverem naquela pos, então usei ela: local pos = {x=1188,y=238,z=4} function onSay(cid, words, param) if getThingfromPos({x=1181,y=239,z=4,stackpos=255}).uid == cid then doTeleportThing(cid, pos) doPlayerSendTextMessage(cid, 24, "Msg") end end também havia um errinho na variável pos, que você declarou na primeira linha, a tabela está assim: {x=1181,y=238,x=4} quando deveria estar assim: {x=1181,y=238,z=4} é isso, é uma pena que tive de sair ontem, fico mais online durante a tarde. eu testei esse script e agora está funcionando Link para o comentário https://xtibia.com/forum/topic/172886-pedido-arrumar-script-que-fiz/#findComment-1135664 Compartilhar em outros sites More sharing options...
Demonbholder 420 Postado Novembro 19, 2011 Share Postado Novembro 19, 2011 Um aviso, se você colocar, por exemplo print({1} == {1}) vai retornar false, pois não se iguala tabelas. Vc teria que comparar todos os valores, no caso, pos.x, pos.y, pos.z, ou como fez o usuário acima, comparar o uid no local indicado pela posição. Até. Link para o comentário https://xtibia.com/forum/topic/172886-pedido-arrumar-script-que-fiz/#findComment-1135685 Compartilhar em outros sites More sharing options...
jedian1 34 Postado Novembro 19, 2011 Share Postado Novembro 19, 2011 (editado) isso, Demonbholder, era uma explicação dessas que eu queria dar, mas não sabia obrigado. Rep+ Editado Novembro 19, 2011 por JeDiAN Link para o comentário https://xtibia.com/forum/topic/172886-pedido-arrumar-script-que-fiz/#findComment-1135703 Compartilhar em outros sites More sharing options...
Posts Recomendados