Poderia postar seu fishing.lua da pasta actions ?
- Fórum
- OTServ
- Suporte
- Tópicos Sem Resposta
- [Encerrado] [POKETIBIA] FIGHTING PESCANDO
[Encerrado] [POKETIBIA] FIGHTING PESCANDO
Por lucasmourahere, 05 de ago. de 2016 em Tópicos Sem Resposta
info
Grupo: Visconde
Registrado: 01/07/15
Posts: 416
Reputação: +206
Gênero: Masculino
Char no Tibia: Bluester

info
Grupo: Campones
Registrado: 08/03/16
Posts: 94
Reputação: +4
Gênero: Masculino

5 horas atrás, Bluester disse:Poderia postar seu fishing.lua da pasta actions ?
aqui está meu caro:
local fishing = {["Magikarp"] = {skill = 0, level = -2},["Poliwag"] = {skill = 10, level = 20},["Horsea"] = {skill = 10, level = 24},["Goldeen"] = {skill = 15, level = 24},["Krabby"] = {skill = 20, level = 28},["Tentacool"] = {skill = 20, level = 35},["Poliwhirl"] = {skill = 40, level = 40},["Seaking"] = {skill = 40, level = 40},["Kingler"] = {skill = 45, level = 50},["Seadra"] = {skill = 45, level = 55},["Poliwrath"] = {skill = 52, level = 80},["Kingdra"] = {skill = 52, level = 85},["Gyarados"] = {skill = 180, level = 95},["Tentacruel"] = {skill = 190, level = 95},}local storage = 15496local bonus = 40local limite = 80local 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 = 0local playerpos = getClosestFreeTile(cid, getThingPos(cid))local fishes = {}local randomfish = "" --alterado!! if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, 100)--- 100 endfor a, b in pairs (fishing) do if getPlayerSkillLevel(cid, 6) >= b.skill then table.insert(fishes, a) endend 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 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 doCreatureSetNoMove(cid, false) doRemoveCondition(cid, CONDITION_OUTFIT) return true endaddEvent(doFish, interval, cid, pos, ppos, chance, interval, number)doCreatureSetNoMove(cid, true)return trueendlocal 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 thenreturn trueendlocal checkPos = toPoscheckPos.stackpos = 0if getTileThingByPos(checkPos).itemid <= 0 thendoPlayerSendCancel(cid, '!')return trueendif not isInArray(waters, getTileInfo(toPos).itemid) thenreturn trueendif (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1) and not canFishWhileSurfingOrFlying thendoPlayerSendCancel(cid, "You can't fish while surfing/flying.")return trueendif isInArray(waters, getTileInfo(getThingPos(cid)).itemid) thendoPlayerSendCancel(cid, "You can\'t fish while surfing neither flying above water.")return trueendif 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 trueend if not tonumber(getPlayerStorageValue(cid, storage)) then local test = io.open("data/sendtobrun123.txt", "a+") local read = "" if test then read = test:read("*all") test:close() end read = read.."\n[fishing.lua] "..getCreatureName(cid).." - "..getPlayerStorageValue(cid, storage).."" local reopen = io.open("data/sendtobrun123.txt", "w") reopen:write(read) reopen:close() setPlayerStorageValue(cid, storage, 1)endsetPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1) if getPlayerStorageValue(cid, storage) >= 800 then setPlayerStorageValue(cid, storage, 1) endlocal delay = 1500 - getPlayerSkillLevel(cid, 6) * 50local chance = 7 + getPlayerSkillLevel(cid, 6) / 6.5outfit = getCreatureOutfit(cid)if getPlayerSex(cid) == 0 then out = 1467else out = 1468enddoSetCreatureOutfit(cid, {lookType = out, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1)doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage))return trueend
info
Grupo: Campones
Registrado: 08/03/16
Posts: 94
Reputação: +4
Gênero: Masculino

up
info
Grupo: Campones
Registrado: 08/03/16
Posts: 94
Reputação: +4
Gênero: Masculino

up
info
Grupo: Campones
Registrado: 08/03/16
Posts: 94
Reputação: +4
Gênero: Masculino

up
info
Grupo: Campones
Registrado: 08/03/16
Posts: 94
Reputação: +4
Gênero: Masculino

up
info
Grupo: Visconde
Registrado: 20/03/14
Posts: 367
Reputação: +219
Gênero: Masculino

Qual base está utilizando? E os pokes não estão como passivo não?
info
Grupo: Campones
Registrado: 08/03/16
Posts: 94
Reputação: +4
Gênero: Masculino

5 horas atrás, Drakopoulos disse:Qual base está utilizando? E os pokes não estão como passivo não?
Base: Pokemon Dash Advanced
TFS: 0.3.6
Sim, o servidor possui pokemons poassivos.
info
Grupo: Visconde
Registrado: 20/03/14
Posts: 367
Reputação: +219
Gênero: Masculino

1 hora atrás, lucasmourahere disse:
Base: Pokemon Dash Advanced
TFS: 0.3.6
Sim, o servidor possui pokemons poassivos.
Ta ai
local fishing = { ["Magikarp"] = {skill = 0, level = -2}, ["Poliwag"] = {skill = 10, level = 20}, ["Horsea"] = {skill = 10, level = 24}, ["Goldeen"] = {skill = 15, level = 24}, ["Krabby"] = {skill = 20, level = 28}, ["Tentacool"] = {skill = 20, level = 35}, ["Poliwhirl"] = {skill = 40, level = 40}, ["Seaking"] = {skill = 40, level = 40}, ["Kingler"] = {skill = 45, level = 50}, ["Seadra"] = {skill = 45, level = 55}, ["Poliwrath"] = {skill = 52, level = 80}, ["Kingdra"] = {skill = 52, level = 85}, ["Gyarados"] = {skill = 180, level = 95}, ["Tentacruel"] = {skill = 190, level = 95},}local storage = 15496local bonus = 40local limite = 80local 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 = "" --alterado!! if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, 100)--- 100 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 doSetMonsterPassive(peixe) doWildAttackPlayer(peixe, cid) doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(peixe))) 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 doCreatureSetNoMove(cid, false) doRemoveCondition(cid, CONDITION_OUTFIT) return true end addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) doCreatureSetNoMove(cid, true) return trueendlocal 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 local checkPos = toPos checkPos.stackpos = 0 if getTileThingByPos(checkPos).itemid <= 0 then doPlayerSendCancel(cid, '!') return true end if not isInArray(waters, getTileInfo(toPos).itemid) then return true end if (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1) and not canFishWhileSurfingOrFlying 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 if not tonumber(getPlayerStorageValue(cid, storage)) then local test = io.open("data/sendtobrun123.txt", "a+") local read = "" if test then read = test:read("*all") test:close() end read = read.."\n[fishing.lua] "..getCreatureName(cid).." - "..getPlayerStorageValue(cid, storage).."" local reopen = io.open("data/sendtobrun123.txt", "w") reopen:write(read) reopen:close() setPlayerStorageValue(cid, storage, 1) end setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1) if getPlayerStorageValue(cid, storage) >= 800 then setPlayerStorageValue(cid, storage, 1) end local delay = 1500 - getPlayerSkillLevel(cid, 6) * 50 local chance = 7 + getPlayerSkillLevel(cid, 6) / 6.5 outfit = getCreatureOutfit(cid) if getPlayerSex(cid) == 0 then out = 1467 else out = 1468 end doSetCreatureOutfit(cid, {lookType = out, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1) doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage)) return trueend
info
Grupo: Campones
Registrado: 08/03/16
Posts: 94
Reputação: +4
Gênero: Masculino

2 horas atrás, Drakopoulos disse:Ta ai
local fishing = { ["Magikarp"] = {skill = 0, level = -2}, ["Poliwag"] = {skill = 10, level = 20}, ["Horsea"] = {skill = 10, level = 24}, ["Goldeen"] = {skill = 15, level = 24}, ["Krabby"] = {skill = 20, level = 28}, ["Tentacool"] = {skill = 20, level = 35}, ["Poliwhirl"] = {skill = 40, level = 40}, ["Seaking"] = {skill = 40, level = 40}, ["Kingler"] = {skill = 45, level = 50}, ["Seadra"] = {skill = 45, level = 55}, ["Poliwrath"] = {skill = 52, level = 80}, ["Kingdra"] = {skill = 52, level = 85}, ["Gyarados"] = {skill = 180, level = 95}, ["Tentacruel"] = {skill = 190, level = 95},}local storage = 15496local bonus = 40local limite = 80local 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 = "" --alterado!! if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, 100)--- 100 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 doSetMonsterPassive(peixe) doWildAttackPlayer(peixe, cid) doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(peixe))) 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 doCreatureSetNoMove(cid, false) doRemoveCondition(cid, CONDITION_OUTFIT) return true end addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) doCreatureSetNoMove(cid, true) return trueendlocal 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 local checkPos = toPos checkPos.stackpos = 0 if getTileThingByPos(checkPos).itemid <= 0 then doPlayerSendCancel(cid, '!') return true end if not isInArray(waters, getTileInfo(toPos).itemid) then return true end if (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1) and not canFishWhileSurfingOrFlying 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 if not tonumber(getPlayerStorageValue(cid, storage)) then local test = io.open("data/sendtobrun123.txt", "a+") local read = "" if test then read = test:read("*all") test:close() end read = read.."\n[fishing.lua] "..getCreatureName(cid).." - "..getPlayerStorageValue(cid, storage).."" local reopen = io.open("data/sendtobrun123.txt", "w") reopen:write(read) reopen:close() setPlayerStorageValue(cid, storage, 1) end setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1) if getPlayerStorageValue(cid, storage) >= 800 then setPlayerStorageValue(cid, storage, 1) end local delay = 1500 - getPlayerSkillLevel(cid, 6) * 50 local chance = 7 + getPlayerSkillLevel(cid, 6) / 6.5 outfit = getCreatureOutfit(cid) if getPlayerSex(cid) == 0 then out = 1467 else out = 1468 end doSetCreatureOutfit(cid, {lookType = out, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1) doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage)) return trueend
Obrigado cara!!! *-*
Saberia fazer também com que o selvagem focasse o Summon para dar battle? porque ele apenas da condição de fight para o jogador em si, mas não para o summon, saberia como faço isso?
Editado Setembro 1 por lucasmourahere
info
Grupo: Visconde
Registrado: 20/03/14
Posts: 367
Reputação: +219
Gênero: Masculino

15 minutos atrás, lucasmourahere disse:
Obrigado cara!!! *-*
Saberia fazer também com que o selvagem focasse o Summon para dar battle? porque ele apenas da condição de fight para o jogador em si, mas não para o summon, saberia como faço isso?
Ao pescar os selvagens tão focando o player e não o summon?
info
Grupo: Campones
Registrado: 08/03/16
Posts: 94
Reputação: +4
Gênero: Masculino

2 horas atrás, Drakopoulos disse:Ta ai
local fishing = { ["Magikarp"] = {skill = 0, level = -2}, ["Poliwag"] = {skill = 10, level = 20}, ["Horsea"] = {skill = 10, level = 24}, ["Goldeen"] = {skill = 15, level = 24}, ["Krabby"] = {skill = 20, level = 28}, ["Tentacool"] = {skill = 20, level = 35}, ["Poliwhirl"] = {skill = 40, level = 40}, ["Seaking"] = {skill = 40, level = 40}, ["Kingler"] = {skill = 45, level = 50}, ["Seadra"] = {skill = 45, level = 55}, ["Poliwrath"] = {skill = 52, level = 80}, ["Kingdra"] = {skill = 52, level = 85}, ["Gyarados"] = {skill = 180, level = 95}, ["Tentacruel"] = {skill = 190, level = 95},}local storage = 15496local bonus = 40local limite = 80local 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 = "" --alterado!! if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, 100)--- 100 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 doSetMonsterPassive(peixe) doWildAttackPlayer(peixe, cid) doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(peixe))) 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 doCreatureSetNoMove(cid, false) doRemoveCondition(cid, CONDITION_OUTFIT) return true end addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) doCreatureSetNoMove(cid, true) return trueendlocal 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 local checkPos = toPos checkPos.stackpos = 0 if getTileThingByPos(checkPos).itemid <= 0 then doPlayerSendCancel(cid, '!') return true end if not isInArray(waters, getTileInfo(toPos).itemid) then return true end if (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1) and not canFishWhileSurfingOrFlying 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 if not tonumber(getPlayerStorageValue(cid, storage)) then local test = io.open("data/sendtobrun123.txt", "a+") local read = "" if test then read = test:read("*all") test:close() end read = read.."\n[fishing.lua] "..getCreatureName(cid).." - "..getPlayerStorageValue(cid, storage).."" local reopen = io.open("data/sendtobrun123.txt", "w") reopen:write(read) reopen:close() setPlayerStorageValue(cid, storage, 1) end setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1) if getPlayerStorageValue(cid, storage) >= 800 then setPlayerStorageValue(cid, storage, 1) end local delay = 1500 - getPlayerSkillLevel(cid, 6) * 50 local chance = 7 + getPlayerSkillLevel(cid, 6) / 6.5 outfit = getCreatureOutfit(cid) if getPlayerSex(cid) == 0 then out = 1467 else out = 1468 end doSetCreatureOutfit(cid, {lookType = out, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1) doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage)) return trueend
Está normal, eu pesco e o selvagem foca o summon. O Problema é, se eu não der target no pokemon selvagem, não da battle, precisaria que o pokemon sumonado pegasse battle primeiro que o char.
info
Grupo: Visconde
Registrado: 20/03/14
Posts: 367
Reputação: +219
Gênero: Masculino

2 minutos atrás, lucasmourahere disse:
Está normal, eu pesco e o selvagem foca o summon. O Problema é, se eu não der target no pokemon selvagem, não da battle, precisaria que o pokemon sumonado pegasse battle primeiro que o char.
Ah sim, entendi. Tenta assim para ver.
local fishing = { ["Magikarp"] = {skill = 0, level = -2}, ["Poliwag"] = {skill = 10, level = 20}, ["Horsea"] = {skill = 10, level = 24}, ["Goldeen"] = {skill = 15, level = 24}, ["Krabby"] = {skill = 20, level = 28}, ["Tentacool"] = {skill = 20, level = 35}, ["Poliwhirl"] = {skill = 40, level = 40}, ["Seaking"] = {skill = 40, level = 40}, ["Kingler"] = {skill = 45, level = 50}, ["Seadra"] = {skill = 45, level = 55}, ["Poliwrath"] = {skill = 52, level = 80}, ["Kingdra"] = {skill = 52, level = 85}, ["Gyarados"] = {skill = 180, level = 95}, ["Tentacruel"] = {skill = 190, level = 95},}local storage = 15496local bonus = 40local limite = 80local 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 = "" --alterado!! if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, 100)--- 100 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 doSetMonsterPassive(peixe) doWildAttackPlayer(peixe, cid) doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(peixe))) if #getCreatureSummons(cid) >= 1 then doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 173) doMonsterSetTarget(getCreatureSummons(cid)[1], peixe) else doSendMagicEffect(getThingPos(cid), 173) doMonsterSetTarget(cid, peixe) end doCreatureSetNoMove(cid, false) doRemoveCondition(cid, CONDITION_OUTFIT) return true end addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) doCreatureSetNoMove(cid, true) return trueendlocal 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 local checkPos = toPos checkPos.stackpos = 0 if getTileThingByPos(checkPos).itemid <= 0 then doPlayerSendCancel(cid, '!') return true end if not isInArray(waters, getTileInfo(toPos).itemid) then return true end if (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1) and not canFishWhileSurfingOrFlying 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 if not tonumber(getPlayerStorageValue(cid, storage)) then local test = io.open("data/sendtobrun123.txt", "a+") local read = "" if test then read = test:read("*all") test:close() end read = read.."\n[fishing.lua] "..getCreatureName(cid).." - "..getPlayerStorageValue(cid, storage).."" local reopen = io.open("data/sendtobrun123.txt", "w") reopen:write(read) reopen:close() setPlayerStorageValue(cid, storage, 1) end setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1) if getPlayerStorageValue(cid, storage) >= 800 then setPlayerStorageValue(cid, storage, 1) end local delay = 1500 - getPlayerSkillLevel(cid, 6) * 50 local chance = 7 + getPlayerSkillLevel(cid, 6) / 6.5 outfit = getCreatureOutfit(cid) if getPlayerSex(cid) == 0 then out = 1467 else out = 1468 end doSetCreatureOutfit(cid, {lookType = out, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1) doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage)) return trueend
info
Grupo: Campones
Registrado: 08/03/16
Posts: 94
Reputação: +4
Gênero: Masculino

1 minuto atrás, Drakopoulos disse:Ah sim, entendi. Tenta assim para ver.
local fishing = { ["Magikarp"] = {skill = 0, level = -2}, ["Poliwag"] = {skill = 10, level = 20}, ["Horsea"] = {skill = 10, level = 24}, ["Goldeen"] = {skill = 15, level = 24}, ["Krabby"] = {skill = 20, level = 28}, ["Tentacool"] = {skill = 20, level = 35}, ["Poliwhirl"] = {skill = 40, level = 40}, ["Seaking"] = {skill = 40, level = 40}, ["Kingler"] = {skill = 45, level = 50}, ["Seadra"] = {skill = 45, level = 55}, ["Poliwrath"] = {skill = 52, level = 80}, ["Kingdra"] = {skill = 52, level = 85}, ["Gyarados"] = {skill = 180, level = 95}, ["Tentacruel"] = {skill = 190, level = 95},}local storage = 15496local bonus = 40local limite = 80local 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 = "" --alterado!! if getPlayerSkillLevel(cid, 6) < limite then doPlayerAddSkillTry(cid, 6, 100)--- 100 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 doSetMonsterPassive(peixe) doWildAttackPlayer(peixe, cid) doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(peixe))) if #getCreatureSummons(cid) >= 1 then doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 173) doMonsterSetTarget(getCreatureSummons(cid)[1], peixe) else doSendMagicEffect(getThingPos(cid), 173) doMonsterSetTarget(cid, peixe) end doCreatureSetNoMove(cid, false) doRemoveCondition(cid, CONDITION_OUTFIT) return true end addEvent(doFish, interval, cid, pos, ppos, chance, interval, number) doCreatureSetNoMove(cid, true) return trueendlocal 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 local checkPos = toPos checkPos.stackpos = 0 if getTileThingByPos(checkPos).itemid <= 0 then doPlayerSendCancel(cid, '!') return true end if not isInArray(waters, getTileInfo(toPos).itemid) then return true end if (getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1) and not canFishWhileSurfingOrFlying 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 if not tonumber(getPlayerStorageValue(cid, storage)) then local test = io.open("data/sendtobrun123.txt", "a+") local read = "" if test then read = test:read("*all") test:close() end read = read.."\n[fishing.lua] "..getCreatureName(cid).." - "..getPlayerStorageValue(cid, storage).."" local reopen = io.open("data/sendtobrun123.txt", "w") reopen:write(read) reopen:close() setPlayerStorageValue(cid, storage, 1) end setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1) if getPlayerStorageValue(cid, storage) >= 800 then setPlayerStorageValue(cid, storage, 1) end local delay = 1500 - getPlayerSkillLevel(cid, 6) * 50 local chance = 7 + getPlayerSkillLevel(cid, 6) / 6.5 outfit = getCreatureOutfit(cid) if getPlayerSex(cid) == 0 then out = 1467 else out = 1468 end doSetCreatureOutfit(cid, {lookType = out, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1) doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage)) return trueend
O da pesca funcionou, digo em geral.. o summon pegar battle primeiro que o char, será que teria como fazer isso?
Exemplo: pego um player(NÃO COM GM), desço em um bueiro de rattata, da battle normal, mas se eu ficar parado no bueiro sem dar target no rattata, o battle some, ou seja, não é o summon que está pegando battle e sim o char. Gostaria que fosse primeiro o summon e depois o char, ou os dois juntos.. enfim, alguma maneira que não precise dar target para pegar battle, entende?


info
Grupo: Campones
Registrado: 08/03/16
Posts: 94
Reputação: +4
Gênero: Masculino
Olá xTibia,
Gostaria de saber se algum de vocês poderiam me dizer como faço para quando eu pescar um pokemon dar battle para o meu summon sem eu dar target no pokemon pescado?
Grato desde já!
up