Ir para conteúdo
  • 0

Rod Que Pesca Monstros.


pedrizito15

Pergunta

Bom já olhei um tópico e não tinha o que eu precisava :

http://www.xtibia.co...pesca-monstros/

 

Então lá vai :

 

Eu gostaria de um sistema de "pescar criaturas" que funcionasse assim :

 

O player pesca os peixes normalmente ao atingir um certo skill ele compra outra FishingRod (ID :10223) e pode começar a pescar monstro :

 

Detalhes :

 

Skill 30 Pode começar a pescar criaturas

O Player Terá Uma Certa Chance De Pescar BOSS (Essa Chance Será Em Porcentagem)

A pesca de Criaturas aumentará o skill de fishing normalmente (Como se foce um fishing rod normal)

O player não poderá pescar criaturas em PZ

A criatura atacará o player que pesca-la

Se o player conseguir pescar um boss apareça a Mensagem Para Todo O Server (IPLAYERNAMEl Pescou O Boss lBossNamel)

 

Criaturas Por Skill :

 

Skill 30 ~Young Sea Serpent~Quara Predator Scout~Quara Constrictor Scout~Quara Mantassin Scout~

Skill 50 ~Quara Mantassin~Quara Hydromancer~

Skill 60 ~Sea Serpent~Quara Predator

 

OBS : (Se o player tiver skill 50 poderá pescar normalmente as criaturas do skill 30 valido também para o skill 60)

 

Bosses Por Porcentagem :

 

Leviathan (35%)

Ghazbaran (5%)

 

Se precisar de mais detalhes só falar ....

 

@UP

 

@UP

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

local configg = {

waterIds = {493, 4608, 4609, 4610, 4611, 4612, 4613, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625, 4820, 4821, 4822, 4823, 4824, 4825}

}

local monsters = {

{'Water Elemental'},

{'Rat'}

}

local numero = 2 -- numero de monstros que você colocou /\

local number = 10 -- < quanto maior, mais dificil de pescar um monstro

local config = {

rateSkill = getConfigValue("rateSkill"),

allowFromPz = false,

useWorms = true

}

function onUse(cid, item, frompos, item2, topos)

if(not isInArray(configg.waterIds, item2.itemid)) then

return false

end

local chance = math.random(1,numero+number) --

if chance >= 1 and chance <= numero then

create = monsters[chance][1]

doSummonCreature(create, getCreaturePosition(cid))

doSendMagicEffect(topos, 11)

doCreatureSay(cid, "Whatahell", TEXTCOLOR_BLUE)

else

doSendMagicEffect(topos, CONST_ME_LOSEENERGY)

end

if((config.allowFromPz or not getTileInfo(getCreaturePosition(cid)).protection) and item2.itemid ~= 493 and

math.random(1, (100 + (getPlayerSkill(cid, SKILL_FISHING) / 10))) < getPlayerSkill(cid, SKILL_FISHING) and

(not config.useWorms or (getPlayerItemCount(cid, ITEM_WORM) > 0 and doPlayerRemoveItem(cid, ITEM_WORM, 1)))) then

doPlayerAddItem(cid, ITEM_FISH, 1)

doPlayerAddSkillTry(cid, SKILL_FISHING, config.rateSkill)

doSendMagicEffect(topos, CONST_ME_LOSEENERGY)

else

doSendMagicEffect(topos, CONST_ME_LOSEENERGY)

end

return true

end

Editado por lfelipebsilva05
Link para o comentário
Compartilhar em outros sites

  • 0

@Ifelipebsilva05

Mais atenção amigo, a intenção de ajuda foi boa mais esse nao foi o pedido do Xtibiano.

Fica como aviso verbal.

Cuidado com Floods.

Link para o comentário
Compartilhar em outros sites

  • 0

fishing = {
 config = {
  allow_fish_on_pz = false,
  need_bait = true,
  bait_id = ITEM_WORM,
  water = {493,4608,4609,4610,4611,4612,4613,4614,4615,4616,4617,4618,4619,4620,4621,4622,4623,4624,4625,4820,4821,4822,4823,4824,4825},
   },
 monsters = {
  [30] = {"Young Sea Serpent","Quara Predator Scout","Quara Constrictor Scout","Quara Mantassin Scout"},
  [50] = {"Quara Mantassin","Quara Hydromancer"},
  [60] = {"Sea Serpent","Quara Predator"},
  },
 check = function (self, cid, topos)
  local checkpos = topos
  checkpos.stackpos = 0
  local ret = {}
  if not isInArray(self.cnfig.water, getThingFromPos(checkpos).itemid) then
   return doPlayerSendCancel(cid, "You can't fish there.")
  elseif getTileInfo(getThingPos(cid)).protection and self.config.allow_fish_on_pz then
   return doPlayerSendCancel(cid, "You can't fish inside protection zone.")
  elseif self.config.need_bait and getPlayerItemCount(cid, self.config.bait_id) < 1 then
   return doPlayerSendCancel(cid, "You need at least a ".. getItemNameById(self.config.bait_id) .." to fish.")
  end
  doSendMagicEffect(topos, 1)
  local rand = math.random(100)
  if rand <= 5 then
   return fishing:proceed(cid, "Ghazbaran", true)
  elseif rand >= 5 and rand <= 35 then
   return fishing:proceed(cid, "Leviathan", true)
  end
  for level,arr in pairs(self.monsters) do
   for _,name in pairs(arr) do
 if level <= getPlayerSkill(cid, SKILL_FISHING) then
  table.insert(ret, name)
 end
   end
  end
  return fishing:proceed(cid, ret[math.random(#ret)], false)
  end,
 proceed = function (self, cid, fish, boss)
  if self.config.need_bait then
   doPlayerRemoveItem(cid, self.config.bait_id, 1)
  end
  if boss then
   doBroadcast(getCreatureName(cid) .." has caught a ".. fish .."!")
  end
  doCreateMonster(fish, getThingPos(cid))
  end,
 }

function onUse(cid, item, pos, item2, topos)
return fishing:check(cid, topos)
end

 

Nao testado.

Editado por Byerne
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...