Jump to content
Close

edusorcer

Member
  • Content Count

    18
  • Joined

  • Last visited

Everything posted by edusorcer

  1. É simples, você pode usar o player storage para chegar nesse resultado. Na sua função verifique a vocação do player, e veja se o storage (que você criou) dele é menor do que o valor permitido para a vocação. Caso positivo, você adiciona vida/mana máxima ao player, e adiciona +1 ao valor da storage. Caso negativo, você pode enviar uma mensagem dizendo que já usou o limite
  2. Bom cara, eu posso tentar te ajudar, mas acho difícil pois o distro crashou no meio da conexão com o banco de dados, e ficamos sem nenhum erro para começar a debugar. Primeiramente, você tem o mysql server configurado na sua máquina? Se você tem o XAMPP para configurar o Apache do seu website, ele também pode configurar o ambiente do MySQL. Tente acessar o seu MySQL pelo terminal/bash (através do painel de controle do Xampp). Se você conseguir, digite esse comando: show databases; E me mostre o resultado
  3. Esse erro está sendo causado pois a tabela player_spells não existe no seu banco de dados. Acesse o seu banco de dados e rode essa query: CREATE TABLE `player_spells` ( `player_id` INT(11) NOT NULL, `name` VARCHAR(255) NOT NULL, INDEX `player_id` (`player_id`), FOREIGN KEY (`player_id`) REFERENCES `players` (`id`) ON DELETE CASCADE ); e veja se funciona
  4. Troque a linha 50 por isso e veja se funciona $config['site']['newchar_towns'][0] = array(1);
  5. Geralmente aí aparecme os towns configurados para os novos personagens no arquivo config/config.php Se o seu site tem esse arquivo coloque ele aqui para eu dar uma olhada
  6. Você está utilizando o TFS 1.3 e aparentemente existe um script chamando a função getPlayerStorageValue, e essa função não existe no TFS 1.3 Ela deve ser substituída por player:getStorageValue(key) Se você me passar o código eu posso te dar uma solução com mais precisão
  7. Esse erro está no arquivo newadvance.lua, na linha 10. No final dessa linha está chamando a função secondsToClock, mas essa função não é global e não está nesse arquivo. Solução: Acho essa linha deveria estar no início do arquivo newadvance.lua: STORAGE_FOR_TIMESTAMP = 15854 Insira essa função no final do arquivo newadvance.lua: local function secondsToClock(seconds, worded) -- Returns inputted seconds as a formatted string local seconds = tonumber(seconds) if seconds <= 0 then if worded == true then return "0 seconds."; else return "00:00:00"; end else local hours = string.format("%02.f", math.floor(seconds/3600)); local mins = string.format("%02.f", math.floor(seconds/60 - (hours*60))); local secs = string.format("%02.f", math.floor(seconds - hours*3600 - mins *60)); if worded == true then return ((seconds<3600 and "") or ((math.floor(seconds/3600) == 1 and "1 hour, ") or (math.floor(seconds/3600)) .. " hours, ")) .. ((seconds < 60 and "") or ((math.floor(seconds/60 - (hours*60)) == 1 and "1 minute, and ") or (math.floor(seconds/60 - (hours*60)).. " minutes, and "))) .. ((math.floor(seconds - hours*3600 - mins *60) == 1 and "1 second") or (math.floor(seconds - hours*3600 - mins *60).. " seconds")) .. "." else return hours..":"..mins..":"..secs end end end
  8. Bom pessoal, esse é um script bem simples, mas eu gosto da ideia dele, e não consegui encontrar por aí. É uma boa solução pra quando você quer summonar monstros numa quest, e se tiver vários players não ficará summonando monstros várias vezes. Esse script está sendo usado ao dar use num chest, mas está a seu critério onde utilizar. monstersToCreate = { [1] = { name = 'Lost Berserker', position = {x = 1034, y = 1425, z = 15} }, [2] = { name = 'Lost Thrower', position = {x = 1028, y = 1424, z = 15} }, [3] = { name = 'Lost Basher', position = {x = 1034, y = 1427, z = 15} }, [4] = { name = 'Lost Thrower', position = {x = 1040, y = 1423, z = 15} }, [5] = { name = 'Lost Husher', position = {x = 1030, y = 1430, z = 15} }, [6] = { name = 'Lost Husher', position = {x = 1038, y = 1429, z = 15} } } function onUse (player, item, param) if item:getActionId() == 45016 then if player:getStorageValue(45016) == -1 then player:addItem(2517, 1) -- shield of honour player:addItem(2502, 1) -- dwarven helmet local currentMonsters = Game.getStorageValue(45016) if currentMonsters then for v = 1, #currentMonsters do local monsterId = currentMonsters[v] local isMonsterAlive = Monster(monsterId) if not isMonsterAlive then local createdMonster = Game.createMonster(monstersToCreate[v].name, monstersToCreate[v].position) currentMonsters[v] = createdMonster:getId() end end Game.setStorageValue(45016, currentMonsters) else local createdMonsters = {} for i = 1, #monstersToCreate do local createdMonster = Game.createMonster(monstersToCreate[i].name, monstersToCreate[i].position) table.insert(createdMonsters, createdMonster:getId()) end Game.setStorageValue(45016, createdMonsters) end player:setStorageValue(45016, 1) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You've got a reward.") else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "You've already got your reward.") end end return true end actions.xml: <action actionid="45016" script="seu_script.lua" /> Se alguém quiser aprimorar o script, sinta-se à vontade 😃
  9. Esse erro acontece pois não está sendo possível conectar ao MySQL utilizando o usuário 'forgottenserver'@'localhost' A configuração das credenciais ficam no config.lua. Procure lá e troque para as credenciais corretas do seu MySQL server. As vezes, trocando o forgottenserver por root já funciona 😃
  10. @Emanueldk você pode hostear ele no seu próprio pc, se o seu roteador tiver as configurações corretas; mas essa forma é a mais complicada pois ainda existem provedores que bloqueiam esse acesso através do modem. Eu aconselho você colocar o seu site num host gratuito, existem vários por aí, por exemplo esse que já usei: https://infinityfree.net/ Você vai precisar basicamente fazer upload da pasta do seu site e do seu banco de dados. Acredito que eles possuam um tutorial ou algo do tipo. Qualquer dúvida só chamar aí 😃
  11. @peterson18 está quase, faltou remover o if desnecessário acredito que a versão correta do script seria assim: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local nome = getCreatureName(cid) if msgcontains(msg, "blz") or msgcontains(msg, "blzz") and talkState[talkUser] == 1 then selfSay("Olá, como está ".. nome ..", faz tempo que não aparece por aqui... Em que posso lhe ajudar?",cid) return true end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) veja se deu certo 😃
  12. E ai cara, tudo certo? Bom, primeiramente, vou te explicar uns conceitos sobre desenvolvimento web: CSS - esse é o cara que faz o estilo da sua página, ou seja, a maioria dos detalhes visuais. Por exemplo: a cor de um botão, o tamanho da fonte de um texto, a distância entre elementos, etc. Geralmente, dentro da pasta do seu site, ele é um arquivo com o nome styles.css. Se não existir esse nome, procure por arquivos que terminem com .css. Você vai precisar desse cara pra resolver alguns de seus problemas. HTML - esse aqui é responsável pela estrutura da sua página. Por exemplo: os textos, as tabelas, as imagens, os campos de digitar, os botões, etc. Geralmente os sites criados por gesior(de otserver em geral), o HTML fica em arquivos que terminam com .php. PHP - ele é responsável por gerar a parte dinâmica da sua página. Ele fica no lado do servidor, então, acredito que por agora o seu problema não seja com ele. Se você usa o navegador Google Chrome, vá para a sua página e aperte CTRL+SHIFT+C, vai abrir o inspecionador de elementos, tente brincar com esse cara. Com ele, você pode ver o estilo dos elementos e também qual arquivo .css que o elemento que você selecionou está utilizando: Além disso não tem muito o que eu possa ajudar, sem acessar o seu site.
  13. E ai cara, tudo certo? Lendo o seu código, percebo que talvez você esteja cometendo um pequeno erro de lógica, e alguns erros de semântica. 1- erros de semântica não há necessidade de colocar a sua variável em um objeto. como você está apenas declarando a variável nome, ela pode ser acessada diretamente, ou seja, essas linhas poderiam se resumir em: local nome = getCreatureName(cid) nesse contexto, a variável nome não existe, pois você criou ela dentro do objeto config, então ficaria config.nome 2- erro de lógica por que você está comparando a variável nome com o nome da criatura? Você já declarou a variável nome com o nome da criatura nas linhas anteriores dessa forma, acredito que esse if é desnecessário, e você pode remover. quando remover o if anterior, altere essa linha removendo o elseif e colocando um if no lugar, dessa forma: if msgcontains(msg, "blz") or msgcontains(msg, "blzz") and talkState[talkUser] == 1 then aqui você remove o config.nome e deixa apenas nome
  14. Cara, sem acesso ao seu ambiente para debugar, fica difícil encontrar o problema. Lendo o código, da pra ver que tem um redirect, mas acredito que o problema é que esteja dando um erro antes, que impede o redirect.
  15. Se ainda estiver procurando pode chamar inbox 😃
  16. Ajudar em qual sentido? Seria legal especificar algum detalhe, se possível
  17. Estou disponível para ajudar na área de programação, seja lua ou web 😃
  18. E ai cara, tudo certo? Esse erro está aparecendo pois a variável $cap não foi definida. Uma possível solução seria seguir esses passos: Remover essas 3 linhas desnecessárias (linha 310): Adicionar uma nova linha com a atribuição (linha 315): $cap = create_captcha($vals); Espero que tenha funcionado 😃

Open Tibia Server

Quer aprender a criar seu próprio servidor de Tibia? Então está no lugar certo, aqui você encontrará milhares de tutorias, scripts, códigos, mapas e utilitários para que você possa fazer o seu próprio servidor de Tibia partindo do zero.

Redes Sociais

Anuncie no Tibia King

Precisa de mais visibilidade em seus projetos? Quer publicidade para o seu servidor? Anuncie no Tibia King e faça sua divulgação, possuímos centenas de acessos simultâneos e milhares diários, com certeza será a sua solução! A publicação do seu anuncio é instantânea!

×
×
  • Create New...