Jump to content

zipter98

Herói
  • Content Count

    2.553
  • Joined

  • Last visited

  • Days Won

    68
  • xPoints

    0 [ Donate ]

zipter98 last won the day on January 16

zipter98 had the most liked content!

About zipter98

Perfil

  • Gênero
    Masculino

Informações

  • Forma que conheci o xTibia
    Sites de Busca
  • Sou
    Xtibiano

Recent Profile Visitors

8.703 profile views
  1. Zipter pode me ajudar em uma coisa q estou tendo?

    Bom quando eu uso pokemon e ele morre ao clicar na ball da um erro na distro, acho q nao influencia em nada, mas va q muita gente clicando na pokebola possa causar lag! se puder me ajudar agradeço

    [Error - Action Interface]
    data/actions/scripts/goback.lua:onUse
    Description:

    <LuaDoPlayerSendCancel> Player no Found

     

    https://hastebin.com/nigakawopo.rb

  2. Tente algo seguindo a seguinte lógica: local config = { [1] = { upper_left = {x = x, y = y, z = z}, bottom_right = {x = x, y = y, z = z}, toPos = {x = x, y = y, z = z} }}for i = 1, #config do local upper, bottom = config[i].upper_left, config[i].bottom_right if #getPlayersInArea(upper, bottom) == 0 then doTeleportThing(cid, config[i].toPos) return true endenddoPlayerSendCancel(cid, "Try again later.") Imagino que a estruturação da tabela seja bem fácil de entender, porém qualquer dúvida basta perguntar. PS: Essa função getPlayersInArea você pode encontrar pela internet (incluindo aqui no fórum), portanto não vejo necessidade de postá-la.
  3. A conclusão que tirei a partir da estrutura apresentada por você é que os índices da tabela representam até que nível a vocação apresentará a dada corpse. local table = { --[vocation_id] = { [1] = { --[MAX_LEVEL] = itemid, [100] = 2930, [250] = 2931, [350] = 2932, },}local function transform(pos, id, voc, level) local item = getTileItemById(pos, id) if item and item.uid > 1 then local corpse_id, ref_lv, ret_id = table[voc], 9999 if not corpse_id then return true end for corpse_level, itemid in pairs(corpse_id) do if level <= corpse_level and corpse_level < ref_lv then ret_id = itemid ref_lv = corpse_level end end doTransformItem(item.uid, ret_id) doDecayItem(item.uid or 0) endendfunction onDeath(cid, corpse) if not isPlayer(cid) or not table[getPlayerVocation(cid)] then return true end addEvent(transform, 15, getThingPos(cid), corpse.itemid, getPlayerVocation(cid), getPlayerLevel(cid)) return trueend
  4. Opa, se o podcast no Discord ainda for rolar, posso dar uma gankada lá com vocês.
  5. local config = { money = xxx, --Preço cobrado para cada jogador. daily = "no", -- allow only one enter per day? (like in global Tibia) level = 450, storage = 30015, entry = { {x = 4464, y = 1288, z = 6}, {x = 4466, y = 1288, z = 6}, {x = 4465, y = 1289, z = 6}, {x = 4464, y = 1290, z = 6}, {x = 4466, y = 1290, z = 6} }, destination = { {x = 189, y = 650, z = 13}, {x = 189, y = 651, z = 13}, {x = 189, y = 652, z = 13}, {x = 189, y = 653, z = 13}, {x = 1554, y = 1826, z = 4} }} config.daily = getBooleanFromString(config.daily)function onUse(cid, item, fromPosition, itemEx, toPosition) if(item.itemid == 1946) then if(config.daily) then doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE) else doTransformItem(item.uid, item.itemid - 1) end return true end if(item.itemid ~= 1945) then return true end local players = {} for _, position in ipairs(config.entry) do local pid = getTopCreature(position).uid if pid == 0 or not isPlayer(pid) or getCreatureStorage(pid, config.storage) > 0 or getPlayerLevel(pid) < config.level or getPlayerMoney(pid) < config.money then doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE) return true end table.insert(players, pid) end for i, pid in ipairs(players) do doPlayerRemoveMoney(pid, config.money) doSendMagicEffect(config.entry, CONST_ME_POFF) doTeleportThing(pid, config.destination[i], false) doSendMagicEffect(config.destination, CONST_ME_ENERGYAREA) end doTransformItem(item.uid, item.itemid + 1) return trueend
  6. Olá, eu queria saber se voce ira voltar a nos ajudar com aquele bug da DxP =X esperando mt por voce, foi o unico q consegueu meio arrumar o bug

    1. Josegvb

      Josegvb

      =( fecharam o topico n sei se pedir pra eles abrirem novamente ou se criar outro... poderia ajudar la dnovo? 

  7. Zipter teria como eu entrar em contato com vc? por fb ou até mesmo por aqui xD

  8. Poderia me ajudar Zipter? obrigado!

    1. Eder Frota Sant

      Eder Frota Sant

      zipter vc poderia me ajudar com essa task ai de mata player mais queria que ao termina o player ganhasse events coints se possivel me add ai skyper eder.frota cidade doverlandia minha foto e um urso com duas espadas na mal azu por favor me add ai ou meu whats 64984559178 

  9. O Psy Pulse está funcionando? Se preferir, pode voltar os códigos a antes do meu último comentário (quando o Miracle Eye, apesar de não perfeitamente, estava funcionando). É meio ruim ficar testando as correções desse jeito, mas não tenho essa base instalada e não pretendo baixá-la tão cedo.
  10. zipter98

    suporte otserv catch

    Abaixo de: if getItemAttribute(item2.uid, "golden") and getItemAttribute(item2.uid, "golden") == 1 then return doPlayerSendCancel(cid, "You can't try to catch a pokemon in the Golden Arena!") end coloque: local storage = 9381if getPlayerStorageValue(cid, storage) > os.time() then doPlayerSendCancel(cid, "You are exhausted.") return trueend Depois, acima de: addEvent(doSendPokeBall, d * 70 + 100 - (d * 14), cid, catchinfo, false, false, typeee, smeargleID) coloque: setPlayerStorageValue(cid, storage, os.time() + 1) --Intervalo de 1s para jogar outra pokeball.
  11. Primeiramente, é acima do que está sozinho. No código do Psy Pulse, abaixo de: if not isCreature(cid) then return true end coloque: if tostring(getPlayerStorageValue(cid, 21102)) ~= spell then setPlayerStorageValue(cid, 21102, spell)end No código do Miracle Eye, é melhor manter essa linha: setPlayerStorageValue(cid, 21102, -1) E, no stats change, voltar essas linhas: if getPlayerStorageValue(attacker, 21102) ~= "Miracle Eye" and getPlayerStorageValue(attacker, 21102) ~= "Dark Eye" then setPlayerStorageValue(attacker, 21102, -1)end para essa: setPlayerStorageValue(attacker, 21102, -1) Se não, o auto ataque pode acabar sendo influenciado pelo efeito dessa spell. Depois, em pokemon moves, troque: if getPlayerStorageValue(cid, 4389) > -1 and getPlayerStorageValue(cid, 21102) ~= "Miracle Eye" and getPlayerStorageValue(cid, 21102) ~= "Dark Eye" then setPlayerStorageValue(cid, 4389, -1)end por: if getPlayerStorageValue(cid, 4389) > -1 and getPlayerStorageValue(cid, 21102) ~= "Miracle Eye" and getPlayerStorageValue(cid, 21102) ~= "Dark Eye" and getPlayerStorageValue(cid, 21102) ~= -1 then setPlayerStorageValue(cid, 4389, -1)end Não tenho certeza se vão corrigir o erro do Psyshock da frente, mas são proteções para outros casos. Estou com um pouco de pressa agora, então depois raciocino mais sobre o problema.
  12. Troque o código da spell Psyshock por: elseif spell == "Psyshock" then local p = getThingPosWithDebug(cid) local d = isCreature(target) and getCreatureDirectionToTarget(cid, target) or getCreatureLookDir(cid) local storage, keep = getPlayerStorageValue(cid, 4389) if storage > os.time() then keep = true end function sendAtk(cid, area, eff, k) if isCreature(cid) then if not isSightClear(p, area, false) then return true end if k then setPlayerStorageValue(cid, 4389, os.time() + 1) end doAreaCombatHealth(cid, psyDmg, area, 0, 0, 0, eff) --alterado v1.4 doAreaCombatHealth(cid, psyDmg, area, whirl3, -min, -max, 255) --alterado v1.4 end end for a = 0, 4 do local t = { [0] = {250, {x=p.x, y=p.y-(a+1), z=p.z}}, --alterado v1.4 [1] = {250, {x=p.x+(a+1), y=p.y, z=p.z}}, [2] = {250, {x=p.x, y=p.y+(a+1), z=p.z}}, [3] = {250, {x=p.x-(a+1), y=p.y, z=p.z}} } addEvent(sendAtk, 370*a, cid, t[d][2], t[d][1], keep) end Depois, em pokemon moves.lua, acima de: setPlayerStorageValue(cid, 21102, spell) coloque: if getPlayerStorageValue(cid, 4389) > -1 and getPlayerStorageValue(cid, 21102) ~= "Miracle Eye" and getPlayerStorageValue(cid, 21102) ~= "Dark Eye" and getPlayerStorageValue(cid, 21102) ~= -1 then setPlayerStorageValue(cid, 4389, -1)end E, no código da função: getEffectvineSpell remova: setPlayerStorageValue(attacker, 4389, -1) Porém, o Miracle Eye provavelmente vai apresentar problemas em spells de addEvent, como aquele que enfrentamos antes neste tópico. Tudo, é lógico, seria mais fácil se o servidor não tivesse o problema do combat. Três simples linhas resolveriam o problema.
  13. Deu erro porque você conseguiu copiar o script errado. lol Olhe a configuração do código que postei: local config = { itemid = {xxx, xxx, xxx, ...}, --Configure nessa tabela o ID dos itens. edges = { fromPos = {x = x, y = y, z = z}, --Coordenadas da posição superior esquerda. toPos = {x = x, y = y, z = z} --Coordenadas da posição inferior direita. }}
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...