Tentei fazer sozinho, obviamente não consegui. Vou postar as minhas tentativas caso ajude alguém a me ajudar.
Agradeço desde já!
Tipo do script: Action
Protocolo (versão do Tibia): 9.1
Servidor utilizado: TFS
Nível de experiência: Médio-baixo
Adicionais/Informações:
Queria que quando uma criatura, qualquer criatura, estivesse com o looktype 399 fosse possível usar o item 13537 nela e ganhar a mount de id 13, então a criatura e o item iriam sumir.
Minha tentativa:
function onUse(cid, item, fromPosition, itemEx, toPosition) local outfit = getCreatureOutfit(itemEx.uid) if isCreature(itemEx.uid) then if outfit == 399 then doPlayerAddMount(cid,13) doCreatureSay(cid, 'You tamed it!', TALKTYPE_ORANGE_1) doSendMagicEffect(fromPosition, CONST_ME_POFF) doRemoveCreature(itemEx.uid) elseif outfit ~= 399 or isCreature(itemEx.uid) == FALSE then doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE) end return TRUE end end
Tipo do script: NPC
Protocolo (versão do Tibia):
Servidor utilizado: TFS
Nível de experiência: Médio-baixo
Adicionais/Informações: Queria que ele desse o mount id 22, como consegui, mas depois de 24hrs o mount sumisse.
Minha tentativa:
local parameters = {cid = cid} function removeMount(parameters) if getPlayerMount(cid,22) == TRUE or getPlayerMount(cid,24) == TRUE or getPlayerMount(cid,25) == TRUE then doPlayerRemoveMount(cid,22) doPlayerRemoveMount(cid,24) doPlayerRemoveMount(cid,25) end end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if ((msgcontains(msg, 'rent')) and (getPlayerMount(cid,22) == FALSE or getPlayerMount(cid,24) == FALSE or getPlayerMount(cid,25) == FALSE)) then selfSay('Do you want to rent a horse for one day at a price of 500 gold?', cid) talkState[talkUser] = 1 elseif ((msgcontains(msg, 'no') or msgcontains(msg, 'nah')) and (talkState[talkUser] == 1)) then selfSay('Maybe next time then.', cid) talkState[talkUser] = 0 elseif ((msgcontains(msg, 'yes') or msgcontains(msg, 'yeah')) and (talkState[talkUser] == 1)) then selfSay('Here you are, but take care of it.', cid) doPlayerAddMount(cid,22) AddEvent(removeMount, 1000*60*60*24, parameters) talkState[talkUser] = 0 end return TRUE end
PS: Eu sei que faltam alguns detalhes nos scripts, mas não no funcionamento em geral.
Espero que consigam me ajudar.