Histórico de Curtidas
-
Digoshow recebeu reputação de FreakTorres em (Resolvido)Remere's Map Editor - Mapa Escuro/Preto!@UP
Bom dia pessoal!
Então, eu desinstalei as DLL toda da Pasta RME, e com o instalador eu reparei, porem continua da mesma forma!
E Tipo, está assim com todos os Mapas que abro, sem duvida é algum botão, algum em forma de comando que apertei que deixou o mapa assim, já pesquisei aqui no forum sobre comandos, tentei todos que está disponível aqui mais continuo sem sucesso...se alguém souber de algum pista de como resolver isso agradeço!
@RESOLVIDO
Opa, resolvi mexer nele todo "riscos de bugar mais ainda" e acabei achando o Problema, e sim era algum botão de comando ou atalho que fez isso acontecer hehe..
Para quem ter o mesmo problema futuramente, para resolver basta ir em View e desmarcar a opção Only Show Modified ou simplesmente apertar CTRL+M, valeu galera,, já foi resolvido!
-
Digoshow recebeu reputação de FreakTorres em (Resolvido)Remere's Map Editor - Mapa Escuro/Preto!Alguém consegue entender o que aconteceu?
@UP
-
Digoshow recebeu reputação de FreakTorres em (Resolvido)Remere's Map Editor - Mapa Escuro/Preto!Pessoal, satisfação está de volta, estava com saudades já, mais agora fim de ano tenho mais tempo agora! hehe
Então, voltando hoje abri o RME para da uma olhada no Mapa que eu estou fazendo e resolvi tentar alguns comandos para ver se eu lembrava de alguns!
Tentando os comandos acabei percebendo que todo meu mapa ficou escuto, preto!
Eu consigo fazer aparecer dando Click com lado esquerdo do Mouse ou segurando Shift+Ctrl e circulando a área só, precisava fazer todo o mapa ficar visível novamente, alguém sabe se é algum comando, ou algo que eu possa fazer para resolver?
Agradeço REP+.
-
Digoshow recebeu reputação de Lurk em GesiorACC 2019 8.60 UPDATE 29/06/2019Tudo? Ou o Config.php? Olhei os outros arquivos..n sei se devo colocar email ou token neles tambem, mais o config.php esta certinho!
@Edite
Bom, fiz o download do Gesior com o Ultimo update para verificar, e contem alguns erros tipo..
Voce escolhe o item que quer comprar no Shop "Caso voce não tenha Premium Points voce aperta em Comprar Points" que te leva para uma Pagina com o seguinte erro..
o arquivo "buypoints.php" não veio no novo Update..
Ou seja, para o player comprar pontos neste update, ele tem que ir direto no menu "Donate"
E ao chegar na parte de Finalizar a compra, você é direcionado ao link: http://teste.servegame.com/dntpagseguro.php
Com o seguinte erro:
Teria como arrumar ae pra gente ? Valeu Obrigado!
@Edite
Consegui arrumar!
Vou explicar como que arruma para as pessoas não precisar fica matutando o tanto que fiquei!
Bom é bem simples e rapido!
Para resolver o 1 Problema do direcionamento da pagina que não existe, é so copiar e colar o Arquivo Donate.php e renomear para buypoints.php ficando 2 arquivos iguais só que com o nome diferente!
Para resolver o 2 Problema é so voce ativar o cURL no seu Xampp, pra isso entre em xampp/php e procure o arquivo php.ini assim que abrir o arquivo procure por ;extension=php_curl.dll e retirar o ; reinicia o Xampp e prontinho, problema resolvido!!!
Mais uma vez obrigado @Natanael Beckman por nos oferecer sempre o melhor! REP+ de novo que você merece!
-
Digoshow recebeu reputação de Deathstroke em {URGENTE} Abrir portas vivo fibraBom nunca tentei ligar um Servidor pela rede Wifi, já tive o modem da Vivo, mais eu ligava direto do modem atras do pc!
E já vou te adiantar, a Vivo ela não vai te dar suporte pra abrir a porta 80 caso queira abri-la para criar um site, pelomenos pra mim foi impossivel, tive que trocar pra uma rede local da minha cidade bem melhor! hehe
Bom é simples abrir a porta, abri as config do seu modem, abre a porta 7171>7171 UDP e depois abre 7171>7171 TCP e 7172>7172 UDP e também 7172>7172 TCP, feito isso, vai e abre a porta no firewall do windows do seu pc, e abre as mesmas portas que abriu no modem, ou seja AMBOS!
De uma reiniciadinha no pc hehe..esperou um pouco e tente se conectar, lembrando que no config.lua do seu servidor tem que está com o IP de lan, que você pega no site MEU IP, e pra você entrar no seu próprio servidor você vai usar outro IP, vai em cmd e digita "ipconfig" o ip que você vai usar para se conectar no próprio servidor é o que está na frente de Endereço IPv4: XXX.XXX.X.XXX
-
Digoshow deu reputação a WooX em Como fixar os itens nos slots corretos? - Tibia 8.60.Testei com a armor aqui e realmente não funcionou como deveria, eu havia testado apenas com o caso do shield e tinha funcionado, deveria funcionar pra você também (pelo menos no caso do shield).
Saber onde modificar até sei, mas não tenho o conhecimento em c++ pra fazer essa modificação.
-
Digoshow deu reputação a WooX em Como fixar os itens nos slots corretos? - Tibia 8.60.Carinha, estudei o seu caso e não existe 1 função em lua que identifique qual é o slot de determinado item, então a "solução" seria 1 script para cada slot.
Por exemplo, para shields você vai ter que usar este script em cada um dos shields existentes no movements.xml (caso haja algum shield que não esteja lá, você vai ter que adicionar).
function onEquip(cid, item, slot) if (slot == 5) then return true else return false end return true end Rainbow Shield usado como exemplo:
<!-- Rainbow Shield --> <movevent type="Equip" itemid="8905" slot="shield" level="100" event="script" value="slotshield.lua"> <vocation name="Knight"/> <vocation id="8" showInDescription="0"/> </movevent> Espero que tenha entendido o raciocínio, segue os scripts para os outros slots.
Helmets
function onEquip(cid, item, slot) if (slot == 1) then return true else return false end return true end Armors
function onEquip(cid, item, slot) if (slot == 4) then return true else return false end return true end Legs
function onEquip(cid, item, slot) if (slot == 7) then return true else return false end return true end Boots
function onEquip(cid, item, slot) if (slot == 8) then return true else return false end return true end Rings
function onEquip(cid, item, slot) if (slot == 9) then return true else return false end return true end Amuletos
function onEquip(cid, item, slot) if (slot == 2) then return true else return false end return true end Munições
function onEquip(cid, item, slot) if (slot == 10) then return true else return false end return true end Wands/Armas
function onEquip(cid, item, slot) if (slot == 6) then return true else return false end return true end
Lembrando: isso é uma PUTA duma GAMBIARRA, o correto seria fazer essas alterações direto nas sources.
-
Digoshow recebeu reputação de ZfooX em {URGENTE} Abrir portas vivo fibraCom certeza tem que abrir no seu pc também, enfim qualquer coisa nos avise!
-
Digoshow recebeu reputação de ZfooX em {URGENTE} Abrir portas vivo fibraSim, pela logica você tera que abrir a porta nos 2 e no pc também!
-
Digoshow recebeu reputação de ZfooX em {URGENTE} Abrir portas vivo fibraBom nunca tentei ligar um Servidor pela rede Wifi, já tive o modem da Vivo, mais eu ligava direto do modem atras do pc!
E já vou te adiantar, a Vivo ela não vai te dar suporte pra abrir a porta 80 caso queira abri-la para criar um site, pelomenos pra mim foi impossivel, tive que trocar pra uma rede local da minha cidade bem melhor! hehe
Bom é simples abrir a porta, abri as config do seu modem, abre a porta 7171>7171 UDP e depois abre 7171>7171 TCP e 7172>7172 UDP e também 7172>7172 TCP, feito isso, vai e abre a porta no firewall do windows do seu pc, e abre as mesmas portas que abriu no modem, ou seja AMBOS!
De uma reiniciadinha no pc hehe..esperou um pouco e tente se conectar, lembrando que no config.lua do seu servidor tem que está com o IP de lan, que você pega no site MEU IP, e pra você entrar no seu próprio servidor você vai usar outro IP, vai em cmd e digita "ipconfig" o ip que você vai usar para se conectar no próprio servidor é o que está na frente de Endereço IPv4: XXX.XXX.X.XXX
-
Digoshow recebeu reputação de Danyel Varejao em [System] Auto Loot PerfectSem duvida o melhor System de Auto Loot Danyel, parabens por atualizar o script e deixa-lo funcional, vai ajudar muita gente! REP+!
-
Digoshow deu reputação a Danyel Varejao em [System] Auto Loot Perfect~~~~~ * Auto Loot System 100% * ~~~~~ TFS 0.4 / TFS 0.3.7
Fala galerinha do Tibiaking, então, várias pessoas estão tendo problema com o sistema de autoloot, aqui vai um sistema que eu editei para melhorar o uso do mesmo. Sem muita enrolação vamos ao que interessa.
1° - Acesse a pasta data/lib e crie um arquivo chamado Auto_Loot.lua, coloque isso dentro do arquivo:
2° - Abra a pasta data/actions/scripts e crie um arquivo chamado Auto_Loot_Boost.lua, dentro dele adicione:
3° - Abra a pasta data/creaturescripts/scripts e crie um arquivo chamado Auto_Loot.lua, dentro dele adicione:
4° - Abra a pasta data/talkactions/scripts e crie um arquivo chamado Auto_Loot.lua, dentro dele adicione:
5° - Em data/actions/actions.xml adicione a seguinte tag:
<!-- Auto Loot --> <action itemid="7443" event="script" value="Auto_Loot_Boost.lua"/> Altere o numero 7443 caso queira mudar o id do item do seu auto loot boost.
6° - Em data/creaturescripts/creaturescripts.xml adicione a seguinte tag:
<!-- Auto Loot --> <event type="login" name="Auto_Loot_Login" event="script" value="Auto_Loot.lua"/> <event type="kill" name="Auto_Loot_Kill" event="script" value="Auto_Loot.lua"/> 7° - Em data/talkactions/talkactions.xml adicione a seguinte tag:
<!-- Auto Loot --> <talkaction access="0-4" words="/autoloot;!autoloot" event="script" value="Auto_Loot.lua"/>
Créditos
50% Killua(Vitor Bertolucci)
50% Danyel Varejão
-
Digoshow deu reputação a Vodkart em [Talk] Comando Mute/DesmuteEm talkactions/script
muteplayer.lua
local v = {} for k = 1, 100 do table.insert(v, createConditionObject(CONDITION_MUTED)) setConditionParam(v[k], CONDITION_PARAM_TICKS, k*60*1000) end function onSay(cid, words, param) if (words == "/mute") then local t = string.explode(param, ",") if param == '' then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end local player,time,pid = getPlayerByName(t[1]),t[2],getPlayerByNameWildcard(t[1]) if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player with this name doesn\'t exist or is offline.") return TRUE end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você mutou o jogador "..t[1].." por "..time.." minutos.") doAddCondition(player, v[tonumber(time)]) setPlayerStorageValue(player, 90000, os.time()+time*60) doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Você foi mutado por "..time.." minutos.") elseif (words == "/desmute") then if param == '' then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end local player = getPlayerByNameWildcard(param) if(not player)then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player not found.") return true end if getCreatureCondition(player, CONDITION_MUTED) == false then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "este jogador não está mutado.") return true end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você desmutou o jogador "..param..".") doRemoveCondition(player, CONDITION_MUTED) setPlayerStorageValue(player, 90000, -1) doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Você foi desmutado.") end return true end talkactions.xml <talkaction log="yes" words="/mute;/desmute" access="2" event="script" value="muteplayer.lua"/> Comando: /mute NOME,MINUTOS /desmute NOME Em creaturescript/script mute_check.lua local v = {} for k = 1, 100000 do table.insert(v, createConditionObject(CONDITION_MUTED)) setConditionParam(v[k], CONDITION_PARAM_TICKS, k*1000) end function onLogin(cid) if getPlayerStorageValue(cid, 90000) >= os.time() then doAddCondition(cid, v[tonumber(getPlayerStorageValue(cid, 90000) - os.time())]) end return TRUE end creaturescript.xml <event type="login" name="MutePlayer" event="script" value="mute_check.lua"/>
-
Digoshow deu reputação a Danyel Varejao em (Resolvido)Error CreatureScript - Item Por Level e VocaçãoAdiciona isso na lib lá e testa dnv.
tabela_storages = { filtrateString = function(str) local tb, x, old, last = {}, 0, 0, 0 local first, second, final = 0, 0, 0 if type(str) ~= "string" then return tb end for i = 2, #str-1 do if string.byte(str:sub(i,i)) == string.byte(':') then x, second, last = x+1, i-1, i+2 for t = last,#str-1 do if string.byte(str:sub(t,t)) == string.byte(',') then first = x == 1 and 2 or old old, final = t+2, t-1 local index, var = str:sub(first,second), str:sub(last,final) tb[tonumber(index) or tostring(index)] = tonumber(var) or tostring(var) break end end end end return tb end, translateIntoString = function(tb) local str = "" if type(tb) ~= "table" then return str end for i, t in pairs(tb) do str = str..i..": "..t..", " end str = "a"..str.."a" return tostring(str) end } function setPlayerTableStorage(cid, key, value) return doPlayerSetStorageValue(cid, key, tabela_storages.translateIntoString(value)) end function getPlayerTableStorage(cid, key) return tabela_storages.filtrateString(getPlayerStorageValue(cid, key)) end function setGlobalTableStorage(key, value) return setGlobalStorageValue(key, tabela_storages.translateIntoString(value)) end function getGlobalTableStorage(key) return tabela_storages.filtrateString(getGlobalStorageValue(key)) end function getStorageZero(storage) local sto = getGlobalStorageValue(storage) return sto > 0 and sto or 0 end function getPlayerStorageZero(cid, storage) local sto = getPlayerStorageValue(cid, storage) if tonumber(sto) then return tonumber(sto) > tonumber(0) and tonumber(sto) or tonumber(0) end return tonumber(0) end
-
Digoshow deu reputação a Danyel Varejao em (Resolvido)Error CreatureScript - Item Por Level e VocaçãoCreaturescripts.xml não é o script não rsrs
-
Digoshow deu reputação a Danyel Varejao em (Resolvido)Error CreatureScript - Item Por Level e VocaçãoIsso é um sistema de autoloot...
Certo, o erro mudou agr coloca isso daqui na mesma lib:
function countTable(table) local y = 0 if type(table) == "table" then for _ in pairs(table) do y = y + 1 end return y end return false end
-
Digoshow deu reputação a Danyel Varejao em (Resolvido)Error CreatureScript - Item Por Level e VocaçãoOlá, coloca isso na sua lib 050-function.
function getContainerItemsInfo(ContainerUID) local Table = {} if ContainerUID and ContainerUID > 0 then local Index = 0 for i = 0, getContainerSize(ContainerUID) - 1 do local Item = getContainerItem(ContainerUID,i) Index = Index + 1 Table[Index] = {uid = Item.uid, itemid = Item.itemid, quant = Item.type} end return Table end return false end
-
Digoshow recebeu reputação de Sleet em (Resolvido)Trocar town ID de um personagemUso um que achei aqui no Tibiaking mesmo, vamos lá.
data/movements/scripts, crie um arquivo.lua com nome de "Cidade Natal" que é o do exemplo aqui, e adicione isso dentro:
Agora vai em data/movements.xml e adicione essa tag:
Agora abra seu RME e adicione o teleporte, e no teleporte você tem que colocar uma actionid e você pode escolher a actionid de 30020 até a 30100, caso tenha mais de uma cidade,entendeu ?!
Vamos supor que você tenha colocado a actionid no teleporte 30021, feito isso é só colcoar as coordenadas do teleporte para o templo da cidade tambem e pronto!
Esse script foi testado em TFS 0.4 e funciona perfeitamente, abraços!
-
Digoshow deu reputação a WooX em Como fixar os itens nos slots corretos? - Tibia 8.60.Fico surpreso de nego realmente perder tempo mudando algo assim rs. Isso é só 1 capricho, 1 detalhe, não é 1 bug.
Eu não recomendo você mudar isso, muitos jogadores de 8.60 já estão acostumados com isso, inverter a ordem e usar a arma no lugar do shield, equipar bps no lugar da flecha etc. Mas se ainda assim, você insistir nessa, eu posso fazer 1 script pra você.
-
Digoshow recebeu reputação de kuasenada em E possível deixar o ot online sem abrir porta no roteador ? sem ser hamachiVia rádio? Então contate a central, e caso queira ter um site, você vai ter que pedir para eles abrirem a porta 80 tbm, portas necessária para abrir um servidor é :
Ambos no caso é UDP e TCP!
Caso eles recuse de abrir a porta 80, diz que você vai ser prejudicado assim, e diga que então vai ter que trocar de provedor, de uma apelada kkk..
-
Digoshow deu reputação a KotZletY em (Resolvido)Error CreatureScript - Item Por Level e Vocação@Digoshow não tem diferença, apenas um pouco identado:
Testei aqui, e o scripts está funcionando como deveria, o erro no console é devido a outro script, mais precisamente no callback onKill, dando erro nesse callback, retorna erro na morte do monstro/player, no caso do monstro, as vezes pode não retorna o exp.
O erro do script da print está interferindo no funcionamento do script acima.
O erro da print vem de algum mod, desabilite ou conserte, e teste!
-
Digoshow recebeu reputação de kuasenada em E possível deixar o ot online sem abrir porta no roteador ? sem ser hamachi1° Se você usa o modem Wi-Fi vai ter que abrir a porta nele, ele é o primeiro filtro, depois abre no seu Windows também!
2° Se você resetar o modem pelo botão pode ser que resete tudo ou muita coisa vai ser perdida, no caso no de casa, ao resetar desta forma a senha Wi-Fi e algumas outras configurações simples são resrtadas também, mais se você tiver conhecimento é fácil arrumar rápido, caso não tenha eu te aconselho a pedir para o técnico que trocou a senha do modem te passar, ou no mínimo diga a ele que você precisa abrir as portas no modem!
Obs: Já te aconselho, se for "via rádio" você vai ter que pedir para eles liberar a porta na central também amigão, boa sorte!
-
Digoshow deu reputação a LeoTK em Como fixar os itens nos slots corretos? - Tibia 8.60.bom quando eu vi de cara pensei que fosse alguma coisa no movements mas esta tudo certo então o negocio é esperar alguém que tenha uma ideia do que é para descobrir o que esta acontecendo boa sorte
-
Digoshow recebeu reputação de mattosknight em Porta que funciona como teleportBem simples.
Vai no seu rme, e na porta coloca o actionid 5432
Agora abra a pasta do seu otserv, data/action e em action.xml adiciona a seguinte tag:
Feito isso, agra vai até actions/scripts e cria um arquivo.lua com o nome de "porta teletransporte" e adiciona isso dentro:
Bom, está bem explicado no script mesmo, facil de configurar.
Eu testei no TFS 0.4 e está funcionando perfeitamente!
-
Digoshow deu reputação a Vodkart em [MODS] [8.6] Fire Storm Event - AutomáticoEvento 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.rar