Postado Junho 15, 2014 10 anos esses for não tão criando nenhum loop desnecessário não? vc chegou a testar? acho que o bug ainda continua não, o for está correto. Usei pairs, pq eu não usei table.insert, eu adicionei na tabela a posição no index do nome do player. o for checa todos os index, e o index que for igual ao nome do player, ele teleporta para posição "pid"(posição salva no index do player). O bug foi resolvido. Eu só errei em fazer isso pq sempre só testo com 1 player, ae já estou acostumado, como se no serve fosse entrar apenas 1 player 'rsrs Eu n cheguei a testa n pq eu estou viajando, mas eu vou testa o seu, pq esta com bugs ou o do mano ae acabei de testar, está funcionando ! Editado Junho 15, 2014 10 anos por Eduardo Carvalho (veja o histórico de edições) Skype : duhw.carvalho Ajude-nos a crescer, clicando em curtir
Postado Junho 16, 2014 10 anos Autor Vlw vou testa o dois quando eu chega so falta duas hrs pra mim chega.
Postado Junho 16, 2014 10 anos Pronto testei os dois e as scripts estão funcionando perfeitamente, obriga galera por ajudar e segura ae meu rep ++
Postado Junho 17, 2014 10 anos Autor Bom gente eu testei os dois um funcionou perfeitamente e o primeiro de withewolf o item n some mas ficou bom que eu tenho os tipo vlw. eu quero agradeçe a Eduardo Carvalho e WitheWolf que estao sempre ajudando os cara, continue assim vlw. Pedido Resolvido. Editado Junho 17, 2014 10 anos por CreatServer (veja o histórico de edições)
Postado Junho 17, 2014 10 anos eu fiz a segunda spell igualzinha do server dos caras, com o dano e tudo.. dá uma olhada na minha assinatura. A primeira spell o item não some porque o jeito que tem de fazer ele sumir é por Decay e pra isso precisaria criar um item diferente no item editor com a mesma sprite de um item existente (a menos que vc nao ligue de perder um item do seu server). A forma que o Eduardo fez é muito boa mas ela é falha (quando alguém faz um item na mesma hr que o item anterior foi removido o item atual é removido e o antigo não). Se vc manjar de item editor ou tiver disposto a perder o item do seu server é só trocar o script por esse daqui: local config = { storage = 49607, tempo = 10 } local positions = {} function onCastSpell(cid, var) local itemid = math.random (5787, 5788) if getPlayerStorageValue(cid, config.storage) <= 0 then table.insert(positions, getThingPos(cid)) doPlayerSetStorageValue(cid, config.storage, #positions) doDecayItem(doCreateItem(itemid, getThingPos(cid))) doSendMagicEffect(getThingPos(cid), 3) addEvent(function() if isCreature(cid) then doPlayerSendTextMessage(cid, 22, "Your item has expired.") doPlayerSetStorageValue(cid, config.storage, 0) table.remove(positions, getPlayerStorageValue(cid, config.storage)) end end, 1000*config.tempo) elseif getPlayerStorageValue (cid, config.storage) > 0 then doTeleportThing(cid, positions[getPlayerStorageValue(cid, config.storage)]) doSendMagicEffect(getThingPos(cid), 2) end return true end e em items.xml vc tem que editar o item que vc for usar (no meu caso eu usei os dois target dummie (5788, 5787) e editei de acordo no items.xml: <item fromid="5787" toid="5788" article="a" name="target" > <attribute key="decayTo" value="0" /> <attribute key="duration" value="10" /> </item> ajustando a duration com o tempo do script fica perfeito e acredito q foi assim q os caras do server pioneiro desse sistema fizeram, mas o problema é que se vc usa um item normal (que não foi criado a + no item editor) todos os items iguais a ele vão desaparecer do mapa, então fazendo isso eu perdi todos os items 5787 e 5788 que tinham no meu mapa. Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá! "Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda (obg ao @Beeny por fazer essa linda sign <3)
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.