detalhe: tu ta na area errada amigão...
local fishes = {
[70] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl", "Seaking", "Kingler", "Seadra", "Starmie", "Squirtle"},
[65] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl", "Seaking", "Kingler", "Seadra", "Starmie"},
[60] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl", "Seaking", "Kingler", "Seadra"},
[55] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl", "Seaking", "Kingler"},
[50] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl", "Seaking"},
[45] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl"},
[40] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu"},
[35] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool"},
[30] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen"},
[25] = {"Magikarp", "Poliwag", "Horsea", "Krabby"},
[20] = {"Magikarp", "Poliwag", "Horsea"},
[15] = {"Magikarp", "Poliwag"},
[10] = {"Magikarp"}
}
local storage = 15458
local bonus = 1
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 removed = doCreateItem(1285, 1, getThingPos(cid))
local playerpos = getClosestFreeTile(cid, getThingPos(cid))
doRemoveItem(removed, 1)
doPlayerAddSkillTry(cid, 6, bonus)
for a, b in pairs(fishes) do
if getPlayerSkillLevel(cid, 6) >= a and math.random(1, 100) <= chance then
doPlayerAddSkillTry(cid, 6, bonus * 2)
local peixe = doSummonCreature(b[math.random(1, #b)], playerpos)
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
end
addEvent(doFish, interval, cid, pos, ppos, chance, interval, number)
return true
end
function onUse(cid, item, fromPos, itemEx, toPos)
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}
if isInArray(waters, getTileInfo(getThingPos(cid)).itemid) then
doPlayerSendCancel(cid, "You can\'t fish whileurfing neither flying above water.")
return true
end
setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1)
local delay = 3500 - getPlayerSkillLevel(cid, 6) * 30
local chance = 7
doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage))
return true
end
Fiz com que adicione o mínimo possível de fishing (local bonus = 1), e lá embaixo, coloquei a chance para 7% (local chance = 7).
Agora uma pergunta... quem te passou essa script ?
Fui eu quem fiz ela, e postei pra um cara aqui no xtibia, mas essa script que você colocou nesse post tá bem bagunçada, o cara colocou simplesmente 100% chance de pesca um pokemon, além de colocar pra quando pescasse o pokemon, o fishing aumentasse muito...
Vou te passar a script original aqui:
local fishes = {
[70] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl", "Seaking", "Kingler", "Seadra", "Starmie", "Squirtle"},
[65] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl", "Seaking", "Kingler", "Seadra", "Starmie"},
[60] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl", "Seaking", "Kingler", "Seadra"},
[55] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl", "Seaking", "Kingler"},
[50] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl", "Seaking"},
[45] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu", "Poliwhirl"},
[40] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool", "Staryu"},
[35] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen", "Tentacool"},
[30] = {"Magikarp", "Poliwag", "Horsea", "Krabby", "Goldeen"},
[25] = {"Magikarp", "Poliwag", "Horsea", "Krabby"},
[20] = {"Magikarp", "Poliwag", "Horsea"},
[15] = {"Magikarp", "Poliwag"},
[10] = {"Magikarp"}
}
local storage = 15458
local bonus = 10
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 removed = doCreateItem(1285, 1, getThingPos(cid))
local playerpos = getClosestFreeTile(cid, getThingPos(cid))
doRemoveItem(removed, 1)
doPlayerAddSkillTry(cid, 6, bonus)
for a, b in pairs(fishes) do
if getPlayerSkillLevel(cid, 6) >= a and math.random(1, 100) <= chance then
doPlayerAddSkillTry(cid, 6, 5)
local peixe = doSummonCreature(b[math.random(1, #b)], playerpos)
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
end
addEvent(doFish, interval, cid, pos, ppos, chance, interval, number)
return true
end
function onUse(cid, item, fromPos, itemEx, toPos)
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}
if isInArray(waters, getTileInfo(getThingPos(cid)).itemid) then
doPlayerSendCancel(cid, "You can\'t fish whileurfing neither flying above water.")
return true
end
setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage) + 1)
local delay = 3500 - getPlayerSkillLevel(cid, 6) * 30
local chance = 10 + getPlayerSkillLevel(cid, 6) / 2.5
doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage))
return true
end
A diferença da primeira para a da segunda, é que na primeira a chance de pescar um pokemon (independente do level) é de 7%, mas já na segunda, foi feita pela fórmula <10 + level do fishing / 2.5>, ou seja, um cara com fishing 15 (bem baixo) teria 16% chance de pescar, e um cara com fishing 70 (bem alto), teria 38% chance de pescar um pokemon.
a outra diferença é que na primeira script, o cara ganha 1 try por pescada (bem difícil upar) e na segunda, ele ganha um pouco mais.
Ai você escolhe como quiser configurar.
Lembrando que nessa skill de fishing, o jogador pode pescar automático em vez de ficar tendo que apertar hotkey toda hora (por isso é importante não mexer no delay, ao menos que você saiba o que está fazendo).
você pode editar o local bonus, que é a quantidade de tries que o player ganha ao pescar (1 é o mais difícil)
você pode editar o local chance, que é a chance de pescar qualquer pokemon...







info
Grupo: Campones
Registrado: 02/07/11
Posts: 7
Reputação: 0
Preciso que algum GÊNIO dos scripts me ajude a arrumar esse script de fishing, quero ele bem HARD igual no tibia global, que upe pouco o fishing e que pesque 20 vezes pra vir um peixe, agradeço desde já.