Ir para conteúdo

(Pedido) Pesca


BrunoMaciel

Posts Recomendados

Queria pedir uma ajuda sobre o systema de pesca mesmo queria por nele quando o player for pesca ele pedir pro player usa a roupa de pesca.

 

Ai quando o player muda de roupa pra pesca ele consegui pesca normal mas so a roupa mesmo sem aquela coisa de vara de pesca so a roupa.

 

Script

Spoiler

local fishing = {
["Magikarp"] = {skill = 1, level = 1},
["Krabby"] = {skill = 10, level = 10},
["Horsea"] = {skill = 10, level = 10},
["Goldeen"] = {skill = 15, level = 15},
["Marill"] = {skill = 15, level = 15},
["Luvdisc"] = {skill = 15, level = 15},
["Chinchou"] = {skill = 20, level = 20},
["Remoraid"] = {skill = 20, level = 20},
["Clamperl"] = {skill = 20, level = 20},
["Spheal"] = {skill = 25, level = 25},
["Poliwag"] = {skill = 25, level = 25},
["Lanturn"] = {skill = 25, level = 25},
["Staryu"] = {skill = 25, level = 25},
["Mantyke"] = {skill = 25, level = 25},
["Qwilfish"] = {skill = 30, level = 30},
["Tentacool"] = {skill = 30, level = 30},
["Finneon"] = {skill = 30, level = 30},
["Azumarill"] = {skill = 30, level = 30},
["Psyduck"] = {skill = 30, level = 30},
["Octillery"] = {skill = 30, level = 30},
["Squirtle"] = {skill = 30, level = 30},
["Totodile"] = {skill = 30, level = 30},
["Corphish"] = {skill = 30, level = 30},
["Mudkip"] = {skill = 30, level = 30},
["Corsola"] = {skill = 30, level = 30},
["Huntail"] = {skill = 35, level = 35},
["Relicanth"] = {skill = 35, level = 35},
["Lumineon"] = {skill = 35, level = 35},
["Gorebyss"] = {skill = 40, level = 40},
["Seaking"] = {skill = 40, level = 40},
["Starmie"] = {skill = 40, level = 40},
["Seadra"] = {skill = 40, level = 40},
["Crawdaunt"] = {skill = 40, level = 40},
["Kingler"] = {skill = 45, level = 45},
["Poliwhirl"] = {skill = 50, level = 50},
["Wartortle"] = {skill = 50, level = 50},
["Prinplup"] = {skill = 50, level = 50},
["Croconaw"] = {skill = 50, level = 50},
["Marshtomp"] = {skill = 50, level = 50},
["Feebas"] = {skill = 75, level = 75},
["Golduck"] = {skill = 90, level = 90},
["Vaporeon"] = {skill = 90, level = 90},
["Blastoise"] = {skill = 100, level = 100},
["Milotic"] = {skill = 100, level = 100},
["Tentacruel"] = {skill = 100, level = 100},
["Kingdra"] = {skill = 100, level = 100},
["Gyarados"] = {skill = 100, level = 100},
["Feraligatr"] = {skill = 100, level = 100},
["Wailord"] = {skill = 100, level = 100},
["Empoleon"] = {skill = 100, level = 100},
["Swampert"] = {skill = 100, level = 100},
}

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
         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]), 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

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 = 3500 - getPlayerSkillLevel(cid, 6) * 25
local chance = 10 + getPlayerSkillLevel(cid, 6) / 2.5

doFish(cid, toPos, getThingPos(cid), chance, delay, getPlayerStorageValue(cid, storage))

return true
end

Quem puder ajudar ^^

 

Rep++

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...