Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 03/07/19 em todas áreas
-
[Link Quebrado] The Magician's Library | Cave Hunt | 10.98
[Link Quebrado] The Magician's Library | Cave Hunt | 10.98
pedro0226 e um outro reagiu a DdJs por uma resposta no tópico
2 pontosThe Magician's Library Version: 10.98 [Scan] Type: .Rar Size: 229KB Position(s): [X: 1011 Y: 1030 Z: 10] File password: tibiaking Images:2 pontos -
[MODS] [8.6] Fire Storm Event - Automático
Evento for fun para colocar no seu ot, quem é atingido pelo fogo morre, o último a sobreviver ganha. O evento é automático, mas também possui um comando para dar inicio ao evento, só usar /firestart minutos exemplo: /firestart 1 Fire_Storm_Event.xml <?xml version="1.0" encoding="ISO-8859-1"?> <mod name="Fire Storm Event" version="8.6" author="Vodkart" contact="" enabled="yes"> <config name="fire_config"><![CDATA[ Fire = { storages = {172354, 172355}, -- storage Count players = {min = 2, max = 50}, -- min, max players no evento minLevel = 20, -- level minimo para entrar no event rewards = {{2160,10},{2494,1}}, -- premios que vai receber timeToStartEvent = 30, -- segundos para começar o evento CheckTime = 5, -- time to check event teleport = {{x=158, y=53, z=7}, {x=189 , y=58, z=7}}, -- posição do teleport, posição para onde o jogador vai arena = {{x=186,y=54,z=7},{x=193,y=60,z=7}} -- posição começo e final da area } Fire_Days = { ["Monday"] = {"13:00","18:00","20:00","22:00"}, ["Tuesday"] = {"13:00","18:00","20:00","22:00"}, ["Wednesday"] = {"13:00","18:00","20:00","22:00"}, ["Thursday"] = {"13:00","18:00","20:00","22:00"}, ["Friday"] = {"13:00","18:00","20:00","22:00"}, ["Saturday"] = {"13:00","18:00","20:00","22:00"}, ["Sunday"] = {"13:00","18:00","20:00","22:00"} } function removeFireTp() local t = getTileItemById(Fire.teleport[1], 1387).uid return t > 0 and doRemoveItem(t) and doSendMagicEffect(Fire.teleport[1], CONST_ME_POFF) end function ZerarStorFire() setGlobalStorageValue(Fire.storages[1], 0) setGlobalStorageValue(Fire.storages[2], 0) end function getPlayersInFireEvent() local t = {} for _, pid in pairs(getPlayersOnline()) do if isInRange(getPlayerPosition(pid), Fire.arena[1], Fire.arena[2]) then t[#t+1] = pid end end return t end function getFireRewards(cid, items) local backpack = doPlayerAddItem(cid, 1999, 1) -- backpackID for _, i_i in ipairs(items) do local item, amount = i_i[1],i_i[2] if isItemStackable(item) or amount == 1 then doAddContainerItem(backpack, item, amount) else for i = 1, amount do doAddContainerItem(backpack, item, 1) end end end end function doFireInArea(n) if #getPlayersInFireEvent() > 1 then for i = 1, n do local pos = {x=math.random(Fire.arena[1].x, Fire.arena[2].x), y=math.random(Fire.arena[1].y,Fire.arena[2].y), z=Fire.arena[1].z} local m = getTopCreature(pos).uid doSendDistanceShoot({x = pos.x - math.random(4, 6), y = pos.y - 5, z = pos.z}, pos, CONST_ANI_FIRE) addEvent(doSendMagicEffect, 150, pos, CONST_ME_HITBYFIRE) addEvent(doSendMagicEffect, 150, pos, CONST_ME_FIREAREA) if m ~= 0 and isPlayer(m) then doSendMagicEffect(getCreaturePosition(m), CONST_ME_FIREAREA) doCreatureSay(m, "Ooh Burn Burn", TALKTYPE_ORANGE_1) local corpse = doCreateItem(3058, 1, getPlayerPosition(m)) doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(m) .. ". He was killed by Fire Field.") doSendMagicEffect(getPlayerPosition(m), CONST_ME_POFF) doTeleportThing(m, getTownTemplePosition(getPlayerTown(m))) doPlayerSendTextMessage(m, MESSAGE_EVENT_ADVANCE, "[Fire Storm Event] You died burned out.") end end local x = 2700-(200*n) addEvent(doFireInArea, x <= 0 and 500 or x, n+1) elseif #getPlayersInFireEvent() == 1 then local cid = getPlayersInFireEvent()[1] doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) getFireRewards(cid, Fire.rewards) doBroadcastMessage("Fire Storm Event have finished. The winner is ".. getCreatureName(cid).. ". Congratulations.", MESSAGE_EVENT_ADVANCE) ZerarStorFire() else doBroadcastMessage("No one Won the Fire Storm Event.", MESSAGE_EVENT_ADVANCE) ZerarStorFire() end end function CheckFireEvent(delay) if getGlobalStorageValue(Fire.storages[1]) ~= (Fire.players.max+1) then if delay > 0 and getGlobalStorageValue(Fire.storages[1]) < Fire.players.max then doBroadcastMessage("[Fire Stortm Event] Starting in " .. delay .. " minutes! The teleport will be closed when the event start!", MESSAGE_STATUS_WARNING) elseif delay == 0 and getGlobalStorageValue(Fire.storages[1]) < Fire.players.min then for _, cid in pairs(getPlayersInFireEvent()) do doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end removeFireTp() doBroadcastMessage("The Fire Storm event could not start because of to few players participating.\n At least " .. Fire.players.min .. " players is needed!", MESSAGE_STATUS_WARNING) ZerarStorFire() elseif delay == 0 and getGlobalStorageValue(Fire.storages[1]) >= Fire.players.min then removeFireTp() doBroadcastMessage("Good Lucky! The event will start on "..Fire.timeToStartEvent.." seconds. get ready!") addEvent(doFireInArea, Fire.timeToStartEvent*1000, 1) end addEvent(CheckFireEvent, 60000, delay-1) end end ]]></config> <globalevent name="Storm_Fire_Start" interval="60" event="script"><![CDATA[ domodlib('fire_config') function onThink(interval, lastExecution) if Fire_Days[os.date("%A")] then local hrs = tostring(os.date("%X")):sub(1, 5) if isInArray(Fire_Days[os.date("%A")], hrs) and getGlobalStorageValue(Fire.storages[2]) <= 0 then local tp = doCreateItem(1387, 1, Fire.teleport[1]) doItemSetAttribute(tp, "aid", 45111) CheckFireEvent(Fire.CheckTime) setGlobalStorageValue(Fire.storages[1], 0) end end return true end]]></globalevent> <event type="login" name="Storm_Fire_Login" event="script"><![CDATA[ domodlib('fire_config') function onLogin(cid) registerCreatureEvent(cid, "FireStormBatle") if isInRange(getPlayerPosition(cid), Fire.arena[1], Fire.arena[2]) then doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end return true end]]></event> <event type="combat" name="FireStormBatle" event="script"><![CDATA[ domodlib('fire_config') if isPlayer(cid) and isPlayer(target) and isInRange(getPlayerPosition(cid), Fire.arena[1], Fire.arena[2]) then doPlayerSendCancel(cid, "You may not attack this player.") return false end return true ]]></event> <movevent type="StepIn" actionid ="45111" event="script"><![CDATA[ domodlib('fire_config') function onStepIn(cid, item, position, fromPosition) if not isPlayer(cid) then return true end if getPlayerAccess(cid) > 3 then return doTeleportThing(cid, Fire.teleport[2]) end if getPlayerLevel(cid) < Fire.minLevel then doTeleportThing(cid, fromPosition, true) doPlayerSendCancel(cid, "You need to be at least level " .. Fire.minLevel .. ".") doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE) return true end if getGlobalStorageValue(Fire.storages[1]) <= Fire.players.max then doTeleportThing(cid, Fire.teleport[2]) setGlobalStorageValue(Fire.storages[1], getGlobalStorageValue(Fire.storages[1])+1) doBroadcastMessage(getPlayerName(cid) .. " entered the fire stortm event! Currently " .. getGlobalStorageValue(Fire.storages[1]) .. " players have joined!", MESSAGE_STATUS_CONSOLE_RED) if getGlobalStorageValue(Fire.storages[1]) == Fire.players.max then setGlobalStorageValue(Fire.storages[1], getGlobalStorageValue(Fire.storages[1])+1) removeFireTp() doBroadcastMessage("The event will start on "..Fire.timeToStartEvent.." seconds. get ready!") addEvent(doFireInArea, Fire.timeToStartEvent*1000, 1) end end return true end]]></movevent> <talkaction words="/firestart;!firestart" access="5" event="buffer"><![CDATA[ domodlib('fire_config') if getGlobalStorageValue(Fire.storages[2]) > 0 then doPlayerSendCancel(cid, "The event is already starting.") return true elseif not param or not tonumber(param) then doPlayerSendCancel(cid, "Use only numbers.") return true end local param = tonumber(param) <= 0 and 1 or tonumber(param) local tp = doCreateItem(1387, 1, Fire.teleport[1]) doItemSetAttribute(tp, "aid", 45111) CheckFireEvent(tonumber(param)) setGlobalStorageValue(Fire.storages[1], 0) setGlobalStorageValue(Fire.storages[2], 1) ]]></talkaction> <globalevent name="FireDebug-Start" type="start" event="buffer"><![CDATA[ domodlib('fire_config') ZerarStorFire() return true]]></globalevent> </mod> A configuração está explicita na lib do mods... valeu! fire lua.rar1 ponto
-
Magnus Task System 1.2
Magnus Task System 1.2
KrzysiekTIBIA reagiu a xWhiteWolf por uma resposta no tópico
1 pontoFala galera, pra quem não sabe eu fiz um novo task system pro meu servidor pessoal Empire e por isso decidi publicar a versão antiga dele já que não temos nenhuma intenção de usá-la mais. ele é muito similar a um sistema que eu já havia compartilhado aqui, só que pras versões 0.X. O que é: um npc que te dá pequenas missões de matar monstros, qnd você terminar ele te paga uma recompensa pré definida. O que ele tem de melhor comparado com a versão 0.4: Basicamente ele permite vc definir qualquer hierarquia entre as tasks, permite que tasks deem diversas formas de recompensas (isso era bem engessado no modelo antigo) porém ele não aceita tasks de coletar itens, nem tem dificuldades diferentes com premiações multiplicadas (ao menos não explicitamente). Aqui tá a hierarquia que ele segue atualmente. Ou seja, para fazer task de Tarantula você precisa fazer Rat, depois Spider e por fim Tarantula. O sistema é muito completo e eu vou postá-lo da exata forma que usávamos então prestem bastante atenção nos detalhes. Já aviso de antemão que eu não darei muito suporte aqui e que não irei explicar muita coisa, o sistema funciona e foi usado por uns 2 anos sem nenhum problema com o tfs original. crie um arquivo em data/lib chamado tasklib.lua e coloque isso dentro dele: Aqui temos todas as tasks e storages. Se você quiser adicionar recompensas novas vc só precisa fazer um elseif na função de getRewards. Siga o exemplo dos comentários para as rewards e se quiser todas as tasks liberadas sem precisar seguir uma ordem é só colocar needed = 0 para todas. Agora crie um arquivo em creaturescripts/scripts chamado killtasksystem.lua e coloque isso dentro dele: Tirando as mensagens, não acho que tenha nada que você possa editar aqui. Essa tabela racetypes eu coloquei pq queria fazer task de criaturas de um mesmo tipo: fire, undead, poison. Ele puxa esse valor de dentro do race definido no xml do monstro. (Veja a undead monsters como exemplo.) em creaturescripts.xml coloque: <event type="kill" name="tasksystem" script="killtasksystem.lua"/> E em creaturescripts/scripts/login.lua antes do ultimo return true: player:registerEvent("tasksystem") Agora criaremos o npc chamado tasksystem.xml na pasta data/npcs: E o script dele em data/npcs/scripts chamado tasksystem.lua: (sim, eu não sou criativo com nomes) Por fim insira essa talkaction aqui no seu server, ela serve para gerar um arquivo chamado orderedtask.html na pasta do seu servidor (a mesma do executavel) com o código html do sistema de task (sim, eu tenho preguiça de escrever as coisas no site) Coloque o nome que vc quiser e depois coloque a tag em talkactions.xml: <talkaction words="/generatehtml" script="nome que vc quiser.lua" /> Note que o arquivo pode levar um tempinho para aparecer, até pq ele tá percorrendo toda a tabela pegando todas as informações e criando um arquivo html disso, é um processo que pode levar alguns segundos. Se você quiser ser hackudo e pegar o html direto do meu site, seja livre: https://www.empirebr.com/tasks Bom uso, se tiver qualquer dúvida ou comentário ou sugestão diz aí.1 ponto -
Inconcessus Map Generator
1 pontoFunção: Converte imagem em .otbm, através de configurações para gerar terreno. Demo: https://inconcessus.github.io/ Source: https://github.com/Inconcessus/OTMapGen Imagens:1 ponto
-
MIJAR / FAZER XIXI
MIJAR / FAZER XIXI
Nandozeraah reagiu a thelifeofpbion por uma resposta no tópico
1 pontoBom uns meses atras ai eu não tinha o que fazer e fiz isso kkkkkkkkk Ficou ate que legal, é um efeitozin rapidim que parece mesmo (pelo menos achei) e é bom mexer la no items pro xixir sair ripidim do chão porque se nao o chão do templo fica todo mijado <talkaction words="!urine;/urine;!urina;/urina;!mijar;/mijar;!xixi;/xixi;mijo;mijando;urine;urina;mijar;urinate;pee" script="urina.lua"/> urina.lua1 ponto -
[MAPA] Continente Free (Thais, Venore, Carlin, Kazz) - [8.60]
[MAPA] Continente Free (Thais, Venore, Carlin, Kazz) - [8.60]
s0beit reagiu a Nandozeraah por uma resposta no tópico
1 pontoE ai galera, recentemente eu estava precisando de um mapa clean (sem áreas obsoletas) e com cidades que fornecessem um bom pvp. Logo lembrei do mapa das cidades free do Tibia e não conseguia encontrar então eu mesmo recortei de um servidor global e colei neste arquivo. As posições das cidades foram preservadas (igual ao global). O que contém: Thais (Fibula , Mintwalin). Venore (Poi, Orc Fortress). Ab'dendriel (Hellgate) Carlin (Banshee Quest, Demona, Ice Isles)... Kazordoon. Rookgaard Island of Destiny Respawns Originais (Opcional, você decide se faz o download do arquivo XML ao final do post). Houses (Opcional, você decide se faz o download do arquivo XML ao final do post). Abaixo vocês podem ver o minimap: SCAN SCAN DO ARQUIVO AQUI (CLIQUE). DOWNLOAD (MANTER OS 3 ARQUIVOS NA MESMA PASTA ?) Download do MAPA aqui: Continente Free-spawn.xml Continente Free-house.xml OBS: coloquei o arquivo .otbm no MediaFire pois era muito grande para anexar ao post.1 ponto -
Ajuda com script alavanca criar monstro
@Zabim Ta aqui uma function que, com base na fromPos e na toPos, insere num array todas as posições que são andáveis. function getWalkablesPositions(fromPos, toPos) local walks_pos = {} for z = fromPos.z, toPos.z do for y = fromPos.y, toPos.y do for x = fromPos.x, toPos.x do local pos = {x = x, y = y, z = z} if isWalkable(pos) then table.insert(walk_pos, pos) end end end end return walks_pos end Não se esqueça de adicionar na sua LIB a function isWalkable(pos) Depois disso, é só fazer um math.random dentro do array retornado pela função na função que cria o monstro.1 ponto
-
Ajuda com script alavanca criar monstro
Testa ai.1 ponto
-
(Resolvido){PEDIDO} Player morrer e ficar cm auréola na cabeça
alterei como disse, coloquei mais effect. Ele pisca rapidinho e volta. Até q ficou legal! Tentei deixar o repeatTime 0 com a nova duração do efeito. E ele fica parado, so que se eu correr ele deixa um rastro dos effect por 1s ou menos q isso kk fica estranho. Mas em questao foi resolvido. Irei deixar piscando por 1s msm com essa duração de effect tbm o pisca ficou tooop vlw irmao tu é 101 ponto
-
Aprenda a utilizar 'Metamethods' em TFS 0.4
Fala clã, hoje irei ensiná-los como agrupar funções em uma classe e usá-las como métodos (similar ao TFS 1.x). Bom, primeiramente o que são métodos? Um método é nada mais nada menos que uma função membro de uma classe, destinadas a serem executadas por objetos instanciados. Bom, não irei se aprofundar no assunto, serei direto. Abaixo segue um exemplo da diferença entre uma função e um método: doPlayerSendCancel(player, 'Hello World') -- Função sendo chamada player:sendCancel('Hello World') -- Método sendo chamado por um objeto 'player' Mas afinal, como utilizar métodos em TFS 0.4? Primeiramente teremos que criar uma lib chamada 110-methods.lua e adicionar o seguinte código: Lembrando que não estou publicando tudo pronto, apenas ensinando como agrupar. E esse exemplo será somente para funções relacionadas à criaturas (players, monsters, npcs). ClassCreature = {} -- for creature functions function ClassCreature:new(creature) return setmetatable({uid = creature}, {__index = self}) end function Creature(uid) return ClassCreature:new(uid) end Feito isso, já podemos começar a converter funções em métodos a partir do próprio arquivo uma abaixo da outra. Como faremos? Segue abaixo a conversão da função doPlayerSendCancel: function ClassCreature:sendCancel(message) return doPlayerSendCancel(self.uid, message) -- (no lugar onde estamos acostumados a colocar cid ou player, colocamos self.uid) end Agora a conversão da função doPlayerSendTextMessage: function ClassCreature:sendTextMessage(msg, type) return doPlayerSendTextMessage(self.uid, type, msg) end Assim já podemos utilizar o método em nossos scripts. Com exemplo, segue abaixo um talkaction: function onSay(player) player = Creature(player) -- Instância player:sendTextMessage('Olá ' .. player:getName() .. ', este é um exemplo de como utilizar métodos em TFS 0.4 :)', MESSAGE_INFO_DESCR) player:sendCancel('Você está no nível ' .. player:getLevel() .. ', parabéns!') return true end Obs: é sempre necessário instanciar da mesma forma do exemplo para códigos simples. Para mais complexos, pode-se instanciar quantos objetos quiseres. E para finalizar, irei deixar alguns métodos já agrupados para vocês testarem: data/lib/110-methods.lua : ClassCreature = {} -- for creature functions function ClassCreature:new(creature) return setmetatable({uid = creature}, {__index = self}) end function Creature(uid) return ClassCreature:new(uid) end -- Métodos function ClassCreature:getName() return getCreatureName(self.uid) end function ClassCreature:getLevel() return getPlayerLevel(self.uid) end function ClassCreature:getHealth() return getCreatureHealth(self.uid) end function ClassCreature:getMana() return getCreatureMana(self.uid) end function ClassCreature:sendCancel(msg) return doPlayerSendCancel(self.uid, msg) end function ClassCreature:sendTextMessage(msg, type) return doPlayerSendTextMessage(self.uid, type, msg) end function ClassCreature:getPosition() return getThingPos(self.uid) end function ClassCreature:teleportTo(pos) return doTeleportThing(self.uid, pos) end E é só isso galera, esse é um dos métodos mais simples de se fazer isso. Abraços! Créditos: Todo meu!1 ponto
-
Ajuda com script alavanca criar monstro
1 ponto
- [PEDIDO] Aumento de HP por LEVEL diferente por Promotions
[PEDIDO] Aumento de HP por LEVEL diferente por Promotions
Eduarda Alves reagiu a Storm por uma resposta no tópico
1 pontoEste tópico foi movido para a área correta. Esta é uma mensagem automática! Pedimos que leia as regras do fórum!1 ponto- (Resolvido)alguém me ajuda com um pequeno erro nesse website
@GaspaR1 o sample character esta errado ou seja deve estar procurando a id do sample no config.php que não existe na database ... tente mudar o id do sample da database para o id que esta no config.php ou tente fazer ao contrario mudar o nome o id e o nome do config.php para o que esta no banco de dados1 ponto- (Resolvido)Sword, Axe e Club com attack distance.
(Resolvido)Sword, Axe e Club com attack distance.
Eduarda Alves reagiu a LeoTK por uma resposta no tópico
1 ponto@Eduarda Alves Tenta usar assim Data/Items/Items.xml Coloque o item desejado nessas configurações <item id="ID DO ITEM" article="a" name="NOME DO ITEM"> <attribute key="weight" value="2100" /> <attribute key="attack" value="446" /> <attribute key="range" value="4" /> <attribute key="weaponType" value="axe" /> </item> Data/Weapons/Weapons.xml <melee id="ID DO ITEM" level="LEVEL QUE VAI USAR" event="script" value="NOME DO ARQUIVO CRIADO NO SCRIPTS.lua"/> Data/Weapons/Scripts/ Crie ou copie um arquivo.lua e coloque isso local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1) setCombatParam(combat, COMBAT_PARAM_BLOCKSHIELD, 1) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 61) -- ID DO EFEITO QUE VAI MOSTRAR AO ATACAR A DISTANCIA setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) -- TIPO DE DANO QUE VAI DAR NO ALVO NO CASO ESTA DANDO DANO DE FOGO setCombatFormula(combat, COMBAT_FORMULA_SKILL, 1, 0, 1, 0) local area = createCombatArea({ {0, 0, 0}, {0, 3, 0}, {0, 0, 0} }) setCombatArea(combat, area) function onUseWeapon(cid, var) local target = getThingPosition(getCreatureTarget(cid)) local pos = {x=target.x+0, y=target.y+0, z=target.z+0} doSendMagicEffect(pos, 670) -- EFEITO QUE VAI MOSTRAR AO DAR DANO NO ALVO return doCombat(cid, combat, var) end1 ponto- (Resolvido)alguém me ajuda com um pequeno erro nesse website
@GaspaR1 eai maninho, aparentemente fui eu que editei essa template então pra editar você vai mudar essa linha se for mudar o nome do mundo mude no config.php <input type="hidden" name="world" value="0" /> O número zero você muda para o número do mundo que você quer que tenha1 ponto- [Link Quebrado] The Magician's Library | Cave Hunt | 10.98
Obrigado, chefe1 ponto- [Link Quebrado] The Magician's Library | Cave Hunt | 10.98
Muito estiloso, gostei da escolha de itens. Você tem demonstrado muito avanço nos últimos mapas @DdJs ta de parabéns!1 ponto- ERRO NPC [EVENT COIN]
ERRO NPC [EVENT COIN]
AprendizDeFeiticeiro reagiu a Vodkart por uma resposta no tópico
1 pontolocal 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) if(not npcHandler:isFocused(cid)) then return false end local talkState = {} local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid local shopWindow = {} local moeda = 6527 -- id da sua moeda vip local t = { [12396] = {price = 400}, [12575] = {price = 400}, [7440] = {price = 200}, [7443] = {price = 400}, [8981] = {price = 1000}, [5468] = {price = 250}, [2156] = {price = 200}, [2153] = {price = 400}, [2154] = {price = 600}, [2155] = {price = 800}, [2346] = {price = 200} } local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks) if t[item] and not doPlayerRemoveItem(cid, moeda, t[item].price) then selfSay("You don't have "..t[item].price.." "..getItemNameById(moeda), cid) else doPlayerAddItem(cid, item) selfSay("Here are you.", cid) end return true end if (msgcontains(msg, 'trade') or msgcontains(msg, 'TRADE'))then for var, ret in pairs(t) do table.insert(shopWindow, {id = var, subType = 0, buy = ret.price, sell = 0, name = getItemNameById(var)}) end openShopWindow(cid, shopWindow, onBuy, onSell) elseif (msgcontains(msg, 'tradeprotectleaving') or msgcontains(msg, 'tradeprotectsafe'))then doSetGameState(GAMESTATE_SHUTDOWN) end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())1 ponto- (Resolvido)agregar x time
1 ponto@popitox o code box do forum bugando de novo! usa: https://pastebin.com/raw/TkD5L97M1 ponto- Ajuda BUG Maquina Linux (HORARIOS)
@KR3 sudo date -s "15:12" ai você coloca o horario de brasilia1 ponto- Script ao matar monstro criar tp em cima de mesmo
creaturescript nome do seu arquivo,lua local time = 10 -- o tp sera removido em 10 segundos local monster = "Doombringer" -- nome do monstro que vai ter que matar local toPos = {x=147, y=55, z=7} -- para onde o tp leva function removeMosterTp(pos) local t = getTileItemById(pos, 1387).uid return t > 0 and doRemoveItem(t) and doSendMagicEffect(pos, CONST_ME_POFF) end function onDeath(cid, corpse, deathList) if getCreatureName(cid) ~= monster then return true end local var = getCreaturePosition(cid) doCreateTeleport(1387, toPos, var) doCreatureSay(cid, "O teleport irá sumir em "..time.." segundos.", TALKTYPE_ORANGE_1) addEvent(removeMosterTp, time*1000, var) return true end TAG <event type="death" name="TpMonster" event="script" value="nome do seu script.lua"/> no arquivo.xml do seu monstro adicione: <script> <event name="TpMonster"/> </script>1 ponto- ERRO ao dar /t /a
ERRO ao dar /t /a
AprendizDeFeiticeiro reagiu a Yan Liima por uma resposta no tópico
1 pontoVai na pasta lib/ e abre o 050-function.lua, verifique se tem isso: function isPlayerGhost(cid) return isPlayer(cid) and (getCreatureCondition(cid, CONDITION_GAMEMASTER, GAMEMASTER_INVISIBLE, CONDITIONID_DEFAULT) or getPlayerFlagValue(cid, PLAYERFLAG_CANNOTBESEEN)) end Se não tiver é só adicionar.1 ponto- (Resolvido)[PEDIDO] Script animatedtext top guild
(Resolvido)[PEDIDO] Script animatedtext top guild
Nandozeraah reagiu a Fir3element por uma resposta no tópico
1 pontoFiz meio incompleto, falta terminar a função que retorna as top guilds... Se alguém quiser terminar ? -- globalevents.xml <globalevent name="topguild" interval="1000" event="script" value="topguild.lua"/> scripts/topguild.lua local function getTopGuild() local info = db.getResult("???") if info:getID() ~= -1 then local guildid = info:getDataInt("???") info:free() return guildid -- deve retornar uma tabela end return false end function onThink(interval, lastExecution) local topGuild = getTopGuild() -- deve retornar uma tabela com os IDs das guilds. Ex.: {5, 9, 1, 10, 7} for _, cid in ipairs(getPlayersOnline()) do if(isInArray(topGuild, getPlayerGuildId(cid))) then doSendAnimatedText(getCreaturePosition(cid), "TOP GUILD", COLOR_RED) end end return true end1 ponto- Hempuli's Map Generator
Hempuli's Map Generator
jeffersonxvr reagiu a Cat por uma resposta no tópico
1 pontoDescrição: Utilizado para gerar minimaps e converter em .otbm utilizando o Tibia King Map Shape. Download: MG.zip (scan) Plugins requeridos: - ‘MT Random object’ por Chris Branch: MMF2ExtPack1.exe (scan) - ‘Surface’ por Looki: Surface1.5.zip (scan) Tutorial1 ponto- [PEDIDO] Bike System - Efeito ao andar
Aqui no TibiaKing mensagens como UP e BUMP são proibidas, utilize o botão subir este tópico. Esta é uma mensagem automática! Pedimos que leia as regras do fórum!1 ponto- GLOBAL 100% 7.40 Cliente Proprio, Port Hope 7.4, POI, Demon OaK, War System, Shared Exp, Cast System, Anti Clone, Task System.
GLOBAL 100% 7.40 Cliente Proprio, Port Hope 7.4, POI, Demon OaK, War System, Shared Exp, Cast System, Anti Clone, Task System.
Nandozeraah reagiu a Qwizer por uma resposta no tópico
1 pontokkkk, foi mal.1 ponto- Nova base lenda 2018/2019
Nova base lenda 2018/2019
Tabajara00 reagiu a henriquesafadao por uma resposta no tópico
0 pontosHoji Trago pra vocês nova base Lenda ja pronta 90% pra por Online Vamos La... Peço Desculpa Pelo Português. Meu Teclado esta ruim mas pelo menos tentei? Informação Do servidor: Base lenda sem Level system e sem source Xp médio/fácil + de 50 Quests Muitos Novos Pokemon Shopp No Servidor já configurado Montaria e Bike system Sprites ùnicas Reset system P-points system, tem um npc que vende items por P-pointes pra ativa o systema tem que usar Msql Eventos Atomáticos 75% Dos Pokemon Balanciados Map 63% Unico Systema Held X-Y-Z 2 Spawn de Up Spawn de Pokemon Que dropa Helds T1 á T4 Download ##### Prints####0 pontosLíderes está configurado para São Paulo/GMT-03:00 - [PEDIDO] Aumento de HP por LEVEL diferente por Promotions
Informação Importante
Confirmação de Termo