Dá a mensagem: "you can not use this object".
Alavanca De Sumonar Monstro Com Custo
Por godpank, 24 de set. de 2012 em Scripts
e nenhum erro no console? nem na hora de carregar o server?
No console dá a mensagem: "Missing Script Tag".
Usa a script que você fez então, mas usando isso aqui:
function onUse(cid, item, frompos, item2, topos)
if item.uid == 3334 then
doPlayerSendTextMessage(cid,22,"teste.")
local creature = doSummonCreature("demon",topos)
if not isCreature(creature) then return true end
if not doPlayerRemoveMoney(cid, 500) then
doRemoveCreature(creature)
return true
end
doSendMagicEffect(getThingPos(creature),13)
else
doPlayerSendCancel(cid,"Você está sem gps.")
end
return 1
end
desculpe amigo, mas não faz sentido algum aparecer you cannot use this object se a script foi carregada normal... esse missing script tag deve ser de outra coisa no seu server
se deu you cannot use this object é porque não está executando o script, seja por ele não ter sido carregado ou você não ter colocado o action id certo
eu peguei o seu script de "teste" e só coloquei pra não remover dinheiro caso o player nã oconsiga sumonar o monstro, e esse usa unique id, e não action id, que é onde acho que você está errando
desculpe-me se estiver errado
Brun123, testei novamente o seu primeiro script, refiz tudo cuidadosamente e deram os mesmos erros mencionados anteriormente.
Com este script "teste" que você alterou para não remover dinheiro quando não sumonar, está sumonando a cada clicada na alavanca, mesmo sem dinheiro, ou seja, não está cobrando nada para sumonar. Fiz um teste sem BP para ter certeza, sumonou os monstros sem gps.
Brun123 e Skyligh, obrigado pelo empenho. Estou precisando ainda desta action, se mais alguém souber como resolver fico muito agradecido. Pensei que era algo mais simples, mas acho que não. Obrigado.
Editado Setembro 26 por GodPank
Olha cara, então vamos fazer uma coisinha aqui só pra tentar descobrir onde é o erro...
Use a script assim:
function onUse(cid, item, frompos, item2, topos)
if item.uid == 3334 then
local creature = doSummonCreature("demon", topos)
print("O UID do monstro sumonado é "..creature..".")
if not isCreature(creature) then print("O monstro não pode ser sumonado - 'not isCreature' retornou true.") return true end
if not doPlayerRemoveMoney(cid, 500) then
print("Not doPlayerRemoveMoney retornou true.")
doRemoveCreature(creature)
return true
end
doSendMagicEffect(getThingPos(creature), 13)
else
doPlayerSendCancel(cid,"Você está sem gps.")
end
return 1
end
Isso vai mostrar algumas mensagens no console do seu server, quero que você dê use 1 única vez na alavanca e mostre todas as mensagens que apareceram no console
Olá Brun123! Que bom que você retornou.
Fiz tudo como você falou, na hora de rodar o servidor passa as actions sem mensagem de erro, está sumonando o demon, mas não desconta nada do player. Quando cliquei uma vez somente na alavanca, a mensagem do console foi esta: O UID do monstro sumonado Ú 2. Bem assim mesmo. Não sei se é permitido postar screens, se puder favor avisar que te mostro.
Obg.
pode postar sim, e posta aí se puder
A imagem:

servidor 7.6 é complicado, em servers mais recents as funções que criam monstros retornam o uid dele, bom amigo, como eu não sei se as funções são muito ou pouco diferenets dos servers mais atuais, eu vou precisar dar uma olhada no código fonte do seu server pra pensar em um jeito de fazer isso, mais especificamente o arquivo luascript.cpp...
se você não tem o código fonte do seu server, pelo menos me diz em que distro ele é baseado, se é the forgotten server ou outro, enquanto isso, faz uma coisa pra mim:
enche de stone (uma que não dê pra criar monstro em cima) e cerca a alavanca todinha, fazendo com que seja impossível criar o monstro e dê use na alavanca novamente pra ver o resultado, poste aqui depois o que apareceu no console
Infelizmente não tenho o código, mas o server é o yurots 0.94d. Ao invés de pedras, coloquei um piso que não é possível andar nele. Fica como se fosse a pedra.
Imagem:

Brun123, se não for possível desta forma, seria possível assim: Quando puxar a alavanca, sumona o monstro e retira uma scarab coin do player ? Sem scarab, sem monstro.
info
Grupo: Lorde
Registrado: 22/07/12
Posts: 2.2k
Reputação: +453
Char no Tibia: Kissy

Tente Com este
function onUse(cid, item, frompos, item2, topos) local name = "Rat" -- Nick Do Monster local money = 1000 -- Quantos Gp's Ira Remover if item.itemid == 4852 then -- id da lavaca elseif doPlayerRemoveMoney(cid,money) then doPlayerSendCancel(cid,"Sorry you do not have enough money.") return true elseif doSummonCreature(name, getThingPos) then doPlayerSendTextMessage(cid, 22, "Monster summoned Successfully") return true end end
Bom amigo, essa é a minha última tentativa...
eu procurei saber um pouco mais de servidores 7.6 e não tinha true ou false, era só 0 ou 1, e qualquer nº em lua retorna true, talvez assim funcione:
function onUse(cid, item, frompos, item2, topos)
if item.uid == 3334 then
local creature = doSummonCreature("demon", topos)
if creature == 0 then
doPlayerSendCancel(cid, "Não há espaço para sumonar o monstro.")
return 1 end
if doPlayerRemoveMoney(cid, 500) ~= 1 then
doPlayerSendCancel(cid, "Você está sem gps.")
doRemoveCreature(creature)
return 1
end
doSendMagicEffect(getThingPos(creature), 13)
end
return 1
end
não sei se existe a função doRemoveCreature no seu server...
talvez funcione, agora olha só, sempre que não der pra sumonar o monstro, vai aparecer essa mensagem no console avisando que o monstro não pôde ser criado
Editado Setembro 26 por brun123
Tente Com este
function onUse(cid, item, frompos, item2, topos) local name = "Rat" -- Nick Do Monster local money = 1000 -- Quantos Gp's Ira Remover if item.itemid == 4852 then -- id da lavaca elseif doPlayerRemoveMoney(cid,money) then doPlayerSendCancel(cid,"Sorry you do not have enough money.") return true elseif doSummonCreature(name, getThingPos) then doPlayerSendTextMessage(cid, 22, "Monster summoned Successfully") return true end end
Skyligh, o script passa sem mensagem de erro no console, mas no jogo não sumona e fica descontando gps do player =/





info
Grupo: Conde
Registrado: 24/09/06
Posts: 512
Reputação: +369
e o que acontece quando você dá use?