Tudo que Garou postou
- Gean Riot
-
[Resolvido] [DUVIDA] Reset
DELETE FROM `players` WHERE `level` < 100
-
Uther, prazer!
Seja bem-vindo ao TibiaKing Espero que curta o fórum :>
-
pira no meu qi
Daora, eu gosto de resolver aqueles de lógica do tipo Teste de Einstein.
-
Resolvi me aventurar
Nessa área e consegui esse resultado: Não usei tipografia, pois não tenho fontes legais no PC
-
Títulos de reps fora do perfil
Já notei que existem títulos conforme a quantidade de pontos de reputação do membro, mas ele só é visível se você entrar no perfil da pessoa. Que tal colocar para esse título ser visto também nesse "mini-perfil" ao lado do post da pessoa ou tópico? Por exemplo, o meu título é: "Caraio olha o tantão de REP's!"
-
[Resolvido] [Duvida] Obsidian Knife
Olá, Coyoty. Já notei que você arrumou seu script, mas só para esclarecer: - Quando a função math.random() fica fora do corpo da função onUse(), ela randomiza apenas uma vez no carregamento do servidor e não toda vez que executar a action. - E no caso da math.random(1, 100) não é necessário usar elseif, apenas else. if math.random(1, 100) >= 50 then (...) else (...) end Abraços
-
[Movement] Ponte por Level !
Dicas: 1. Quando você declarar uma variável local que não se utiliza de parâmetros de uma função, coloque-a fora do corpo dessa mesma função. 2. Para esses scripts de pontes, pisos e etcétera, use a função doTeleportThing(cid, position) apenas no caso de barrar a passagem do jogador. Seu código poderá ficar bem melhor e mais organizado. Exemplo: local level = 2 function onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor) if getPlayerLevel(cid) == level then doSendMagicEffect(position, CONST_ME_MAGIC_BLUE) return true end return doTeleportThing(cid, fromPosition, true) end
-
[Portfólio] Itroxz
Rapaz, você está revoltado com a sua vida? Se for para fazer esse tipo de comentário, não faça. Agora entendo porque você já não é mais da equipe, né? Reportado
-
Noss Dps dessa
É UMA CILADA BINO!
-
[Sugestão] Concurso de Scriptwriting
Ótima ideia, espero que ela se torne oficial logo para eu participar no nível iniciante
-
[Resolvido] Reset System with Sources
Olá, Beyond Sky Acontece que o tutorial do membro gpedro não contém um passo essencial para funcionamento do sistema, segue abaixo Em luascript.h, procure por: static int32_t luaDoPlayerSetIdleTime(lua_State* L); Logo abaixo adicione: static int32_t luaGetReset(lua_State* L); static int32_t luaSetReset(lua_State* L); E então basta compilar as sources de seu servidor.
-
Sugar Cane & Rum
Que nada, o código tá bem simplesão mesmo, não tinha o porquê de complicar.
-
Sugar Cane & Rum
ERRO 404 MINHA EQUIPE DE MASSACOTES TREINADOS ESTÃO TRABALHANDO PARA RESOLVER ISSO
- Formula de Ataque dos Monstros
-
PVP System
Introdução Estava eu jogando um bom Counter Strike 1.6 em um servidor 4Fun, quando vi um dos mais conhecidos plugins desse jogo - amxx plugin - que consiste em contar quantos frags seguidos um jogador fez e interpretar isso com um som. Resolvi então fazer algo parecido no Tibia, e como ele não possui som, me utilizei de mensagens broadcast. Enfim, para instalar o sistema no seu servidor, siga os passos abaixo. Instalação Em /data/creaturescripts/scripts/, crie o arquivo pvpsystem.lua e cole este conteúdo: [paste]NgAuw1nU[/paste] Em /data/creaturescripts/, abra o arquivo creaturescripts.xml e cole essa tag nele: <event type="kill" name="pvpsystem" event="script" value="pvpsystem.lua"/> Em /data/creaturescripts/scripts, abra o arquivo login.lua e cole essa linha antes do return true: registerCreatureEvent(cid, "pvpsystem") E você também pode adicionar um channel custom, onde serão enviadas mensagens das mortes no PVP pelo sistema. Em /data/XML/, abra o arquivo channels.xml e adicione essa linha: <channel id="10" name="PVP" logged="yes" active="0"/> Em breve adiciono screenshots do funcionamento ou até um vídeo.
-
Novo BBCode (Pastebin)
Obrigado por este ótimo BBCode, realmente era necessário para organizar os codes em tutoriais ou tópicos em geral.
-
Arrow é Shield Multi Elementall !
Como dito por você mesmo, um bom código para Baiaks, mããs... local ITEM_IDS = { [8905] = 8906, [8907] = 8906, [8906] = 8909, [8909] = 8907, [8907] = 8908, [8908] = 8905, } Dois indexes iguais na tabela, possuindo valores diferentes, WTF? E pelo que notei como os todos os IDs seguem um padrão, tudo pode ser resumido a: local ARROWS = {7838, 7839, 7840, 7850} local SHIELDS = {8905, 8906, 8907, 8908, 8909} function onUse(cid, item, fromPosition, itemEx, toPosition) if isInArray(SHIELDS, item.itemid) then return doTransformItem(item.uid, (item.itemid == 8909 and 8905 or item.itemid+1)) elseif isInArray(ARROWS, item.itemid) then return doTransformItem(item.uid, (item.itemid == 7850 and 7838 or item.itemid+1)) else return false end end
-
Promotion Item (MySQL)
Interessante contribuição, mas todo o script poderia ser encurtado para: function onUse(cid, item, fromPosition, itemEx, toPosition) if getPlayerPromotionLevel(cid) == 2 then doPlayerSendCancel(cid, "You are already promoted") else doRemoveItem(item.uid, 1) doPlayerSetPromotionLevel(cid, 2) doSendMagicEffect(fromPosition, CONST_ME_MAGIC_RED) end return true end Creio que você fez ele mais para treinar suas querys SQL?
-
[Programação] Novos Menus
Bom, esclarecendo as dúvidas aê. Para criar a estrutura que chamamos "física", os menus dentro do cliente, você pode configurar a dll tibiaapi e injetar no cliente. E para fazer esses menus funcionarem do seu jeito, você irá fazer a programação via sources. Abraços.
-
Transformando Itens
function onUse(cid, item, fromPosition, itemEx, toPosition) if item.type >= 10 then local r = math.floor(item.type/10) if r >= 1 then doRemoveItem(item.uid, r * 10) doPlayerAddItem(cid, 5886, r) doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "You have created ".. r .." spool".. (r > 1 and "s" or "") .." of yarn.") end else doPlayerSendCancel(cid, "You need at least 10 giant spider silks.") end return true end
- Mapping Inspirations
-
Transformando Itens
Bom, fiz minha versão do script que entende se o jogador tem mais de 10 giant spider silk e calcula quantos spool of yarn podem ser feitos. Ou seja, se o jogador tiver 28 giant spider silk e der Use, ele irá receber 2 spool of yarn, mas ainda sobrarão 8 giant spider silk no inventário. function onUse(cid, item, fromPosition, itemEx, toPosition) if item.type >= 10 then local r = math.floor(item.type/10) if r >= 1 then doPlayerRemoveItem(cid, item.itemid, r * 10) doPlayerAddItem(cid, 5886, r) doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "You have created ".. r .." spool".. (r > 1 and "s" or "") .." of yarn.") end else doPlayerSendCancel(cid, "You need at least 10 giant spider silks.") end return true end
-
NPC Troca de Itens
Pô, gostei bastante. A ideia é bem legal. Seria legal uma segunda versão onde o NPC pede múltiplos itens e dá um só, por exemplo
-
Tibiaapi Pedido!
Você pode tentar pesquisar na internet por uma versão do tibiaapi abaixo de 8.41, mas já digo que não será "oficial" pois o projeto original foi criado na época que o protocolo era 8.41.