Ir para conteúdo

(Bug) Isca


BrunooMaciell

Posts Recomendados

Estou com um bug no meu systema de isca !!

 

BUG

[02/03/2014 00:19:21] [Error - Action Interface]

[02/03/2014 00:19:21] data/actions/scripts/Fishing_System/fishing.lua:onUse
[02/03/2014 00:19:21] Description:
[02/03/2014 00:19:21] data/actions/scripts/Fishing_System/fishing.lua:138: bad argument #2 to 'random' (interval is empty)
[02/03/2014 00:19:21] stack traceback:
[02/03/2014 00:19:21] [C]: in function 'random'
[02/03/2014 00:19:21] data/actions/scripts/Fishing_System/fishing.lua:138: in function

 

 

SCRIPT

 

local fishing = {
[-1] = { segs = 2, pokes = {{"Magikarp", 1}} },

[3976] = { segs = 5, pokes = {{"Horsea", 3}, {"Remoraid", 2}, {"Goldeen", 2}, {"Poliwag", 1}, {"Swinub", 1}} }, -- pega no client da pxg

[12855] = { segs = 5, pokes = {{"Tentacool", 2}, {"Staryu", 1}, {"Krabby", 2}, {"Shellder", 1}, {"Poliwag", 3}} },

[12854] = { segs = 5, pokes = {{"Seel", 1}, {"Chinchou", 1}, {"Slowpoke", 1}, {"Staryu", 2}, {"Psyduck", 1}, {"Wooper", 1}} },

[12858] = { segs = 5, pokes = {{"Seaking", 1}, {"Seadra", 1}, {"Poliwhirl", 1}, {"Squirtle", 1}, {"Totodile", 1}} },

[12857] = { segs = 5, pokes = {{"Starmie", 1}, {"Kingler", 1}, {"Corsola", 1}, {"Qwilfish", 1}} }, -- pega no client da pxg

[12860] = { segs = 3, pokes = {{"Lanturn", 1}, {"Dewgong", 1}, {"Slowbro", 1}, {"Azumarill", 1}} },

[12859] = { segs = 3, pokes = {{"Cloyster", 1}, {"Poliwrath", 1}, {"Politoed", 1}, {"Octillery", 1}} },

[12856] = { segs = 3, pokes = {{"Dratini", 2}, {"Quagsire", 1}, {"Dragonair", 1}, {"Politoed", 2}, {"Lapras", 1}} },

[12853] = { segs = 3, pokes = {{"Gyarados", 1}, {"Mantine", 1}, {"Tentacruel", 1}, {"Kingdra", 1}, {"Giant Magikarp", 1}, {"Feraligatr", 1}, {"Blastoise", 1}} },
}

local storageP = 154585
local sto_iscas = 5648454 --muda aki pra sto q ta no script da isca
local bonus = 15
local limite = 100


local function doFish(cid, pos, ppos, interval)
if not isCreature(cid) then return false end
if getThingPos(cid).x ~= ppos.x or getThingPos(cid).y ~= ppos.y then
return false
end

doSendMagicEffect(pos, CONST_ME_LOSEENERGY)

if interval > 0 then
addEvent(doFish, 1000, cid, pos, ppos, interval-1)
return true
end

local peixe = 0
local playerpos = getClosestFreeTile(cid, getThingPos(cid))
local fishes = fishing[getPlayerStorageValue(cid, sto_iscas)]
local random = {}

if getPlayerSkillLevel(cid, 6) < limite then
doPlayerAddSkillTry(cid, 6, bonus * 5)
end

--[[if math.random(1, 100) <= chance then
if getPlayerSkillLevel(cid, 6) < limite then
doPlayerAddSkillTry(cid, 6, bonus * 5)
end]]

random = fishes.pokes[math.random(#fishes.pokes)]

for i = 1, math.random(random[2]) do
peixe = doSummonCreature(random[1], playerpos)
if not isCreature(peixe) then
setPlayerStorageValue(cid, storageP, -1)
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end
doSetMonsterPassive(peixe)
doWildAttackPlayer(peixe, cid)
doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(peixe))) --alterado ver depois
if #getCreatureSummons(cid) >= 1 then
doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 0)
doChallengeCreature(getCreatureSummons(cid)[1], peixe)
else
doSendMagicEffect(getThingPos(cid), 0)
doChallengeCreature(cid, peixe)
end
end
setPlayerStorageValue(cid, storageP, -1)
doRemoveCondition(cid, CONDITION_OUTFIT)
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

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 isInArray({520, 521}, getCreatureOutfit(cid).lookType) then
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need fisher outfit for fishing.")
end

local delay = fishing[getPlayerStorageValue(cid, sto_iscas)].segs

if getPlayerStorageValue(cid, sto_iscas) ~= -1 then
if getPlayerItemCount(cid, getPlayerStorageValue(cid, sto_iscas)) >= 1 then
doPlayerRemoveItem(cid, getPlayerStorageValue(cid, sto_iscas), 1)
else
setPlayerStorageValue(cid, sto_iscas, -1)
end
end

local outfit = getCreatureOutfit(cid)
local out = getPlayerSex(cid) == 0 and 1467 or 1468

doSetCreatureOutfit(cid, {lookType = out, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1)
setPlayerStorageValue(cid, storageP, 1) --alterei looktype
doCreatureSetNoMove(cid, true)

doFish(cid, toPos, getThingPos(cid), math.random(5, delay))

return true
end

 

 

Curti++

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
×
×
  • Criar Novo...