Postado Fevereiro 25, 2019 6 anos Ola, tenho a seguinte script, e a primeira função que tinha nela, era fazer o efeito quando o monstro morre, até ai funciono perfeitamente, depois coloquei para adicionar o Item no local da morte também, agora estava tentando fazer com que depois de um determinado tempo esse item suma. Mas não queria colocar uma duração nesse item pois se o player catar ele não poderia sumir. local time = 15 function removeTp() local item = getTileItemById(getThingPos(cid), 7632) if item.uid > 0 then return doRemoveItem(item.uid, 1) end end function onDeath(cid, corpse, killers) local monsters = { [""] = 15, [""] = 15, [""] = 13, } local effect = monsters[getCreatureName(cid)] or 53 doSendMagicEffect(getThingPos(cid), effect) doCreateItem(7632,1,getThingPos(cid)) addEvent(removeTp, time*1000) return true end da o seguinte erro na distro Citar [18:54:33.605] [Error - CreatureScript Interface] [18:54:33.608] In a timer event called from: [18:54:33.611] data/creaturescripts/scripts/ancient paradise/spiritdead.lua:onDeath [18:54:33.615] Description: [18:54:33.617] (LuaInterface::luaGetThingPosition) Thing not found Eu ja tentei de outras forma usando como base outros scripts mas o erro e o mesmo ou algo o gênero. Os exemplo ta no spoiler: Spoiler local pos = {x=265, y=118, z=9} -- onde vai aparecer local toPos = {x=267, y=124, z=9} -- para onde vai mandar local tp = 1387 -- id do tp local time = 30 -- tempo function removeTp() local tlp = getTileItemById(pos) if tlp then doRemoveItem(getTileItemById(pos,tp).uid) doSendMagicEffect(pos, CONST_ME_POFF) end end function onStepIn(creature, item, position, fromPosition) if creature:isPlayer() then doCreateTeleport(tp, toPos, pos) addEvent(removeTp, time*1000) end return true end retirado de : Spoiler local item = getTileItemById({x = 1, y = 2, z = 3}, 2160) if item.uid > 0 then return doRemoveItem(item.uid, 1) end retirado de: Spoiler Discord: Naze#3578 Ter Linux Dentro de Windows com Acesso 'localhost' para testes e + AutoLoot Otimizado Direto na Source (tfs 0.4/otx) // Pirataria é crime, original é roubo, compartilhar é legal.
Postado Fevereiro 25, 2019 6 anos tbm preciso de um codigo desse na teoria é facil só vc fazer igual o lifering quando equipado vira outro item mas ai vc deixa igual os dois item de aparencia.. e a diferença do life ring pro seu é que se nao equipado ele acaba e o lifering ele acaba equipado
Postado Fevereiro 25, 2019 6 anos Autor @telefonesemfio Acredito que o jeito que sugeriu daria certo, e até posso usar dois itens nessa situação, mas então só precisaria saber para hora que ele puxar apenas para bag ocorrer a mudança já que esse item não vai ser equipado. Não tou no computador agora depois irei tenta do jeito que sugeriu pois me interesso tbm, mas quem poder me indicar o erro ainda do problema dessa script fico grato. @edit Também pensei de uma forma que seja mais simples de fazer, que seria ao dropa esse item que vai ter tal duração, se eu der use nele ele adicionaria o outro item em minha bag, seria mais simples e eu só precisaria mudar a história por traz do item. Obrigado ajudo muito sua sugestão. Editado Fevereiro 25, 2019 6 anos por Naze Nova ideia (veja o histórico de edições) Discord: Naze#3578 Ter Linux Dentro de Windows com Acesso 'localhost' para testes e + AutoLoot Otimizado Direto na Source (tfs 0.4/otx) // Pirataria é crime, original é roubo, compartilhar é legal.
Postado Fevereiro 25, 2019 6 anos Solução @Naze Tenta: Spoiler local time = 15 function removeTp(pos, id) local item = getTileItemById(pos, id) if item.uid > 0 then return doRemoveItem(item.uid, 1) end end function onDeath(cid, corpse, killers) local pos = getThingPos(cid) local id = 7632 local monsters = { [""] = 15, [""] = 15, [""] = 13, } local effect = monsters[getCreatureName(cid)] or 53 doSendMagicEffect(pos, effect) doCreateItem(id, 1, pos) addEvent(removeTp, time*1000, pos, id) return true end
Postado Fevereiro 25, 2019 6 anos local time = 15 function removeTp(pos) local item = getTileItemById(pos, 7632) if item.uid > 0 then return doRemoveItem(item.uid, 1) end end function onDeath(cid, corpse, killers) local monsters = { [""] = 15, [""] = 15, [""] = 13, } local effect = monsters[getCreatureName(cid)] or 53 doSendMagicEffect(getThingPos(cid), effect) doCreateItem(7632,1,getThingPos(cid)) addEvent(removeTp, time*1000, getThingPos(cid)) return true end testa ai Toda terça-feira um tópico novo: Descanso para curar mana (Spell): https://tibiaking.com/forums/topic/94615-spell-descanso-para-curar-mana/ Peça sua spell (Suporte): https://tibiaking.com/forums/topic/84162-peça-sua-spell/ Chuva de flechas (Spell): https://tibiaking.com/forums/topic/72232-chuva-de-flechas-spell/ Doom (Spell): https://tibiaking.com/forums/topic/51622-doom-spell/ Utilização do VS Code (Infra): https://tibiaking.com/forums/topic/94463-utilizando-o-visual-studio-code-notepad-nunca-mais/ SD com Combo (Spell): https://tibiaking.com/forums/topic/94520-sd-modificada/ Alteração attack speed (C++): https://tibiaking.com/forums/topic/94714-c-attack-speed-spells-itens-e-onde-você-quiser/ Bônus de Speed (NPC): https://tibiaking.com/forums/topic/94809-npc-concede-bônus-aos-players/
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.