luzetti06 7 Postado 22 de Fevereiro Compartilhar Postado 22 de Fevereiro OPA GALERINHA HOJE TRAGO AQUI UM SISTEMA DE KILL DROP, ELE FUNCIONA ASSIM: VOCE COLOCA NO CODIGO O ITEM QUE VC DESEJA, E O EFEITO. local itens = { -- Cada item tem um id, um efeito e uma mensagem {id = 12162, efeito = 173, mensagem = "DROP ESPECIAL."}, {id = 12161, efeito = 173, mensagem = "Você usou uma pedra vermelha."}, {id = 1002, efeito = 173, mensagem = "Você usou uma pedra verde."}, {id = 1003, efeito = 173, mensagem = "Você usou uma pedra amarela."} } local function isDrop(itemid) for i, item in ipairs(itens) do if item.id == itemid then return true end end return false end local function getEffectAndMessage(itemid) for i, item in ipairs(itens) do if item.id == itemid then return item.efeito, item.mensagem end end return nil end local function sendTimedAnimatedText(cid, pos, text, color, duration) if not isCreature(cid) then return true end local ticks = duration / 1000 local interval = 1 local totalTicks = ticks / interval local currentTick = 0 local function sendText() if currentTick >= totalTicks then return end currentTick = currentTick + 1 doSendAnimatedText(pos, text, color) addEvent(sendText, interval * 1000) end sendText() end local function sendTimedMagicEffect(pos, effect, duration) if not pos or not effect then return end doSendMagicEffect(pos, effect) addEvent(doSendMagicEffect, duration, pos, CONST_ME_NONE) end local function useItem(cid, position, corpseid) if not isCreature(cid) then return true end local corpse = getTileItemById(position, corpseid).uid if corpse <= 1 or not isContainer(corpse) then return true end local player = getCreatureMaster(cid) if not isPlayer(player) then return true end local itemsToAdd = {} local itemsToRemove = {} for slot = 0, (getContainerSize(corpse) - 1) do local item = getContainerItem(corpse, slot) if item.uid > 1 then if isDrop(item.itemid) then local effect, message = getEffectAndMessage(item.itemid) table.insert(itemsToAdd, {itemid = item.itemid, count = item.type}) sendTimedMagicEffect(position, effect, 10000) sendTimedAnimatedText(position, message, math.random(150, 190), 10000) table.insert(itemsToRemove, item.uid) end end end for _, uid in ipairs(itemsToRemove) do doRemoveItem(uid) end for _, itemData in ipairs(itemsToAdd) do doPlayerAddItem(player, itemData.itemid, itemData.count) end end function onKill(cid, target, lastHit) if not ehMonstro(target) then return true end local corpse = getMonsterInfo(getCreatureName(target)).lookCorpse addEvent(useItem, 5, getCreatureSummons(cid)[1], getThingPos(target), corpse) return true end registra isso no login.lua \/ registerCreatureEvent(cid, "killdrop") isso no creaturescript.lua <event type="kill" name="killdrop" event="script" value="killdrop.lua"/> APÓS REGISTRADO E CONFIGURADO O SCRIPT FUNCIONARA DA SEGUINTE FORMA: SEMPRE QUE UM DESSES ITENS CAIR DO CORPO DO POKEMON ELES IRAO AUTOMATICO PARA A BAG DO PLAYER CASO QUEIRAM TESTAR FIQUEM A VONTADE, JA FIZ TESTE PELO /M E O LOOT VAI PRA QUEM INVOCO NO CASO EU, E FIZ NA PESCA COM PLAYER O OUTRO PLAYER MATO MAIS NAO OBTEVE O LOOT, E SIM EU, POIS FOI EU QUE O SCRIPT MARCO COMO ALVO. Link para o comentário https://tibiadevs.com/forums/topic/332-kill-drop-automatic/ Compartilhar em outros sites Mais opções de compartilhamento...
Moderador Wang 1.359 Postado 23 de Fevereiro Moderador Compartilhar Postado 23 de Fevereiro Tópico Aprovado! Somos gratos por sua contribuição, com certeza será útil para toda a comunidade! ❤️ REP+ muito bom Kevin. Link para o comentário https://tibiadevs.com/forums/topic/332-kill-drop-automatic/#findComment-1696 Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados
Crie uma conta ou entre para comentar
Você precisar ser um membro para fazer um comentário
Criar uma conta
Crie uma nova conta em nossa comunidade. É fácil!
Crie uma nova contaEntrar
Já tem uma conta? Faça o login.
Entrar Agora