Ir para conteúdo
  • Cadastre-se

xWhiteWolf

Héroi
  • Total de itens

    3605
  • Registro em

  • Última visita

  • Dias Ganhos

    159

Tudo que xWhiteWolf postou

  1. troca isso aqui doPlayerSendCancel(cid, "Cooldown: [" ..os.time() - getPlayerStorageValue(cid, config.storage).."]") por doPlayerSendCancel(cid, "Cooldown: [" ..getPlayerStorageValue(cid, config.storage) - os.time() .."]") Se o if tá verificando se o storage é maior que o os.time() não tem pq subtrair o storage do os.time, se não isso obviamente vai dar um numero negativo xP Quanto a mensagem, usa doPlayerSendTextMessage, em data/lib/constant.lua vc tem o id do type que é o texto laranja; Em alguns scripts meus como frozen orb ou aegis of immortal vc tb acha essa mensagem em
  2. vc tem razão, me desculpe. Já corrigi o tópico original :D Sim, só via pm
  3. faz o seguinte. Onde tá getTileItemById(pos, id) coloca getTileItemById(pos, id).uid > 0 se não der certo coloca pra printar getTileItemById(pos, id).uid
  4. acho q vc não entendeu como era pra usar, vc tinha que ter adicionado a função na sua lib OU declarado a função no seu script antes de usar. O erro q tá acusando tá falando q não sabe o que é a função doShowTimeByPos pq vc não declarou ela em lugar nenhum. deveria estar assim:
  5. to sem tempo ultimamente mas não tem mt dificuldade não, abre o luascript.cpp q fica na pasta source e vê como ficou o nome das conditions na versão 1.2. Pega uma spell que dê condition como o utani gran hur ou utamo vita na versão 1.2 e veja o que mudou e siga o padrão.
  6. seu problema na certa está aqui: actionid 14874 em todos os lugares que o player pode percorrer (da placa pra \/ todos os quadrados verdes deverão conter esse actionid) o valor do storage precisa ser o mesmo tanto no arquivo de actions quanto no arquivo de movements, ele só diz que vc ainda está na sala se seu storage for maior que 0 e ele deveria resetar seu storage pra -1 toda vez q vc sai da sala (considerando q tudo esteja configurado corretamente). Dá uma olhada no que vc fez de errado e se precisar de mais ajuda pode me chamar
  7. me mostra como vc tá fazendo, pq os passos são os seguintes: se o cooldown - (tempo atual - tempo salvo) > 0 então retorna a mensagem de que está em cooldown fim faz a magia salva o tempo atual + cooldown no storage "tempo salvo" fim
  8. vc comeu bola em alguma coisa, que incompatibilidade que deu? vc precisa modificar tanto a função quanto a chamada dela pra aceitar E USAR o parametro
  9. function doShowTimeByPos(uid, pos, duration, type, id) type = type or 20 for i = 0, (duration - 1) do addEvent(function() if isCreature(uid) and getTileItemById(pos, id) then doCreatureSay(uid, tostring(duration - i), type, false, 0, pos) end end, i * 1000) end return true end doShowTimeByPos(cid, variantToPosition(var), 45, 20, 1499) -- essa linha aqui
  10. nesse check aqui if isPlayer(cid) then coloca if isPlayer(cid) and getTileItemById(pos, 1498) then dessa forma ele só vai chamar a função caso o item exista naquela posição.
  11. Você considera os anos "gastos" com Tibia, tempo perdido? Não, pelo simples fato de que na época que eu comecei a jogar eu era criança e se não gastasse com tibia eu iria gastar com outro jogo qualquer. Aprendi inglês e graças ao Tibia aprendi sobre malandragem e como as pessoas podem ser ruins pra tirar vantagem ou conseguirem o que querem. Depois de amadurecer horrores abri mão da minha conta em troca dos OTservers, não só jogando como também virei GM de alguns e tive meus primeiros contatos com programação, o que foi fundamental pra eu ser quem eu sou hoje. Quem você era e quem
  12. lol, não imaginei que ele ia retornar tanta coisa auhauh mas enfim, é db.query mesmo, agora o porquê não tá funcionando eu não sei ;~ tenta usar essa versão aqui, peguei do Mock. É em tese a mesma coisa que aquele acima porém aqui ele filtra as coisas q n deveriam ter aparecido e escreve num arquivo pra não foder seu servidor. O arquivo vai aparecer na pasta do seu server.
  13. Executa isso aqui no teu server: local seen={} function dump(t,i) seen[t]=true local s={} local n=0 for k in pairs(t) do n=n+1 s[n]=k end table.sort(s) for k,v in ipairs(s) do print(i,v) v=t[v] if type(v)=="table" and not seen[v] then dump(v,i.."\t") end end end dump(_G,"") pode ser até numa talkaction, só inserir um function onSay() em cima e um return true end no final; Aí você executa a talkaction referente ao script e me fala
  14. vc tá usando a versão 1.x no servidor 0.4. Pega a versão certa no tópico
  15. poderia me enviar um print dessa mensagem? ela aparece no rme ou no console do servidor?
  16. muda aqui a posição de posi.y + 1 pra posiy. - 1 tanto na pos1 quanto na pos2 countdown(posi, {{x = posi.x - 1, y = posi.y + 1, z = posi.z}, {x = posi.x + 1 , y = posi.y + 1, z = posi.z}}) mesma coisa aqui: ArrayPos = {{x = fromPos.x - 1, y = fromPos.y + 1, z = fromPos.z}, {x = fromPos.x + 1 , y = fromPos.y + 1, z = fromPos.z}} onde tá .y +1 deixa .y -1, apenas isso (e alterar as salas no map editor)
  17. altera na database os players que tem com 0 de vida e deixa igual a vida max. Você vai "desbugar" eles mas precisa achar a causa do bug ainda
  18. se sua database for mysql vc precisa abrir o arquivo dela (tem o nome do config.lua do arquivo) ele fica na mesma pasta do executavel e vc abre usando o mysql (ve uns tutoriais na net)
  19. as vezes seu personagem tá com mais vida do que o máximo que a database aguenta, quando vc morre ele buga sua vida e ela fica negativa. Quando você loga ele tenta setar sua vida como negativa e acaba te matando. Pra uma primeira solução: tenta pesquisar no banco de dados os chares que estão bugando e veja se a vida deles está negativa. Se não estiver, procura algum mod ou script em creaturescripts onLogin, onDeath, onPrepareDeath. Analisa se tem algo q faça modificações na sua vida.
  20. vc quer um item que fique de curando? copia o ring of healing ou o life ring.
  21. na vdd o próprio script tem essa configuração, é essa função aqui: doSendAnimatedText(pos, "+"..lifedraw , TEXTCOLOR_GREEN) dependendo da sua versão a variavel que salva o id da cor verde tem outro nome e por isso no seu servidor não aparece. Vai em data/lib/constant.lua e procura por GREEN. Na versão 0.4 que eu uso em vez de TEXTCOLOR_GREEN ela se chama COLOR_GREEN. Dá uma procurada que você acha
  22. isso que vc quer é exatamente o que é o sistema. Se você separar bem as salas os players sempre vão achar que estão na mesma sala isolados dos outros. A diferença é que nesse aqui vc ainda precisa fazer as salas manualmente, porém é só fazer uma e dar ctrl c e ctrl v até formar uma linha e depois dar ctrl c e ctrl v na linha inteira de salas e fazer as colunas. Se fosse pra criar a sala via script vc tornaria o sistema muito pesado :~ o algoritmo é o mesmo, o que vc vai ter que mudar é as funções do TFS. A lógica é universal, as funções que mudam com as versões. Pega as versões corr
  23. tenta com isso aqui: http://prntscr.com/fei271 ps: ignora a função getPosByDir, eu só criei ela pra fazer o teste. O que vc precisa fazer é criar um novo parametro chamado dir na função e chamar ele no addEvent da função recursiva. Aí você vai fazer algo praticamente igual a isso só que remover o for j e o for dos prints. e no lugar do printmsg vc coloca pra ele soltar o distance effect entre pos1 e pos2. Tenta fazer sozinho, sei que pode parecer algo muito complexo de inicio mas se vc executar no repl.it e ir entendendo o que cada parte faz eu acredito que você consegue!
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo