Ir para conteúdo

Featured Replies

Postado

Eae galera blz?

Bom eu queria colocar um tempo de esperar na minha pesca.

Agradeço desde já!

 

 

 

Iscas caso for necessário:

 

 

local sto = 5648454
local iscas = {
--[id da isca] = lvl de fishing pra usar ela,
[13490] =                  {fish = 10, level = 5}, -- Worm        
[13491] =                 {fish = 20, level = 30},   -- Seaweed
[13492] =                 {fish = 20, level = 35},  -- Fish
[13493] =                 {fish = 20, level = 45},   -- Shrimp
[13494] =                 {fish = 20, level = 50},  -- Kept    
[13495] =                 {fish = 20, level = 60},   -- Steak
[13497] =                 {fish = 20, level = 65},   -- Special Lure
[13496] =                 {fish = 20, level = 70},  -- Misty's Special Lure
[13498] =                 {fish = 20, level = 80},   -- Big Steak
}

function onUse(cid, item, frompos, item2, topos)
   if not iscas[item.itemid] then return true end 
   
   local fishNEED = iscas[item.itemid].fish
   if getPlayerSkillLevel(cid, 6) < iscas[item.itemid].fish then
      return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce precisa de fishing "..fishNEED.." para usar essa isca.")
   end
   
   local level = iscas[item.itemid].level
   if getPlayerLevel(cid) < iscas[item.itemid].level then
      return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce precisa de level "..level.." para usar essa isca.")
   end
      
   if getPlayerStorageValue(cid, sto) == -1 then
      setPlayerStorageValue(cid, sto, item.itemid)
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, 'A sua isca foi colocada na vara de pesca.')
   else
      setPlayerStorageValue(cid, sto, -1)
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, 'A sua isca foi retirada da vara de pesca.')
   end
return true
end

 

Fishing:

 

 

 

local fishing = {
[-1] = { segs = 8, pokes = {{"Magikarp",5},{"Feebas",5}} },

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

[13491] = { segs = 5, pokes = {{"Tentacool",3}, {"Staryu",2}, {"Krabby",3}, {"Shellder",2}, {"Omanyte",3}} },

[13492] = { segs = 5, pokes = {{"Seel",2}, {"Chinchou",2}, {"Slowpoke",2}, {"Kabuto",2}, {"Psyduck",2}, {"Wooper",2}} },

[13493] = { segs = 5, pokes = {{"Seaking",2}, {"Seadra",2}, {"Poliwhirl",2}, {"Squirtle",2}, {"Totodile",2}} },

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

[13495] = { segs = 5, pokes = {{"Lanturn",2}, {"Dewgong",2}, {"Slowbro",2}, {"Azumarill",2}} },

[13497] = { segs = 5, pokes = {{"Cloyster",2}, {"Poliwrath",2}, {"Politoed",2}, {"Octillery",2}} },

[13496] = { segs = 5, pokes = {{"Dratini",3}, {"Quagsire",2}, {"Dragonair",2}, {"Omastar",2}, {"Lapras",1}} },

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

local storageP = 154585
local sto_iscas = 5648454 --muda aki pra sto q ta no script da isca
local bonus = 100
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 * 15)
      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)
             return true
          end
          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)
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


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

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

return true
end

--Edit--

Tempo de espera para usar novamente.

Editado por DkHenzo (veja o histórico de edições)

Postado
local fishing = {
[-1] = { segs = 8, pokes = {{"Magikarp",5},{"Feebas",5}} },
[13490] = { segs = 8, pokes = {{"Horsea",5}, {"Remoraid",3}, {"Goldeen",3}, {"Poliwag",2}, {"Swinub",2}} },  -- pega no client da pxg
[13491] = { segs = 5, pokes = {{"Tentacool",3}, {"Staryu",2}, {"Krabby",3}, {"Shellder",2}, {"Omanyte",3}} },
[13492] = { segs = 5, pokes = {{"Seel",2}, {"Chinchou",2}, {"Slowpoke",2}, {"Kabuto",2}, {"Psyduck",2}, {"Wooper",2}} },
[13493] = { segs = 5, pokes = {{"Seaking",2}, {"Seadra",2}, {"Poliwhirl",2}, {"Squirtle",2}, {"Totodile",2}} },
[13494] = { segs = 5, pokes = {{"Starmie",2}, {"Kingler",2}, {"Corsola",2}, {"Qwilfish",2}} },  -- pega no client da pxg
[13495] = { segs = 5, pokes = {{"Lanturn",2}, {"Dewgong",2}, {"Slowbro",2}, {"Azumarill",2}} },
[13497] = { segs = 5, pokes = {{"Cloyster",2}, {"Poliwrath",2}, {"Politoed",2}, {"Octillery",2}} },
[13496] = { segs = 5, pokes = {{"Dratini",3}, {"Quagsire",2}, {"Dragonair",2}, {"Omastar",2}, {"Lapras",1}} },
[13498] = { segs = 5, pokes = {{"Gyarados",3}, {"Mantine",3}, {"Tentacruel",3}, {"Kingdra",3}, {"Giant Magikarp",3}, {"Feraligatr",3}, {"Blastoise",3}} },
}
local storageP = 154585
local sto_iscas = 5648454 --muda aki pra sto q ta no script da isca
local storageExhausted = 984654
local timeToFish = 3 -- tempo em segundos.
local bonus = 100
local limite = 100
local function doFish(cid, pos, ppos, interval)
	if getPlayerStorageValue (cid, storageExhausted) < os.time () then
		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 * 15)
		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)
			return true
			end
			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)
		setPlayerStorageValue (cid, storageExhausted, timeToFish * 1000 + os.time())
	else
		doPlayerSendCancel (cid, "Você está exhaustado.")
	end
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

	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
	doFish(cid, toPos, getThingPos(cid), math.random(5, delay))
return true
end

 

Não dou suporte via PM, crie um tópico caso tenha dúvidas.

Isso previne que outras pessoas com a mesma dúvida criem tópicos desnecessários.

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo