Ir para conteúdo
  • Cadastre-se

(Resolvido)Pet System Bugado


Ir para solução Resolvido por J.L,

Posts Recomendados

Tenho Script que não esta funcionando. Tfs 0.4

 

Gostaria de saber oque fazer para resolver se alguém poder ajudar... vlw

 

Não aparece nem 1 erro mas tbm não funciona quando dou usar no item

 

Action/Petsystem.lua

function onUse(cid, item, frompos, item2, topos)

local monster ={
[13553] = {"Macaco", 1, 1500, vida = 50000, vezes = 5, go = 00, gack = 00},
}

local summom = getCreatureSummons(cid)
local mst = monster[item.actionid]
local hea = monster.vida

function backMonster(cid, monsters)
if #getCreatureSummons(cid) >= 1 then
monsters = getCreatureSummons(cid)[1]
doRemoveCreature(monsters)
doPlayerSendTextMessage(cid, 13, "Não precio de sua ajuda"..mst[1].."por enquanto")
doSendMagicEffect(getThingPos(monsters), mst.back)
end
end

if getPlayerStorageValue(cid, 18800) >= mst.vezes then
return doPlayerSendCancel(cid, "Seu Summon estar cansado só poderar usar amanhan")
end

if getPlayerLevel(cid) > mst[2] and mst[3] < getPlayerLevel(cid) then
doSummonCreature(mst[1], getThingPos(cid))
doPlayerSendTextMessage(cid, 14, "Venha me ajudar"..mst[1].."nessa batalha")
setCreatureMaxHealth(summom[1], hea)
doPlayerSetStorageValue(cid, 18800, mst.vezes)
doSendMagicEffect(getThingPos(monster), mst.go)
else
backMonster(cid, mst[1])
return true
end
end

 

Xml: <action actionid="13553" event="script" value="petsystem.lua"/> 

 

globalevents/Pet.lua

function onTime()

local storage = {5}

setPlayerStorageValue(cid, 18800, storage[1])
end

Xml: <globalevent name="PetSystem" time="00:00" event="script" value="pet.lua"/>

 

Explicação

[13553] = {"Macaco", 1, 50, vida = 500, vezes = 5, go = 00, gack = 00},

 

Verde : Oque estar em verde serar o nome do pet(summon) que você vai ter.

Negrito : 1, 50 quer dizer que você pode usar o summon troll so do lvl 1 ao 50.

Vida: É a vida do seu pet sugiro que seja entre 500 a 5000.

Vezes : e quantas vezes você pode usar ele no dia.

Go : e o effeito de invocação do summon caso não deseje deixe e 0.
Back : mesma coisa o efeito de remover o monstro, deixe em 0 caso n queira.

Editado por DboHere (veja o histórico de edições)

Desde cedo a mãe da gente fala assim: “Filho, por você jogar Tibia, você tem que ser duas vezes melhor.” Aí passado alguns anos eu pensei: Como fazer 2 vezes melhor, se você tá pelo menos 100 vezes atrasado pelos Nubs, pela história, pelos Items, pelas Guilds, pelos Reds… Por tudo que aconteceu? Duas vezes melhor como ? Ou melhora ou ser o melhor ou o pior de uma vez. E sempre foi assim. Você vai escolher o que tiver mais perto de você, o que tiver dentro da sua realidade. Você vai ser duas vezes melhor como? Quem inventou isso aí? Quem foi o pilantra que inventou isso aí ? Acorda pra vida rapaz.

 

YanLoco

 

Projetos: https://www.facebook.com/Dbo-Here-524519644549602/ 70%

Link para o post
Compartilhar em outros sites

Troca seu petsystem.lua por esse

Spoiler

function onUse(cid, item, frompos, item2, topos)

local dolls = {
[5791] = {pet = "Rat"}, -- ID DO ITEM E NOME DO MONSTRO QUE IRÁ SUMONAR

}

local go = dolls[item.itemid]
local summon = getCreatureSummons(cid)
---------------------------------------------------
if not (getTilePzInfo(getCreaturePosition(cid))) then
if #summon >= 1 then
for _, pid in ipairs(summon) do
doRemoveCreature(pid)
doCreatureSay(cid, ""..go.pet..", Recuar!", TALKTYPE_ORANGE_1)    -- MENSAGEM AO REMOVER O PET
end
return true
end

if item.itemid == 5791 then              -- ID DO ITEM 
doConvinceCreature(cid, doSummonCreature(go.pet, getCreaturePosition(cid)))
doCreatureSay(cid, ""..go.pet..", GO!", TALKTYPE_ORANGE_1)      -- MENSAGEM AO SUMONAR O PET
doSendAnimatedText(getPlayerPosition(cid), "Failed!", 180)
end 

else
doPlayerSendTextMessage(cid, 19, "Voce nao pode sumonar seu PET em Protect Zone!")
doSendAnimatedText(getPlayerPosition(cid), "Failed!", 180)
return true
end
end

 

Crie uma TAG no ACTION.XML
e coloque, Mude onde esta ID par o id do item

Spoiler

<action itemid="ID;ID;ID;ID" event="script" value="petsystem.lua"/>

 

Para Adc + pet so copiar as partes
 

Spoiler

[5791] = {pet = "Rat"},



if item.itemid == 5791 then -- ID DO ITEM doConvinceCreature(cid, doSummonCreature(go.pet, getCreaturePosition(cid))) doCreatureSay(cid, ""..go.pet..", GO!", TALKTYPE_ORANGE_1) -- MENSAGEM AO SUMONAR O PET doSendAnimatedText(getPlayerPosition(cid), "Failed!", 180) end

 

 

Para o PET  teleportar para você quando subir escadas, ou ficar muito longe, vá em config.lua e procure por:

teleportPlayerSummons

Se estiver false coloque true, se estiver "no", coloque "yes"

 

 





Creditos:
@Luquinha

 

 

 

 

Não sei se vc esqueceu de adc no post ou no sistema + caso seu script esteja funcionando

Vc tem q adc a TAG no actions.xml tbm... 
Pode adc uma igual essa...

 

<action itemid="ID;ID;ID;ID" event="script" value="petsystem.lua"/>

 

Editado por J.L (veja o histórico de edições)
  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites

Funcionou Certinho Vlw

@J.L Teria como colocar um exhaustion de 1 minuto para clikar no item ? 

Desde cedo a mãe da gente fala assim: “Filho, por você jogar Tibia, você tem que ser duas vezes melhor.” Aí passado alguns anos eu pensei: Como fazer 2 vezes melhor, se você tá pelo menos 100 vezes atrasado pelos Nubs, pela história, pelos Items, pelas Guilds, pelos Reds… Por tudo que aconteceu? Duas vezes melhor como ? Ou melhora ou ser o melhor ou o pior de uma vez. E sempre foi assim. Você vai escolher o que tiver mais perto de você, o que tiver dentro da sua realidade. Você vai ser duas vezes melhor como? Quem inventou isso aí? Quem foi o pilantra que inventou isso aí ? Acorda pra vida rapaz.

 

YanLoco

 

Projetos: https://www.facebook.com/Dbo-Here-524519644549602/ 70%

Link para o post
Compartilhar em outros sites

qual script vc esta usando ? 

oq eu passei ou o seu ?

  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites

Resolvi ja... Estou usando o seu

 

Teve so 1 problema eu tirei a msg que aparece que n pode usar pz zone e agr n  consigo colocar dnv kkkkk

 

Ficou Assim PetSystem.lua

function onUse(cid, item, frompos, item2, topos)

local dolls = {
[13540] = {pet = "Macaco"}, -- ID DO ITEM E NOME DO MONSTRO QUE IRÁ SUMONAR

}
local storExaust = 34455
local go = dolls[item.itemid]
local summon = getCreatureSummons(cid)
---------------------------------------------------
if not (getTilePzInfo(getCreaturePosition(cid))) then
if #summon >= 1 then
for _, pid in ipairs(summon) do
doRemoveCreature(pid)
doCreatureSay(cid, ""..go.pet..", Recuar!", TALKTYPE_ORANGE_1)    -- MENSAGEM AO REMOVER O PET
end
return true
end

if getPlayerStorageValue(cid, storExaust) < os.time() then
if item.itemid == 13540 then              -- ID DO ITEM 
doConvinceCreature(cid, doSummonCreature(go.pet, getCreaturePosition(cid)))
doCreatureSay(cid, ""..go.pet..", GO!", TALKTYPE_ORANGE_1)      -- MENSAGEM AO SUMONAR O PET
setPlayerStorageValue(cid, storExaust, 10 + os.time())
end

else
doPlayerSendTextMessage(cid, 19, 'Aguarde 10 segundos para usar novamente.')
end

return true
end
end

 

Editado por DboHere (veja o histórico de edições)

Desde cedo a mãe da gente fala assim: “Filho, por você jogar Tibia, você tem que ser duas vezes melhor.” Aí passado alguns anos eu pensei: Como fazer 2 vezes melhor, se você tá pelo menos 100 vezes atrasado pelos Nubs, pela história, pelos Items, pelas Guilds, pelos Reds… Por tudo que aconteceu? Duas vezes melhor como ? Ou melhora ou ser o melhor ou o pior de uma vez. E sempre foi assim. Você vai escolher o que tiver mais perto de você, o que tiver dentro da sua realidade. Você vai ser duas vezes melhor como? Quem inventou isso aí? Quem foi o pilantra que inventou isso aí ? Acorda pra vida rapaz.

 

YanLoco

 

Projetos: https://www.facebook.com/Dbo-Here-524519644549602/ 70%

Link para o post
Compartilhar em outros sites
  • Solução

tente 

Desse modo quando a pessoa tirar o pet terá q esperar 60 segundos para usar novamente

Spoiler

function onUse(cid, item, frompos, item2, topos)

local dolls = {
[13540] = {pet = "Macaco"}, -- ID DO ITEM E NOME DO MONSTRO QUE IRÁ SUMONAR

}

local go = dolls[item.itemid]
local summon = getCreatureSummons(cid)
local waittime = 60 -- Tempo de exhaustion em segundos
local strtime = 6660666 -- Storage, nunca usar a mesma em outra Script do mesmo tipo. Ex: mesmo creaturescript, mesmo action e etc...

if exhaustion.check(cid, strtime) then
doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, strtime) .. " segundos para usar esse item novemente.")
return false
end 
---------------------------------------------------
if not (getTilePzInfo(getCreaturePosition(cid))) then
if #summon >= 1 then
for _, pid in ipairs(summon) do
doRemoveCreature(pid)
doCreatureSay(cid, ""..go.pet..", Recuar!", TALKTYPE_ORANGE_1)    -- MENSAGEM AO REMOVER O PET
exhaustion.set(cid, strtime, waittime)      -- checar time
end
return true
end

if item.itemid == 13540 then              -- ID DO ITEM 
doConvinceCreature(cid, doSummonCreature(go.pet, getCreaturePosition(cid)))
doCreatureSay(cid, ""..go.pet..", GO!", TALKTYPE_ORANGE_1)      -- MENSAGEM AO SUMONAR O PET
doSendAnimatedText(getPlayerPosition(cid), "Failed!", 180)
end 

else
doPlayerSendTextMessage(cid, 19, "Voce nao pode sumonar seu PET em Protect Zone!")
doSendAnimatedText(getPlayerPosition(cid), "Failed!", 180)
return true
end
end

 

Desse modo quando a pessoa usar o pet terá q esperar 60 segundos para usar novamente

Spoiler

function onUse(cid, item, frompos, item2, topos)

local dolls = {
[13540] = {pet = "Macaco"}, -- ID DO ITEM E NOME DO MONSTRO QUE IRÁ SUMONAR

}

local go = dolls[item.itemid]
local summon = getCreatureSummons(cid)
local waittime = 60 -- Tempo de exhaustion em segundos
local strtime = 6660666 -- Storage, nunca usar a mesma em outra Script do mesmo tipo. Ex: mesmo creaturescript, mesmo action e etc...

if exhaustion.check(cid, strtime) then
doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, strtime) .. " segundos para usar esse item novemente.")
return false
end 
---------------------------------------------------
if not (getTilePzInfo(getCreaturePosition(cid))) then
if #summon >= 1 then
for _, pid in ipairs(summon) do
doRemoveCreature(pid)
doCreatureSay(cid, ""..go.pet..", Recuar!", TALKTYPE_ORANGE_1)    -- MENSAGEM AO REMOVER O PET
end
return true
end

if item.itemid == 13540 then              -- ID DO ITEM 
doConvinceCreature(cid, doSummonCreature(go.pet, getCreaturePosition(cid)))
doCreatureSay(cid, ""..go.pet..", GO!", TALKTYPE_ORANGE_1)      -- MENSAGEM AO SUMONAR O PET
doSendAnimatedText(getPlayerPosition(cid), "Failed!", 180)
exhaustion.set(cid, strtime, waittime)      -- checar time
end 

else
doPlayerSendTextMessage(cid, 19, "Voce nao pode sumonar seu PET em Protect Zone!")
doSendAnimatedText(getPlayerPosition(cid), "Failed!", 180)
return true
end
end

 

 

Espero ter ajudado :D

 

Editado por J.L (veja o histórico de edições)
  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites

Funcionou certinho mas poderia colocar para sair um aviso espere 1 minuto para usar novamente

 

doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, strtime) .. " segundos para usar esse item novemente.") 

 

Não esta soltando essa msg

Editado por DboHere (veja o histórico de edições)

Desde cedo a mãe da gente fala assim: “Filho, por você jogar Tibia, você tem que ser duas vezes melhor.” Aí passado alguns anos eu pensei: Como fazer 2 vezes melhor, se você tá pelo menos 100 vezes atrasado pelos Nubs, pela história, pelos Items, pelas Guilds, pelos Reds… Por tudo que aconteceu? Duas vezes melhor como ? Ou melhora ou ser o melhor ou o pior de uma vez. E sempre foi assim. Você vai escolher o que tiver mais perto de você, o que tiver dentro da sua realidade. Você vai ser duas vezes melhor como? Quem inventou isso aí? Quem foi o pilantra que inventou isso aí ? Acorda pra vida rapaz.

 

YanLoco

 

Projetos: https://www.facebook.com/Dbo-Here-524519644549602/ 70%

Link para o post
Compartilhar em outros sites

Para editar o script é o seguinte...

Em VERMELHO ajusta o tempo para usar o item

Em AZUL a storage usada pelo script

Em VERDE a Mensagem que aparecerá

A parte AMARELA é onde mostra quantos segundos faltam

Cada vez que ele tentar usar aparecerá os segundos restantes

Spoiler

local waittime = 60 -- Tempo de exhaustion em segundos
local strtime = 6660666 -- Storage, nunca usar a mesma em outra Script do mesmo tipo. Ex: mesmo creaturescript, mesmo action e etc...

if exhaustion.check(cid, strtime) then
doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, strtime) .. " segundos para usar esse item novemente.")
return false
end 

 

Editado por J.L (veja o histórico de edições)
  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites

@J.L Ent eu sei editar script kkkkk

 

Problema que ele n esta soltando aviso que tem que espera 1 minuto para usar pet novamente simplesmente não aparece nada

Desde cedo a mãe da gente fala assim: “Filho, por você jogar Tibia, você tem que ser duas vezes melhor.” Aí passado alguns anos eu pensei: Como fazer 2 vezes melhor, se você tá pelo menos 100 vezes atrasado pelos Nubs, pela história, pelos Items, pelas Guilds, pelos Reds… Por tudo que aconteceu? Duas vezes melhor como ? Ou melhora ou ser o melhor ou o pior de uma vez. E sempre foi assim. Você vai escolher o que tiver mais perto de você, o que tiver dentro da sua realidade. Você vai ser duas vezes melhor como? Quem inventou isso aí? Quem foi o pilantra que inventou isso aí ? Acorda pra vida rapaz.

 

YanLoco

 

Projetos: https://www.facebook.com/Dbo-Here-524519644549602/ 70%

Link para o post
Compartilhar em outros sites

tenta trocar a storage

 

  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites

Alterei e continua mesma coisa 

 

5 horas atrás, J.L disse:

return false

Alterei para true e funcionou normalmente 

Desde cedo a mãe da gente fala assim: “Filho, por você jogar Tibia, você tem que ser duas vezes melhor.” Aí passado alguns anos eu pensei: Como fazer 2 vezes melhor, se você tá pelo menos 100 vezes atrasado pelos Nubs, pela história, pelos Items, pelas Guilds, pelos Reds… Por tudo que aconteceu? Duas vezes melhor como ? Ou melhora ou ser o melhor ou o pior de uma vez. E sempre foi assim. Você vai escolher o que tiver mais perto de você, o que tiver dentro da sua realidade. Você vai ser duas vezes melhor como? Quem inventou isso aí? Quem foi o pilantra que inventou isso aí ? Acorda pra vida rapaz.

 

YanLoco

 

Projetos: https://www.facebook.com/Dbo-Here-524519644549602/ 70%

Link para o post
Compartilhar em outros sites

Nem vi, erro bobo.
Que bom q funcionou :D

  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo