Ir para conteúdo
Banner com Efeitos

avalax

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    avalax recebeu reputação de MonkeyDLuffy em ITEM COMPRADO NO SHOP NÃO CHEGA.   
    coloca no shop.lua essa aki 
     
     
    function onThink(interval, lastExecution, thinkInterval)   local result = db.getResult("SELECT * FROM shop_history WHERE `processed` = 0;")   if(result:getID() ~= -1) then while(true) do cid = getCreatureByName(tostring(result:getDataString("player"))) product = tonumber(result:getDataInt("product")) itemr = db.getResult("SELECT * FROM shop_offer WHERE `id` = "..product..";") if isPlayer(cid) then local id = tonumber(itemr:getDataInt("item")) local tid = tonumber(result:getDataInt("id")) local count = tonumber(itemr:getDataInt("count")) local tipe = tonumber(itemr:getDataInt("type")) local productn = tostring(itemr:getDataString("name")) if isInArray({5,8},tipe) then if getPlayerFreeCap(cid) >= getItemWeightById(id, count) then if isContainer(getPlayerSlotItem(cid, 3).uid) then received = doAddContainerItem(getPlayerSlotItem(cid, 3).uid, id,count) if received then doPlayerSendTextMessage(cid,19, "Você recebeu >> "..productn.." << da nossa loja") db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";") else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço suficiente no recipiente para receber >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem um recipiente para receber >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem capacidade suficiente para receber >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)") end elseif isInArray({6,7},tipe) then if tipe == 6 then bcap = 8 bid = 1987 elseif tipe == 7 then bcap = 20 bid = 1988 end if isItemRune(id) then count = 1 end if getPlayerFreeCap(cid) >= (getItemWeightById(1987, 1) + getItemWeightById(id,count * bcap)) then local bag = doCreateItemEx(bid, 1) for i = 1,bcap do doAddContainerItem(bag, id, count) end received = doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, bag) if received == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid,19, "Você recebeu >> "..productn.." << da nossa loja") db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";") else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço suficiente para receber >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem capacidade suficiente para receber >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)") end end end itemr:free() if not(result:next()) then break end end result:free() end return true end
  2. Gostei
    avalax deu reputação a psychonaut em [Heal] A partir de x porcentagem do life   
    Deu certo não, pra quem quiser tentar, não da erro no distro, só não ativa e falta fazer um evento pra repetir a cada 1seg por 30seg:
    local duracao = 30 --- duracao da verificacao local duracaoefeito = 30 --- duracao do efeito de cura local vidacurada = 4 --- porcentagem de vida que vai sendo curada --- falta repetir a cada segundo por 30 segundos, e fazer funcionar hueehehueheu function onCastSpell(creature, var) doPlayerSendTextMessage(cid,22,"Nos próximos 30 segundos, se a vida abaixar para menos de 20%, você sera curado!") if isPlayer(cid) and getCreatureMaxHealth(cid)*0.2 >= getCreatureHealth(cid) then local max_vida = getCreatureMaxHealth(cid) local vidaatual = getCreatureHealth(cid) doPlayerSendTextMessage(cid,22,"Sua magia foi ativada!") doCreatureAddHealth(cid, (max_vida*(vidaatual/100))) local cpos = getPlayerPosition(cid) local function onCastSpell2(parameters) doCreatureAddHealth(cid, (max_vida*(vidacurada/100))) doSendMagicEffect(cpos, 1) doSendMagicEffect(cpos, 53) end local parameters = {cid = cid, combat = combat, var = var} for i = 0, math.max(duracaoefeito, 1) - 1 do addEvent(onCastSpell2, (duracao*100) * i, parameters) end return true end end
  3. Negativo
    avalax recebeu reputação de Snowsz em Adicionar cooldown em spell   
    up!
  4. Gostei
    avalax deu reputação a Danves em (Resolvido)[SPELL] HEALAR 2 PLAYER AO MESMO TEMPO   
    Só ir mudando o posx e posy até ficar no local que deseja.


  5. Gostei
    avalax deu reputação a Danves em (Resolvido)[SPELL] HEALAR 2 PLAYER AO MESMO TEMPO   
    Faça bom proveito.


     
  6. Gostei
    avalax deu reputação a Danves em (Resolvido)[Pedido] potions healando de acordo com o level ou ml   
    Configure a rate que multiplica pelo level da respectiva health potion na tabela "POTIONS" onde tem "rate = x".
    Aqui funcionou, mas não sei se tem algo diferente da sua versão.



  7. Gostei
    avalax recebeu reputação de SHADOWBREACK em Bug no Shop Gesior 0.3.8   
    tenta essa ai essa funciona 
     
    function onThink(interval, lastExecution, thinkInterval)   local result = db.getResult("SELECT * FROM shop_history WHERE `processed` = 0;")   if(result:getID() ~= -1) then while(true) do cid = getCreatureByName(tostring(result:getDataString("player"))) product = tonumber(result:getDataInt("product")) itemr = db.getResult("SELECT * FROM shop_offer WHERE `id` = "..product..";") if isPlayer(cid) then local id = tonumber(itemr:getDataInt("item")) local tid = tonumber(result:getDataInt("id")) local count = tonumber(itemr:getDataInt("count")) local tipe = tonumber(itemr:getDataInt("type")) local productn = tostring(itemr:getDataString("name")) if isInArray({5,8},tipe) then if getPlayerFreeCap(cid) >= getItemWeightById(id, count) then if isContainer(getPlayerSlotItem(cid, 3).uid) then received = doAddContainerItem(getPlayerSlotItem(cid, 3).uid, id,count) if received then doPlayerSendTextMessage(cid,19, "Você recebeu >> "..productn.." << da nossa loja") db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";") else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço suficiente no recipiente para receber >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem um recipiente para receber >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem capacidade suficiente para receber >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)") end elseif isInArray({6,7},tipe) then if tipe == 6 then bcap = 8 bid = 1987 elseif tipe == 7 then bcap = 20 bid = 1988 end if isItemRune(id) then count = 1 end if getPlayerFreeCap(cid) >= (getItemWeightById(1987, 1) + getItemWeightById(id,count * bcap)) then local bag = doCreateItemEx(bid, 1) for i = 1,bcap do doAddContainerItem(bag, id, count) end received = doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, bag) if received == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid,19, "Você recebeu >> "..productn.." << da nossa loja") db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";") else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço suficiente para receber >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem capacidade suficiente para receber >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)") end end end itemr:free() if not(result:next()) then break end end result:free() end return true end
    se conseguir da um rep ai
  8. Gostei
    avalax recebeu reputação de rafitys em Bug no Shop Gesior 0.3.8   
    tenta essa ai essa funciona 
     
    function onThink(interval, lastExecution, thinkInterval)   local result = db.getResult("SELECT * FROM shop_history WHERE `processed` = 0;")   if(result:getID() ~= -1) then while(true) do cid = getCreatureByName(tostring(result:getDataString("player"))) product = tonumber(result:getDataInt("product")) itemr = db.getResult("SELECT * FROM shop_offer WHERE `id` = "..product..";") if isPlayer(cid) then local id = tonumber(itemr:getDataInt("item")) local tid = tonumber(result:getDataInt("id")) local count = tonumber(itemr:getDataInt("count")) local tipe = tonumber(itemr:getDataInt("type")) local productn = tostring(itemr:getDataString("name")) if isInArray({5,8},tipe) then if getPlayerFreeCap(cid) >= getItemWeightById(id, count) then if isContainer(getPlayerSlotItem(cid, 3).uid) then received = doAddContainerItem(getPlayerSlotItem(cid, 3).uid, id,count) if received then doPlayerSendTextMessage(cid,19, "Você recebeu >> "..productn.." << da nossa loja") db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";") else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço suficiente no recipiente para receber >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem um recipiente para receber >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem capacidade suficiente para receber >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)") end elseif isInArray({6,7},tipe) then if tipe == 6 then bcap = 8 bid = 1987 elseif tipe == 7 then bcap = 20 bid = 1988 end if isItemRune(id) then count = 1 end if getPlayerFreeCap(cid) >= (getItemWeightById(1987, 1) + getItemWeightById(id,count * bcap)) then local bag = doCreateItemEx(bid, 1) for i = 1,bcap do doAddContainerItem(bag, id, count) end received = doPlayerAddItemEx(getPlayerSlotItem(cid, 3).uid, bag) if received == RETURNVALUE_NOERROR then doPlayerSendTextMessage(cid,19, "Você recebeu >> "..productn.." << da nossa loja") db.executeQuery("UPDATE `shop_history` SET `processed`='1' WHERE id = " .. tid .. ";") else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem espaço suficiente para receber >> "..productn.." <<") end else doPlayerSendTextMessage(cid,19, "Desculpe, você não tem capacidade suficiente para receber >> "..productn.." << (You need: "..getItemWeightById(id, count).." Capacity)") end end end itemr:free() if not(result:next()) then break end end result:free() end return true end
    se conseguir da um rep ai
  9. Gostei
    avalax deu reputação a D i M i T r E s C u em (Resolvido){Pedido} Lista de cores   
    AQUI AMIGO
     
    Cor / Numero da cor
     
    COLOR_BLACK = 0 COLOR_BLUE = 5 COLOR_GREEN = 18 COLOR_TEAL = 35 COLOR_LIGHTGREEN = 66 COLOR_DARKBROWN = 78 COLOR_LIGHTBLUE = 89 COLOR_DARKPURPLE = 112 COLOR_BROWN = 120 COLOR_GREY = 129 COLOR_DARKRED = 144 COLOR_DARKPINK = 152 COLOR_PURPLE = 154 COLOR_DARKORANGE = 156 COLOR_RED = 180 COLOR_PINK = 190 COLOR_ORANGE = 192 COLOR_DARKYELLOW = 205 COLOR_YELLOW = 210 COLOR_WHITE = 215 COLOR_NONE = 255
  10. Gostei
    avalax deu reputação a Tuka em SPELL - Hiraishin Jutsu Seal   
    tem como vc colocar pra 10 segundos a o item do caso ai é [2335] sumir pfv rep +
  11. Negativo
    Porq ?
  12. Gostei
    avalax deu reputação a ManoTobira em [Action] Hiraishin Kunai   
    Esse sistema é o da hiraishin kunai uma kunai que teleporta para position que voce escolhe vamos lá
     
    Em Actions/Scripts/ Copie um Arquivo.lua e renomeie para hiraishin apague tudo e coloque a seguinte script:
     



     
    em Actions.xml Adicione a seguinte tag:
    <action itemid="7382" event="script" value="hiraishin.lua" allowfaruse="1"/> explicando
     
    local vocs = {250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261} --- aqui é o id das voc que pode usar a kunai
     
    local parede = {1030, 1029, 1025, 1026, 1027, 1259, 1028, 1032, 1034, 1033, 1536, 1533, 873, 919, 874, 1037, 4472, 4475, 4471, 3388, 3373, 3363, 3398, 3408, 3417, 3420, 3407, 3368, 2701, 5130, 6170, 6166, 1596}
    são as parede que não podem passar  etc...
     

     
    Créditos
    Luan Mello
  13. Gostei
    avalax deu reputação a Yugami em Naruto,Sasuke e Kakashi The Last   
    bom é +- esses dias tava sem nada pra fazer,ai ouvi fala sobre o filme do Naruto The Last,ai vi um Nto com umas Spriters e vi que por enquanto éra o Unico com as Spriters ai eu quis fazer pelo menos 1s 3 Spriters do filme,mas como eu n so Spriter ou coisa do tipo não fico Bunita né...,mas queria ouvi a Opnião do Povo do TK,não fis ela do 0 mas editei augumas coisas só. como o cabelo a roupa...
     

  14. Gostei
    avalax deu reputação a Absolute em [Castle War 24H] Conquiste o trono!   
    Fala galera linduxa do TK; hoje trago a vocês o tão desejado CASTLE WAR 24 HORAS, isto gera disputa intensa entre as guilds de seu servidor, atraindo assim mais jogadores que se interessam por guerras e seus demais sistemas! Modificado e com funções diferentes, no tópico ensinarei como instalar e como funciona.
     
     

     
     
    Como funciona? WOOOOOOOOW!
     
    Há um portal 24h aberto em algum lugar do seu mapa que ficará com o castle disponível 24h (avá).
    Quando uma guild qualquer acessar o portal do castelo, irá aparecer para o servidor que a X guild está tentando dominar o castelo, então o líde da guild dominante atual irá dizer !gocastle para teleportar ao castelo e defende-lo.
    O Objetivo para conquista do mesmo é invadi-lo derrotar os defensor da guild atual para abrir passagem, digamos assim, e subir ao trono, quando um membro da guild invadir o templo do trono e subir no mesmo a antiga guild dominadora é teleportada para o templo e o castelo fica sob domínio da nova guild.
    Você poderá colocar como premiação acesso a áreas exclusivas do castelo, no caso hunts e cia. (Fica a vosso critério)
     
    Evento testado nas versões 8.6; 9.6; 9.83; 9.86!
     
    Observação: 
    Comando !gocastle faz com que o líder possa teleportar todos os membros da sua guild online para perto dele, desde que ele esteja no castle. Comando pode ser usado a cada 3 horas (exhausted).  
     
     
     
     
    Vamos aos scripts do sistema;
     
    Em data/actions/scripts crie um arquivo com o nome de naviocastle.lua e coloque dentro:
    function onUse(cid, item, fromPosition, itemEx, toPosition) if(item.actionid == 65500) then if getTopCreature({x=32464,y=32378,z=5}).uid > 0 then doTeleportThing(getTopCreature({x=32464,y=32378,z=5}).uid, {x=32526,y=32421,z=5}) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) else doPlayerSendCancel(cid, "Você precisa estar em cima do tapete.") return true end elseif (item.actionid == 65501) then if getTopCreature({x=32526,y=32421,z=5}).uid > 0 then doTeleportThing(getTopCreature({x=32526,y=32421,z=5}).uid, {x=32464,y=32378,z=5}) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) else doPlayerSendCancel(cid, "Você precisa estar em cima do tapete.") end end return true end


     
     
     
    Em actions.xml adicione a seguinte linha:
    <action actionid="65500-65501" event="script" value="naviocastle.lua"/> Pós feito isto, em data/lib crie um arquivo com o nome de 015-COH e adicione dentro dele:
    -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- // COH_PUSHTIME = 10800 -- Tempo (em segundos) de exhausted para usar o comando !gocastle - Padrão (3 horas) COH_AREA = {{x = 32458, y = 32332, z = 7}, {x = 32558, y = 32429, z = 7}} -- Canto superior esquerdo / inferior direito do Castle -- // Não mexa daqui para baixo COH_STATUS = 201320111714 COH_PREPARE1 = 201320111715 COH_PUSHSTOR = 201320111716 COH_PREPARE2 = 201320111717 function doCastleRemoveEnemies() for index, creature in ipairs(getPlayersOnline()) do if isInArea(getThingPos(creature), COH_AREA[1], COH_AREA[2]) then if getPlayerGuildName(creature) ~= getGlobalStorageValue(COH_STATUS) then doTeleportThing(creature, getTownTemplePosition(getPlayerTown(creature))) end end end return true end Proximo passo, em data/monster.xml adicione a seguinte linha:
    <monster name="Castle Guardian" file="Castle Guardian.xml"/> Em data/monsters crie um arquivo com o nome de Castle Guardian.xml e adicione o seguinte:
    <?xml version="1.0" encoding="UTF-8"?> <monster name="Castle Guardian" nameDescription="a castle guardian" race="blood" experience="0" speed="0" manacost="0"> <health now="800000" max="800000"/> <look type="131" head="57" body="19" legs="57" feet="95" addons="1" corpse="6080"/> <targetchange interval="5000" chance="30"/> <strategy attack="100" defense="0"/> <flags> <flag summonable="0"/> <flag attackable="1"/> <flag hostile="1"/> <flag illusionable="0"/> <flag convinceable="0"/> <flag pushable="0"/> <flag canpushitems="1"/> <flag canpushcreatures="1"/> <flag targetdistance="4"/> <flag staticattack="90"/> <flag runonhealth="800"/> </flags> <attacks> <attack name="melee" interval="2000" min="-60" max="-180"/> <attack name="physical" interval="1000" chance="35" range="7" min="-205" max="-385"> <attribute key="shootEffect" value="energy"/> </attack> <attack name="manadrain" interval="1000" chance="17" range="7" min="-205" max="-560"/> <attack name="speed" interval="1000" chance="12" range="7" speedchange="-600" duration="40000"> <attribute key="areaEffect" value="redshimmer"/> </attack> <attack name="fire" interval="2000" chance="45" range="7" radius="3" target="1" min="-250" max="-420"> <attribute key="shootEffect" value="burstarrow"/> <attribute key="areaEffect" value="firearea"/> </attack> <attack name="firefield" interval="1000" chance="20" range="7" radius="2" target="1"> <attribute key="shootEffect" value="fire"/> </attack> <attack name="energy" interval="2000" chance="25" length="8" spread="0" min="-265" max="-445"> <attribute key="areaEffect" value="energy"/> </attack> <attack name="speed" interval="6000" chance="10" range="5" speedchange="-600" duration="20000"> <attribute key="areaEffect" value="redshimmer"/> </attack> </attacks> <defenses armor="1" defense="1"/> <elements> <element firePercent="100"/> <element energyPercent="100"/> <element icePercent="100"/> <element earthPercent="90"/> <element holyPercent="-25"/> <element physicalPercent="-33"/> </elements> <immunities> <immunity paralyze="1"/> <immunity invisible="1"/> </immunities> <summons maxSummons="2"> <summon name="deathspawn" interval="1500" chance="0" max="0"/> </summons> <loot> <item id="2148" countmax="20" chance1="100000" chancemax="0"/> </loot> </monster> Pós isto;
     
     
    Em data/movements/scripts crie um arquivo com o nome de COH.lua e adicione o seguinte:
    -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- // function onStepIn(cid, item, pos, fromPosition) local pos = getThingPos(cid) if item.actionid == 16203 then if not isPlayer(cid) then return true end if getGlobalStorageValue(COH_STATUS) == getPlayerGuildName(cid) then doSendMagicEffect(getThingPos(cid), 14) doSendAnimatedText(pos, "CoH", math.random(1, 255)) else doSendMagicEffect(getThingPos(cid), 2) doTeleportThing(cid, fromPosition, false) doPlayerSendCancel(cid, "[CoH] Você não pertence á guild "..getGlobalStorageValue(COH_STATUS)..".") end return true end if item.actionid == 16202 then if not isPlayer(cid) then return true end if getPlayerGuildId(cid) > 0 then if (getGlobalStorageValue(COH_STATUS) ~= getPlayerGuildName(cid)) then doPlayerSendTextMessage(cid, 20, "[Castle of Honor] Você e sua guild estão no comando, os antigos donos ["..tostring(getGlobalStorageValue(COH_STATUS)).."] podem se vingar!") setGlobalStorageValue(COH_PREPARE1, -1) setGlobalStorageValue(COH_PREPARE2, -1) setGlobalStorageValue(COH_STATUS, getPlayerGuildName(cid)) doCastleRemoveEnemies() doBroadcastMessage("[Castle of Honor] O jogador ["..getCreatureName(cid).."] e sua guild ["..getPlayerGuildName(cid).."] estão no comando do castelo, vá dominar e impedir isso!") end else doSendMagicEffect(pos, 2) doTeleportThing(cid, fromPosition, false) doPlayerSendCancel(cid, "[CoH] Você não possui uma guild.") end return true end if item.actionid == 16200 then if not isPlayer(cid) then return true end if getPlayerGuildId(cid) > 0 then doSendAnimatedText(pos, "CoH", math.random(1, 255)) if (getGlobalStorageValue(COH_PREPARE1) ~= getPlayerGuildName(cid)) and ((getGlobalStorageValue(COH_PREPARE2) ~= getPlayerGuildName(cid))) then setGlobalStorageValue(COH_PREPARE1, getPlayerGuildName(cid)) doBroadcastMessage("[Castle of Honor] Atenção! A guild "..getPlayerGuildName(cid).." está tentando dominar o castelo, preparem-se!") end else doSendMagicEffect(pos, 2) doTeleportThing(cid, fromPosition, false) doPlayerSendCancel(cid, "[CoH] Você não possui uma guild.") return true end end if item.actionid == 16201 then if not isPlayer(cid) then return true end doSendAnimatedText(pos, "CoH", math.random(1, 255)) if (getGlobalStorageValue(COH_PREPARE2) ~= getPlayerGuildName(cid)) then setGlobalStorageValue(COH_PREPARE2, getPlayerGuildName(cid)) doBroadcastMessage("[Castle of Honor] Atenção! A guild "..getPlayerGuildName(cid).." está muito próxima do domínio, ataquem!") end end return true end Em data/movements/movements.xml adicione a seguinte linha:
    <movevent type="StepIn" actionid="16200-16203" event="script" value="COH.lua"/> Próximo passo:
     
    Em data/talkactions/scripts crie um arquivo com o nome de COHABSOLUTE.lua e adicione o seguinte:
    -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation, either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see <http://www.gnu.org/licenses/>. -- // function onSay(cid, words, param) if getPlayerGuildLevel(cid) == GUILDLEVEL_LEADER then if getPlayerStorageValue(cid, COH_PUSHSTOR) < os.time() then if getGlobalStorageValue(COH_STATUS) == getPlayerGuildName(cid) then if isInArea(getThingPos(cid), COH_AREA[1], COH_AREA[2]) then if #getMembersOnline(getPlayerGuildId(cid)) > 0 then for index, creature in ipairs(getMembersOnline(getPlayerGuildId(cid))) do if (getTileInfo(getThingPos(creature)).protection ~= true) then return doPlayerSendCancel(cid, "[CoH] Os membros devem estar em área PZ.") end doTeleportThing(creature, getThingPos(cid)) end setPlayerStorageValue(cid, COH_PUSHSTOR, os.time() + COH_PUSHTIME) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "[Castle of Honor] Você teleportou seus membros, comando pode ser usado a cada "..tostring(COH_PUSHTIME / 60).." minuto(s).") else doPlayerSendCancel(cid, "[CoH] Para executar isso, sua guild deve ter 2 ou mais membros online.") end else doPlayerSendCancel(cid, "[CoH] Você deve estar no castelo.") end else doPlayerSendCancel(cid, "[CoH] Sua guild não é dona do castelo.") end else doPlayerSendCancel(cid, "[CoH] Você deve aguardar "..tostring(math.ceil((getPlayerStorageValue(cid, COH_PUSHSTOR) - os.time()) / 60)).." minuto(s) para usar este comando.") end else doPlayerSendCancel(cid, "[CoH] Você deve ser líder de uma guild para executar este comando.") end return true end function getMembersOnline(id) local mbr = {} for index, creature in ipairs(getPlayersOnline()) do if getPlayerGuildId(creature) == id then if getCreatureSkullType(creature) < 3 then table.insert(mbr, creature) end end end return mbr or #mbr end Em data/talkactions/talkactions.xml adicione a seguinte linha:
    <talkaction words="!castlepush;!pushmembers;!gocastle" event="script" value="COHABSOLUTE.lua"/> Quem disponibiliza o mapa do castelo a vocês é nosso amigo ViitinG, segue o link do tópico para download do mesmo já adaptado para este Castle:
    http://www.tibiaking.com/forum/topic/35730-mapa-evento-war-castle/
     
     
     
    Explicação das actions e demais (caso não use o mapa disponibilizado pelo Viiting lembre de adicionar ao castelo);
    ActionID 16200 - No meio do caminho para o castelo, ActionID 16201 - Perto do castelo, ActionID 16202 - No piso, trono que faz com que domine, e ActionID 16203 - Para a passagem de acesso ás hunts / city exclusivas da guild vencedora. Importante: Para colocar uma passagem para as hunts ou o que for a premiação da guild vencedora, coloque um caminho único com os actionIDS 16203, assim só a guild dominante do castelo poderá passar neste local. É importante lembrar que este script é de autoria do Roksas Nunez, ex scripter da empresa chaitosoft, fiz simples modificações de otimização.
     
     
    Qualquer dúvida peço que entre em contato comigo e poste aqui no tópico.
     
     
     
    Créditos:
    Absolute
    Roksas
    ViitinG
     
     
    Espero que gostem, afinal raro alguém disponibilizar algo tão desejado e útil assim!
     
     
     
    Até o próximo sistema.
     
     
     
     
    Absolute on tibiaking =p
  15. Gostei
    avalax deu reputação a Eytor em [8.54] Servidor + Client Naruto B&W [EXCLUSIVO]   
    OLÁ USUARIOS DO TIBIA KING .. HOJE ESTAREI TRAZENDO UMA NOVIDADE .. O SERVIDOR DE NTO EXCLUSIVO DO NTO BLACK & WHITE(AKELE OT NOVO QUE FOI CRIADO A 1 MES POR E MIN E POR O [ADM] Johnatan).
      VALE LEMBRAR QUE O NTO BLACK WHITE FOI UM DOS SERVIDORES DE NARUTIBIA QUE MAIS CRESCEU NOS ULTIMOS TEMPOS .. EM APENAS 1 SEMANA DE NTO JÁ ATINGIMOS A META DE 70 ~ 80 USUARIOS ONLINE FIXOS DIARIOS, E ESSE É O SERVIDOR MAIS RECENTE DO NTO BLACK WHITE BASEADO NO DO SERVIDOR MADARA RINNEGAN EDITADO POR MIN E POR O JOHNATA.
      ANTES DE MAIS NADA GOSTARIA DE EXPLICAR O MOTIVO DE TAR POSTANDO O SERVER .. BEM O JOHNATAN ERA QUEM FAZIA PRATICAMENTE TUDO NAS ATUALIZAÇÕES E TAALS .. POREM ELE PAROU COM NTO AI TIVE QUE DESMONTAR O NTO B&W PORQUE EU NÃO TINHA CONDIÇÕES PRA DAR CONTA DO NTO SOZINHO.
     
    CHEGA DE BLABLA E VAMOS LÁ!!
     
    [+] NOVIDADES & CARACTERISTICAS
    [+] ERROS E BUGS
    [+] PRINTS DO SERVER
    [+] DOWNLOAD
    [+] CREDITOS
     
    [+] NOVIDADES & CARACTERISTICAS
     



     
    [+] ERROS E BUGS
     



     
    [+] PRINTS DO SERVER
     



     
    [+] Downloads
     
    Servidor Naruto B&W: Clique Aqui
    Client(descompilado): Clique Aqui
     
    [+] Creditos
     
    - Madara Rinnegan (servidor base)
    - [ADM] Johnata Editar Praticamente Todo o Servidor
    - Eu Por umas Besteiras q eu Coloquei e Por Postar
     
    GOSTOU DO SERVIDOR?
    DA UM REP++
  16. Gostei
    avalax deu reputação a Wise em (Resolvido)Comando !Rebattle   
    Já testei os scripts que fiz e está tudo certo.
    O problema não está neles, desculpe amigo.
  17. Gostei
    avalax deu reputação a xWhiteWolf em [Spell] Katara's Sense   
    Fala pessoal do TK, hoje vim trazer uma spell bem bonita que veio na minha cabeça.
    em 14:06 desse vídeo dá pra ver oque eu tentei criar
    http://tvuol.uol.com.br/video/avatar--livro-3-fogo--ep-48--a-manipuladora-de-fantoches-04028C98306ED8A90326/
    mas por conta dos efeitos precários que o Tibia possui não ficou tão legal qnt eu imaginei mas em todo caso eu decidi compartilhar o código com vocês.

    O resultado final foi esse daqui:


    Se vocês se interessaram é só criar um arquivo em spells/scripts e colocar isso daqui dentro dele:
    function onCastSpell(cid, var) local config = { spins = 1, delay = 120 } local k = checkGroundInArray(getPositionsByDirection(cid), grass) if #k < 1 then doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) doPlayerSendCancel(cid, "You need to be around grass to cast this spell.") return false end for i = 1, #k do addEvent(function() if isPlayer(cid) then local pos = k[i] local grama = getThingFromPos(pos) doTransformItem(grama.uid, driedgrass[math.random(1, #driedgrass)]) a = (i < 9) and doSendMagicEffect(pos, 1) or doSendMagicEffect(pos, 53) doSendDistanceShoot(pos, getThingPos(cid), 36) end end, (config.delay/2) * i) end range = #k > 4 and 7 or 5 addEvent(function() if isPlayer(cid) then local pos = k[i] local lastPos = false for i = 1, range do local position = getPositionByDirection(getCreaturePosition(cid), getCreatureLookDirection(cid), i) if isWalkable(position, false, true, true) then local creature = getTopCreature(position) if (creature.uid > 0) then doSendDistanceShoot(getCreaturePosition(cid), getCreaturePosition(creature.uid), 36) doTargetCombatHealth(cid, creature.uid, COMBAT_PHYSICALDAMAGE, -142 * (#k - 1), -150 * (#k - 1), CONST_ME_NONE) break end lastPos = position end if lastPos then doSendDistanceShoot(getCreaturePosition(cid), lastPos, 36) end end end end, (config.delay + (4 * config.delay * config.spins)) ) addEvent(function() for j = 1, #k do addEvent(function() local pos = k[j] local grama = getThingFromPos(pos) if isInArray(driedgrass, grama.itemid) then doTransformItem(grama.uid, grass[math.random(1, #grass)]) end end, (config.delay/2) * j) end end, config.delay * 100) spinRotate(cid, config.spins, config.delay) return true end e em spells.xml vc adiciona:
    <instant name="TK" words="kataras sense" lvl="8" mana="35" prem="0" casterTargetOrDirection="1" exhaustion="1500" needlearn="0" event="script" value="nomedoarquivo.lua"> </instant> OBS: Note que esse script usa funções da new library. Você pode conseguir essas funções aqui: http://www.tibiaking.com/forum/topic/46015-new-library-v-10/

    Espero que tenham curtido, esse é só o começo! Testada em TFS 0.3.6 Tibia 8.54.
  18. Gostei
    avalax deu reputação a buddha em (Resolvido)[Pedido] Server Salva em 30 em 30 segundos   
    O server dele pode ser em milissegundos. 7200000 é 2 horas em milissegundos.
     
    Edit:
    Caso seu TFS seja 1.0 ou o script do amigo acima não funcione, pode testar esse também:



    Tag:
    <globalevent name="Server Save" interval="7200000" script="serversave.lua"/>
  19. Gostei
    avalax deu reputação a eunaosei123 em (Resolvido)[Pedido] Server Salva em 30 em 30 segundos   
    Vá em data/globalevents/script e crie um arquivo chamado save e cole isso dentro
     



     
    agora vá em data/globalevents e abra o globalevents.XML e cole isso la dentro
     
     
    você configura nesse canto
    interval="7200" você coloca o tempo que quiser em segundos
    ai já ta em 2 em 2hrs
  20. Gostei
    O aumento de velocidade e magic level, você pode editar em items.xml, aplicando as seguintes linhas no código referente ao item:
    <attribute key="speed" value="50" /> <attribute key="magiclevelpoints" value="50" /> <attribute key="showattributes" value="1" />

     
    Enquanto aos scripts do item:

    itemoutfit.lua (data/movements/scripts):
    local tab = { [1] = {outfit = 123}, -- [vocID] = {outfit = lookTypeNumber} [300] = {outfit = 456} } function onEquip(cid, item, slot) doSetCreatureOutfit(cid, {lookType = tab[getPlayerVocation(cid)].outfit}, -1) return true end function onDeEquip(cid, item, slot) doRemoveCondition(cid, CONDITION_OUTFIT) return true end

     
    Tag - movements.xml (data/movements):
    <movevent type="Equip" itemid="ITEMID" slot="VALUE" event="script" value="itemoutfit.lua"/> <movevent type="DeEquip" itemid="ITEMID" slot="VALUE" event="script" value="itemoutfit.lua"/>
     
    Configure a tag com o ID do item e o VALUE do slot, que varia de acordo com o item (onde ele pode ser equipado).
    Caso você não saiba como configurar, os valores que você pode utilizar são:
    Values: head necklace backpack armor right-hand, left-hand two-handed, hand/shield legs feet ring ammo

     
    itemlogout.lua (data/creaturescripts/scripts):
    local item = {1234, 5} -- {itemID, slotNumber} function onLogout(cid) if getPlayerSlotItem(cid, item[2]).itemid == item[1] then doPlayerSendCancel(cid, "You need to remove your "..getItemNameById(item[1]).." from the slot to logout.") return false end return true end

    Pra configurar o slotNumber da tabela item no script, basta adicionar o número do slot de acordo com o que seu item é equipado.
    Aqui estão eles:
    --slotVariableName(slotNumber) = slotValue:     CONST_SLOT_HEAD (1) = head (helmet)     CONST_SLOT_NECKLACE (2) = necklace (amulet)     CONST_SLOT_BACKPACK (3) = backpack     CONST_SLOT_ARMOR (4) = armor     CONST_SLOT_LEFT (5) = left hand     CONST_SLOT_RIGHT (6) = right hand     CONST_SLOT_LEGS (7) = legs     CONST_SLOT_FEET (8) = boots     CONST_SLOT_RING (9) = ring     CONST_SLOT_AMMO (10) = ammo Lembrando que o callback usado no script não registra creature event.



    Tag - creaturescripts.xml (data/creaturescripts):
    <event type="logout" name="ItemLogout" event="script" value="itemlogout.lua"/>
  21. Gostei
    avalax deu reputação a ferlations em !deathlist   
    Matheus, dai o tibia iria fechar sozinho, sem mostrar para enviar o relatório, iria fechar de qualquer jeito, não?
    Amigo, use o do Matheus, mas antes faça isso:

    Vá até a pasta Talkactions abra o arquivo Talkactions.xml e adicione esta Tag:

    <talkaction words="!deathlist" event="script" value="deathlist.lua"/> Dai então use o script do Matheus.
  22. Gostei
    avalax recebeu reputação de wellyson em (Resolvido)Scripts para nto   
    clica gostei. e melhor resposta vlw
  23. Gostei
    avalax recebeu reputação de wellyson em (Resolvido)Scripts para nto   
    eu tenho a minha to meu serve testa ai 
     



     
    Ajudei Rep+ 
  24. Gostei
    avalax deu reputação a Rofl em Como Criar um Forum   
    Neste vídeo explica passo-a-passo de como instalar o MyBB:
     

     
    Não tem erro, é só prestar atenção!   
  25. Gostei
    avalax deu reputação a vinhzika em [Urgente!] Erro Dat Editor   
    Baixe o object builder essa dat e spr está extendida procure saber mais sobre o assunto antes de iniciar com as sprites no object builder boa sorte

Informação Importante

Confirmação de Termo