Ir para conteúdo
US
Blazera 8.60
blazera.net
SOBRE O BLAZERA
Um fresh start em um servidor 8.6 clássico, com real map, focado na experiência raiz do Tibia. | Classic Real Map • Fresh Start • Client 8.6 • Old School Gameplay • Active Community
Inicia em: --
Participar

Crypter

Membro
  • Registro em

  • Última visita

Tudo que Crypter postou

  1. elseif move.name == "Invisible" then doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(move.name).."!", TALKTYPE_MONSTER) doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..move.name.."!", TALKTYPE_SAY) setCD(getPlayerSlotItem(cid, 8).uid, cdzin, move.cd) exhaustion.set(cid, move.ex, move.cd) sendCooldown(cid) local condition_invisible = createConditionObject(CONDITION_INVISIBLE) setConditionParam(condition_invisible, CONDITION_PARAM_TICKS, 20000) doAddCondition(getCreatureSummons(cid)[1], condition_invisible) return 0
  2. Abre o client com o object builder e marca a opção multi use no item
  3. Editado o copia de cima, testa agora
  4. Tens que colocar no client( tibia.spr e dat ) e no items.otb
  5. function doHealOverTime(cid, heal, turn, effect) --alterado v1.6 peguem o script todo!! if not isCreature(cid) then return true end local regen = (heal*getCreatureMaxHealth(cid)/100) if turn <= 0 or (getCreatureHealth(cid) == getCreatureMaxHealth(cid)) or getPlayerStorageValue(cid, 173) <= 0 then return setPlayerStorageValue(cid, 173, -1) elseif getCreatureHealth(cid) + regen >= getCreatureMaxHealth(cid) then doSendAnimatedText(getThingPos(cid), "+".. regen .."%", 65) doCreatureAddHealth(cid, regen) doSendMagicEffect(getThingPos(cid), effect) return setPlayerStorageValue(cid, 173, -1) end doSendAnimatedText(getThingPos(cid), "+ "..heal.."%", 65) doCreatureAddHealth(cid, regen ) doSendMagicEffect(getThingPos(cid), effect) addEvent(doHealOverTime, 1000, cid, heal, turn - 1, effect) addEvent(doUpdateStatusPoke, 1005, getCreatureMaster(cid)) end local potions = { [2273] = {health = 5, duration=10,effect= 12, animate = "SMALL POT", collor = 140}, [2272] = {health = 10, duration=10,effect= 12, animate = "GREAT POT", collor = 140}, [2271] = {health = 25, duration=10,effect= 12, animate = "MEGA POT", collor = 140}, [2275] = {health = 40,duration=10, effect= 12, animate = "HYPER POT", collor = 140}, [2274] = {health = 60, duration=10,effect= 12, animate = "SUPER POT", collor = 140}, } function onUse(cid, item, frompos, item2, topos) local pid = getThingFromPosWithProtect(topos) local pokeballInfo = getPokeballInfo(getPlayerSlotItem(cid, 8).uid) if not isCreature(pid) or not isSummon(pid) then return doPlayerSendCancel(cid, "You can only use potions on your own Pokemons!") end if getCreatureMaster(pid) ~= cid then return doPlayerSendCancel(cid, "You can only use potions on your own Pokemons!") end if getCreatureHealth(pid) == getCreatureMaxHealth(pid) then return doPlayerSendCancel(cid, "This pokemon is already at full health.") end if getPlayerStorageValue(pid, 173) >= 1 then return doPlayerSendCancel(cid, "This pokemon is already under effects of potions.") end if getPlayerStorageValue(cid, 52481) >= 1 then return doPlayerSendCancel(cid, "You can't do that while a duel.") end doCreatureSay(cid, "".. pokeballInfo.nick..", take this potion!", TALKTYPE_SAY) doSendAnimatedText(getThingPos(pid), potions[item.itemid].animate, potions[item.itemid].collor) setPlayerStorageValue(pid, 173, 1) doRemoveItem(item.uid, 1) doHealOverTime(pid, potions[item.itemid].health, potions[item.itemid].duration, potions[item.itemid].effect) return true end
  6. local fishing = { ["Magikarp"] = {skill = 0, level = 1}, ["Gyarados"] = {skill = 75, level = 75}, ["Staryu"] = {skill = 22, level = 6}, ["Starmie"] = {skill = 49, level = 20}, ["Tentacool"] = {skill = 20, level = 7}, ["Tentacruel"] = {skill = 60, level = 75}, ["Goldeen"] = {skill = 17, level = 5}, ["Seaking"] = {skill = 28, level = 11}, ["Krabby"] = {skill = 14, level = 2}, ["Kingler"] = {skill = 35, level = 14}, ["Horsea"] = {skill = 16, level = 3}, ["Seadra"] = {skill = 41, level = 15}, ["Poliwag"] = {skill = 15, level = 2}, ["Poliwhirl"] = {skill = 27, level = 9}, ["Squirtle"] = {skill = 25, level = 25}, ["Wartortle"] = {skill = 45, level = 44}, ["Blastoise"] = {skill = 75, level = 75}, ["Lapras"] = {skill = 85, level = 85}, } local storage = 15458 local bonus = 1 local limite = 100 local function doFish(cid, pos, ppos, chance, interval, number) if not isCreature(cid) then return false end if getThingPos(cid).x ~= ppos.x or getThingPos(cid).y ~= ppos.y then return false end if getPlayerStorageValue(cid, storage) ~= number then return false end doSendMagicEffect(pos, CONST_ME_LOSEENERGY) local peixe = 0 local playerpos = getClosestFreeTile(cid, getThingPos(cid)) local fishes = {} local randomfish = "" if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, bonus) end for a, b in pairs (fishing) do if getPlayerSkillLevel(cid, 6) >= b.skill then table.insert(fishes, a) end end if math.random(1, 100) <= chance then if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, bonus) end randomfish = fishes[math.random(#fishes)] peixe = doSummonCreature(randomfish, playerpos) if not isCreature(peixe) then addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) return true end doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(peixe))) --alterado ver depois if #getCreatureSummons(cid) >= 1 then doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 173) doChallengeCreature(getCreatureSummons(cid)[1], peixe) else doSendMagicEffect(getThingPos(cid), 173) doChallengeCreature(cid, peixe) end return true end addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) return true end local waters = {4614, 4615, 4616, 4617, 4618, 4619, 4608, 4609, 4610, 4611, 4612, 4613, 7236, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625, 4665, 4666, 4820, 4821, 4822, 4823, 4824, 4825} function onUse(cid, item, fromPos, itemEx, toPos) if getPlayerGroupId(cid) == 11 then return true end if item.uid ~= getPlayerSlotItem(cid, CONST_SLOT_LEFT).uid then doPlayerSendCancel(cid, "Put the fishing rod in the correct place!") return true end local checkPos = toPos checkPos.stackpos = 0 if getTileThingByPos(checkPos).itemid <= 0 then return true end if not isInArray(waters, getTileInfo(toPos).itemid) then return true end if getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 then doPlayerSendCancel(cid, "You can't fish while surfing/flying.") return true end if isInArray(waters, getTileInfo(getThingPos(cid)).itemid) then doPlayerSendCancel(cid, "You can\'t fish while surfing neither flying above water.") return true end if getTileInfo(getThingPos(getCreatureSummons(cid)[1] or cid)).protection then doPlayerSendCancel(cid, "You can't fish pokémons if you or your pokémon is in protection zone.") return true end setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1) if getPlayerStorageValue(cid, storage) >= 800 then setPlayerStorageValue(cid, storage, 1) end local delay = 3500 - getPlayerSkillLevel(cid, 6) * 25 local chance = 40 doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage)) return true end O item de pesca tem que ter a um item muti uso ou seja com a função use with..
  7. function doHealOverTime(cid, heal, turn, effect) if not isCreature(cid) then return true end local regen = (heal*getCreatureMaxHealth(cid)/100) if turn <= 0 or (getCreatureHealth(cid) == getCreatureMaxHealth(cid)) or getPlayerStorageValue(cid, 173) <= 0 then setPlayerStorageValue(cid, 173, -1) return elseif getCreatureHealth(cid) + regen >= getCreatureMaxHealth(cid) then doSendAnimatedText(getThingPos(cid), "+".. math.ceil(100 - getCreatureHealth(cid)/getCreatureMaxHealth(cid)*100) .."%", 65) doCreatureAddHealth(cid, regen) doSendMagicEffect(getThingPos(cid), effect) return end doSendAnimatedText(getThingPos(cid), "+ "..heal.."%") doCreatureAddHealth(cid, regen ) doSendMagicEffect(getThingPos(cid), effect) addEvent(doHealOverTime, 1000, cid, heal, turn - 1, effect) addEvent(doUpdateStatusPoke, 1005, getCreatureMaster(cid)) end local potions = { [2273] = {health = 5, duration=10,effect= 12, animate = "SMALL POT", collor = 140}, [2272] = {health = 10, duration=10,effect= 12, animate = "GREAT POT", collor = 140}, [2271] = {health = 25, duration=10,effect= 12, animate = "MEGA POT", collor = 140}, [2275] = {health = 40,duration=10, effect= 12, animate = "HYPER POT", collor = 140}, [2274] = {health = 60, duration=10,effect= 12, animate = "SUPER POT", collor = 140}, } function onUse(cid, item, frompos, item2, topos) local pid = getThingFromPosWithProtect(topos) local pokeballInfo = getPokeballInfo(getPlayerSlotItem(cid, 8).uid) if not isCreature(pid) or not isSummon(pid) then return doPlayerSendCancel(cid, "You can only use potions on your own Pokemons!") end if getCreatureMaster(pid) ~= cid then return doPlayerSendCancel(cid, "You can only use potions on your own Pokemons!") end if getCreatureHealth(pid) == getCreatureMaxHealth(pid) then return doPlayerSendCancel(cid, "This pokemon is already at full health.") end if getPlayerStorageValue(pid, 173) >= 1 then return doPlayerSendCancel(cid, "This pokemon is already under effects of potions.") end if getPlayerStorageValue(cid, 52481) >= 1 then return doPlayerSendCancel(cid, "You can't do that while a duel.") end doCreatureSay(cid, "".. pokeballInfo.nick..", take this potion!", TALKTYPE_SAY) doSendAnimatedText(getThingPos(pid), potions[item.itemid].animate, potions[item.itemid].collor) setPlayerStorageValue(pid, 173, 1) doRemoveItem(item.uid, 1) doHealOverTime(pid, potions[item.itemid].health, potions[item.itemid].duration, potions[item.itemid].effect) return true end
  8. local fishing = { ["Magikarp"] = {skill = 0, level = 1}, ["Gyarados"] = {skill = 75, level = 75}, ["Staryu"] = {skill = 22, level = 6}, ["Starmie"] = {skill = 49, level = 20}, ["Tentacool"] = {skill = 20, level = 7}, ["Tentacruel"] = {skill = 60, level = 75}, ["Goldeen"] = {skill = 17, level = 5}, ["Seaking"] = {skill = 28, level = 11}, ["Krabby"] = {skill = 14, level = 2}, ["Kingler"] = {skill = 35, level = 14}, ["Horsea"] = {skill = 16, level = 3}, ["Seadra"] = {skill = 41, level = 15}, ["Poliwag"] = {skill = 15, level = 2}, ["Poliwhirl"] = {skill = 27, level = 9}, ["Squirtle"] = {skill = 25, level = 25}, ["Wartortle"] = {skill = 45, level = 44}, ["Blastoise"] = {skill = 75, level = 75}, ["Lapras"] = {skill = 85, level = 85}, } local storage = 15458 local bonus = 1 local limite = 100 local function doFish(cid, pos, ppos, chance, interval, number) if not isCreature(cid) then return false end if getThingPos(cid).x ~= ppos.x or getThingPos(cid).y ~= ppos.y then return false end if getPlayerStorageValue(cid, storage) ~= number then return false end doSendMagicEffect(pos, CONST_ME_LOSEENERGY) local peixe = 0 local playerpos = getClosestFreeTile(cid, getThingPos(cid)) local fishes = {} local randomfish = "" if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, bonus) end for a, b in pairs (fishing) do if getPlayerSkillLevel(cid, 6) >= b.skill then table.insert(fishes, a) end end if math.random(1, 100) <= chance then if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, bonus) end randomfish = fishes[math.random(#fishes)] peixe = doSummonCreature(randomfish, playerpos) if not isCreature(peixe) then addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) return true end doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(peixe))) --alterado ver depois if #getCreatureSummons(cid) >= 1 then doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 173) doChallengeCreature(getCreatureSummons(cid)[1], peixe) else doSendMagicEffect(getThingPos(cid), 173) doChallengeCreature(cid, peixe) end return true end addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) return true end local waters = {4614, 4615, 4616, 4617, 4618, 4619, 4608, 4609, 4610, 4611, 4612, 4613, 7236, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625, 4665, 4666, 4820, 4821, 4822, 4823, 4824, 4825} function onUse(cid, item, fromPos, itemEx, toPos) if getPlayerGroupId(cid) == 11 then return true end if item.uid ~= getPlayerSlotItem(cid, CONST_SLOT_LEFT).uid then doPlayerSendCancel(cid, "Put the fishing rod in the correct place!") return true end local checkPos = toPos checkPos.stackpos = 1 if getTileThingByPos(checkPos).itemid <= 0 then return true end if not isInArray(waters, getTileInfo(toPos).itemid) then return true end if getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 then doPlayerSendCancel(cid, "You can't fish while surfing/flying.") return true end if isInArray(waters, getTileInfo(getThingPos(cid)).itemid) then doPlayerSendCancel(cid, "You can\'t fish while surfing neither flying above water.") return true end if getTileInfo(getThingPos(getCreatureSummons(cid)[1] or cid)).protection then doPlayerSendCancel(cid, "You can't fish pokémons if you or your pokémon is in protection zone.") return true end setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1) if getPlayerStorageValue(cid, storage) >= 800 then setPlayerStorageValue(cid, storage, 1) end local delay = 3500 - getPlayerSkillLevel(cid, 6) * 25 local chance = 40 doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage)) return true end
  9. function doHealOverTime(cid, heal, turn, effect) --alterado v1.6 peguem o script todo!! if not isCreature(cid) then return true end local regen = (heal*getCreatureMaxHealth(cid)/100) if turn <= 0 or (getCreatureHealth(cid) == getCreatureMaxHealth(cid)) or getPlayerStorageValue(cid, 173) <= 0 then setPlayerStorageValue(cid, 173, -1) return elseif (getCreatureHealth(cid)*getCreatureMaxHealth(cid)/100) + regen >= getCreatureMaxHealth(cid) then doSendAnimatedText(getThingPos(cid), "+".. math.ceil(100 - getCreatureHealth(cid)/getCreatureMaxHealth(cid)*100) .."%", 65) doCreatureAddHealth(cid, regen) doSendMagicEffect(getThingPos(cid), effect) return end doSendAnimatedText(getThingPos(cid), "+ "..heal.."%") doCreatureAddHealth(cid, regen ) doSendMagicEffect(getThingPos(cid), effect) addEvent(doHealOverTime, 1000, cid, heal, turn - 1, effect) addEvent(doUpdateStatusPoke, 1005, getCreatureMaster(cid)) end local potions = { [2273] = {health = 5, duration=10,effect= 12, animate = "SMALL POT", collor = 140}, [2272] = {health = 10, duration=10,effect= 12, animate = "GREAT POT", collor = 140}, [2271] = {health = 25, duration=10,effect= 12, animate = "MEGA POT", collor = 140}, [2275] = {health = 40,duration=10, effect= 12, animate = "HYPER POT", collor = 140}, [2274] = {health = 60, duration=10,effect= 12, animate = "SUPER POT", collor = 140}, } function onUse(cid, item, frompos, item2, topos) local pid = getThingFromPosWithProtect(topos) local pokeballInfo = getPokeballInfo(getPlayerSlotItem(cid, 8).uid) if not isCreature(pid) or not isSummon(pid) then return doPlayerSendCancel(cid, "You can only use potions on your own Pokemons!") end if getCreatureMaster(pid) ~= cid then return doPlayerSendCancel(cid, "You can only use potions on your own Pokemons!") end if getCreatureHealth(pid) == getCreatureMaxHealth(pid) then return doPlayerSendCancel(cid, "This pokemon is already at full health.") end if getPlayerStorageValue(pid, 173) >= 1 then return doPlayerSendCancel(cid, "This pokemon is already under effects of potions.") end if getPlayerStorageValue(cid, 52481) >= 1 then return doPlayerSendCancel(cid, "You can't do that while a duel.") end doCreatureSay(cid, "".. pokeballInfo.nick..", take this potion!", TALKTYPE_SAY) doSendAnimatedText(getThingPos(pid), potions[item.itemid].animate, potions[item.itemid].collor) setPlayerStorageValue(pid, 173, 1) doRemoveItem(item.uid, 1) doHealOverTime(pid, potions[item.itemid].health, potions[item.itemid].duration, potions[item.itemid].effect) return true end
  10. local fishing = { ["Magikarp"] = {skill = 0, level = 1}, ["Gyarados"] = {skill = 75, level = 75}, ["Staryu"] = {skill = 22, level = 6}, ["Starmie"] = {skill = 49, level = 20}, ["Tentacool"] = {skill = 20, level = 7}, ["Tentacruel"] = {skill = 60, level = 75}, ["Goldeen"] = {skill = 17, level = 5}, ["Seaking"] = {skill = 28, level = 11}, ["Krabby"] = {skill = 14, level = 2}, ["Kingler"] = {skill = 35, level = 14}, ["Horsea"] = {skill = 16, level = 3}, ["Seadra"] = {skill = 41, level = 15}, ["Poliwag"] = {skill = 15, level = 2}, ["Poliwhirl"] = {skill = 27, level = 9}, ["Squirtle"] = {skill = 25, level = 25}, ["Wartortle"] = {skill = 45, level = 44}, ["Blastoise"] = {skill = 75, level = 75}, ["Lapras"] = {skill = 85, level = 85}, } local storage = 15458 local bonus = 1 local limite = 100 local function doFish(cid, pos, ppos, chance, interval, number) if not isCreature(cid) then return false end if getThingPos(cid).x ~= ppos.x or getThingPos(cid).y ~= ppos.y then return false end if getPlayerStorageValue(cid, storage) ~= number then return false end doSendMagicEffect(pos, CONST_ME_LOSEENERGY) local peixe = 0 local playerpos = getClosestFreeTile(cid, getThingPos(cid)) local fishes = {} local randomfish = "" if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, bonus) end for a, b in pairs (fishing) do if getPlayerSkillLevel(cid, 6) >= b.skill then table.insert(fishes, a) end end if math.random(1, 100) <= chance then if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, bonus) end randomfish = fishes[math.random(#fishes)] peixe = doSummonCreature(randomfish, playerpos) if not isCreature(peixe) then addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) return true end doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(peixe))) --alterado ver depois if #getCreatureSummons(cid) >= 1 then doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 173) doChallengeCreature(getCreatureSummons(cid)[1], peixe) else doSendMagicEffect(getThingPos(cid), 173) doChallengeCreature(cid, peixe) end return true end addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) return true end local waters = {4614, 4615, 4616, 4617, 4618, 4619, 4608, 4609, 4610, 4611, 4612, 4613, 7236, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625, 4665, 4666, 4820, 4821, 4822, 4823, 4824, 4825} function onUse(cid, item, fromPos, itemEx, toPos) if getPlayerGroupId(cid) == 11 then return true end if item.uid ~= getPlayerSlotItem(cid, CONST_SLOT_LEFT).uid then doPlayerSendCancel(cid, "Put the fishing rod in the correct place!") return true end local checkPos = toPos checkPos.stackpos = 1 if not isInArray(waters, getTileInfo(toPos).itemid) then return true end if getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 then doPlayerSendCancel(cid, "You can't fish while surfing/flying.") return true end if isInArray(waters, getTileInfo(getThingPos(cid)).itemid) then doPlayerSendCancel(cid, "You can\'t fish while surfing neither flying above water.") return true end if getTileInfo(getThingPos(getCreatureSummons(cid)[1] or cid)).protection then doPlayerSendCancel(cid, "You can't fish pokémons if you or your pokémon is in protection zone.") return true end setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1) if getPlayerStorageValue(cid, storage) >= 800 then setPlayerStorageValue(cid, storage, 1) end local delay = 3500 - getPlayerSkillLevel(cid, 6) * 25 local chance = 40 doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage)) return true end
  11. function doHealOverTime(cid, heal, turn, effect) --alterado v1.6 peguem o script todo!! if not isCreature(cid) then return true end local regen = (heal*getCreatureMaxHealth(cid)/100) if turn <= 0 or (getCreatureHealth(cid) == getCreatureMaxHealth(cid)) or getPlayerStorageValue(cid, 173) <= 0 then setPlayerStorageValue(cid, 173, -1) return elseif (getCreatureHealth*getCreatureMaxHealth(cid)/100) + regen >= getCreatureMaxHealth(cid) then doSendAnimatedText(getThingPos(cid), "+".. math.ceil(100 - getCreatureHealth/getCreatureMaxHealth*100) .."%", 65) doCreatureAddHealth(cid, regen) doSendMagicEffect(getThingPos(cid), effect) return end doSendAnimatedText(getThingPos(cid), "+ "..heal.."%") doCreatureAddHealth(cid, regen ) doSendMagicEffect(getThingPos(cid), effect) addEvent(doHealOverTime, 1000, cid, heal, turn - 1, effect) addEvent(doUpdateStatusPoke, 1005, getCreatureMaster(cid)) end local potions = { [2273] = {health = 5, duration=10,effect= 12, animate = "SMALL POT", collor = 140}, [2272] = {health = 10, duration=10,effect= 12, animate = "GREAT POT", collor = 140}, [2271] = {health = 25, duration=10,effect= 12, animate = "MEGA POT", collor = 140}, [2275] = {health = 40,duration=10, effect= 12, animate = "HYPER POT", collor = 140}, [2274] = {health = 60, duration=10,effect= 12, animate = "SUPER POT", collor = 140}, } function onUse(cid, item, frompos, item2, topos) local pid = getThingFromPosWithProtect(topos) local pokeballInfo = getPokeballInfo(getPlayerSlotItem(cid, 8).uid) if not isCreature(pid) or not isSummon(pid) then return doPlayerSendCancel(cid, "You can only use potions on your own Pokemons!") end if getCreatureMaster(pid) ~= cid then return doPlayerSendCancel(cid, "You can only use potions on your own Pokemons!") end if getCreatureHealth(pid) == getCreatureMaxHealth(pid) then return doPlayerSendCancel(cid, "This pokemon is already at full health.") end if getPlayerStorageValue(pid, 173) >= 1 then return doPlayerSendCancel(cid, "This pokemon is already under effects of potions.") end if getPlayerStorageValue(cid, 52481) >= 1 then return doPlayerSendCancel(cid, "You can't do that while a duel.") end doCreatureSay(cid, "".. pokeballInfo.nick..", take this potion!", TALKTYPE_SAY) doSendAnimatedText(getThingPos(pid), potions[item.itemid].animate, potions[item.itemid].collor) setPlayerStorageValue(pid, 173, 1) doRemoveItem(item.uid, 1) doHealOverTime(pid, potions[item.itemid].health, potions[item.itemid].duration, potions[item.itemid].effect) return true end
  12. local fishing = { ["Magikarp"] = {skill = 0, level = 1}, ["Gyarados"] = {skill = 75, level = 75}, ["Staryu"] = {skill = 22, level = 6}, ["Starmie"] = {skill = 49, level = 20}, ["Tentacool"] = {skill = 20, level = 7}, ["Tentacruel"] = {skill = 60, level = 75}, ["Goldeen"] = {skill = 17, level = 5}, ["Seaking"] = {skill = 28, level = 11}, ["Krabby"] = {skill = 14, level = 2}, ["Kingler"] = {skill = 35, level = 14}, ["Horsea"] = {skill = 16, level = 3}, ["Seadra"] = {skill = 41, level = 15}, ["Poliwag"] = {skill = 15, level = 2}, ["Poliwhirl"] = {skill = 27, level = 9}, ["Squirtle"] = {skill = 25, level = 25}, ["Wartortle"] = {skill = 45, level = 44}, ["Blastoise"] = {skill = 75, level = 75}, ["Lapras"] = {skill = 85, level = 85}, } local storage = 15458 local bonus = 1 local limite = 100 local function doFish(cid, pos, ppos, chance, interval, number) if not isCreature(cid) then return false end if getThingPos(cid).x ~= ppos.x or getThingPos(cid).y ~= ppos.y then return false end if getPlayerStorageValue(cid, storage) ~= number then return false end doSendMagicEffect(pos, CONST_ME_LOSEENERGY) local peixe = 0 local playerpos = getClosestFreeTile(cid, getThingPos(cid)) local fishes = {} local randomfish = "" if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, bonus) end for a, b in pairs (fishing) do if getPlayerSkillLevel(cid, 6) >= b.skill then table.insert(fishes, a) end end if math.random(1, 100) <= chance then if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, bonus) end randomfish = fishes[math.random(#fishes)] peixe = doSummonCreature(randomfish, playerpos) if not isCreature(peixe) then addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) return true end doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(peixe))) --alterado ver depois if #getCreatureSummons(cid) >= 1 then doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 173) doChallengeCreature(getCreatureSummons(cid)[1], peixe) else doSendMagicEffect(getThingPos(cid), 173) doChallengeCreature(cid, peixe) end return true end addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) return true end local waters = {4614, 4615, 4616, 4617, 4618, 4619, 4608, 4609, 4610, 4611, 4612, 4613, 7236, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625, 4665, 4666, 4820, 4821, 4822, 4823, 4824, 4825} function onUse(cid, item, fromPos, itemEx, toPos) if getPlayerGroupId(cid) == 11 then return true end if item.uid ~= getPlayerSlotItem(cid, CONST_SLOT_LEFT).uid then doPlayerSendCancel(cid, "Put the fishing rod in the correct place!") return TRUE end local checkPos = toPos checkPos.stackpos = 1 if not isInArray(waters, getTileInfo(toPos).itemid) then return true end if getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 then doPlayerSendCancel(cid, "You can't fish while surfing/flying.") return true end if isInArray(waters, getTileInfo(getThingPos(cid)).itemid) then doPlayerSendCancel(cid, "You can\'t fish while surfing neither flying above water.") return true end if getTileInfo(getThingPos(getCreatureSummons(cid)[1] or cid)).protection then doPlayerSendCancel(cid, "You can't fish pokémons if you or your pokémon is in protection zone.") return true end
  13. Crypter postou uma resposta no tópico em Suporte OTServer Derivados
    Se o client for extendido marca a opção extended em preferencias
  14. No item editor já tem uma opção pra dar reload nos items automaticamente
  15. <instant name="Air Suffocation" words="Air Suffocation" lvl="42" maglv="1" mana="45" exhaustion="3000" prem="0" needlearn="0" direction="1" blockwalls="0" aggressive="1" event="script" value="Air/air suffocation.lua"> <vocation id="5"/> <vocation id="6"/> </instant> Você estava usando a opção casterTargetOrDirection no spells.xml ou seja - Conjurar no Target ou na direção, agora que coloquei só direction vai corrigir o problema.
  16. function onDeEquip(cid, item, slot) local storage = x if getPlayerStorageValue(cid, storage) > 0 then doPlayerSendTextMessage(cid, 18, "Sorry, you cannot unequip this item.") return false end return true end
  17. Use esse comando no terminal , ( Arrume o nome da database e o nome do arquivo ) mysql -u root -p database_name < archive.sql
  18. function onUse(cid, item, frompos, itemEx, topos) local bike = {lookType = 738, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet} --- Esse vai ser Homen local bike1 = {lookType = 737, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet} --- Esse vai ser mulher local speed = 474 --- Velocidade que a bike terá. if isPlayer(cid) and not isPremium(cid) and premium == true then doTeleportThing(cid, fromPosition, false) doPlayerSendCancel(cid, "Only premium accounts can mount.") return true end if item.uid ~= getPlayerSlotItem(cid, CONST_SLOT_RING).uid then doPlayerSendCancel(cid, "Put in the correct slot.") return true end if getPlayerStorageValue(cid, 17001) == 1 or getPlayerStorageValue(cid, 63215) == 1 or getPlayerStorageValue(cid, 17000) == 1 then doPlayerSendCancel(cid, "Dismount your pokemon to ride.") return true end if getPlayerStorageValue(cid, 32001) == 1 then doRemoveCondition(cid, CONDITION_OUTFIT) doChangeSpeed(cid, -speed) doSendMagicEffect(getPlayerPosition(cid), 18) setPlayerStorageValue(cid, 32001, -1) else if getPlayerSex(cid) == 1 then -- homem doChangeSpeed(cid, speed) doSetCreatureOutfit(cid, bike, -1) doSendMagicEffect(getPlayerPosition(cid), 18) setPlayerStorageValue(cid, 32001, 1) elseif getPlayerSex(cid) == 0 then -- homem doChangeSpeed(cid, speed) doSetCreatureOutfit(cid, bike1, -1) doSendMagicEffect(getPlayerPosition(cid), 18) setPlayerStorageValue(cid, 32001, 1) end end return true end
  19. Tibia_(1).exe
  20. Talvez o items.otb esteja com os atributos errados, da um reload nele
  21. Para alterar as Rates de catch das pokeball do seu server você deve alterar essa tabela: local ballcatch = { [2394] = {cr = 1, on = 24, off = 23, ball = {11826, 11737}, send = 47, typeee = "normal"}, [2391] = {cr = 1,5, on = 198, off = 197, ball = {11832, 11740}, send = 48, typeee = "great"}, [2393] = {cr = 3, on = 202, off = 201, ball = {11835, 11743}, send = 46, typeee = "super"}, [2392] = {cr = 2, on = 200, off = 199, ball = {11829, 11746}, send = 49, typeee = "ultra"}, [12617] = {cr = 3, on = 204, off = 203, ball = {10975, 12621}, send = 35, typeee = "saffari"}, } Observe que a pra alterar a rate você tem que alterar o: cr
  22. http://www.tibiaking.com/forum/forums/topic/74632-old-client-dll-extender/
  23. Cara tu postou na área errada, a certa seria http://www.tibiaking.com/forum/forums/forum/139-tibia-alternativo/
  24. Você pode aumentar o limite de Sprite com a dll que foi postada aqui no tibiaking
  25. Crypter postou uma resposta no tópico em Suporte OTServer Derivados
    https://hastebin.com/omojexapal.lua

Informação Importante

Confirmação de Termo