Ir para conteúdo

Premium Caugtch - By SmiX


SmiX

Posts Recomendados

Olá galerinha, hoje vou ajudar vocês a otimizarem seus respectivos otservidores de pokémon, de base PDA. Como o título já está falando tudo, vamos a instalação. Como quase todo mundo usa a base do slicer vou usar o dele.

 

Vá em: (data/actions/scripts/catch.lua) e substitua tudo por isso:



local chance_premium = 200 -- Mude aqui a chance de capiturar
local ballcatch = {
[2394] = {cr = 3, on = 24, off = 23, ball = 11826, send = 47, typeee = "normal"},
[2391] = {cr = 6, on = 198, off = 197, ball = 11832, send = 48, typeee = "great"},
[2393] = {cr = 10, on = 202, off = 201, ball = 11835, send = 46, typeee = "super"},
[2392] = {cr = 15, on = 200, off = 199, ball = 11829, send = 49, typeee = "ultra"},
}

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

local item2 = getTopCorpse(topos)
if item2 == null then
return true
end

if getItemAttribute(item2.uid, "catching") == 1 then
return true
end  

if getItemAttribute(item2.uid, "golden") and getItemAttribute(item2.uid, "golden") == 1 then
return doPlayerSendCancel(cid, "You can't try to catch a pokemon in the Golden Arena!")   --alterado v1.6
end

local name = string.lower(getItemNameById(item2.itemid))
name = string.gsub(name, "fainted ", "")
name = string.gsub(name, "defeated ", "")

local x = pokecatches[doCorrectPokemonName(name)]

--------------------------------------------------------------------------------
local storage = newpokedex[doCorrectPokemonName(name)].stoCatch   --edited brokes count system
if getPlayerStorageValue(cid, storage) == -1 then
 setPlayerStorageValue(cid, storage, "normal = 0, great = 0, super = 0, ultra = 0, saffari = 0")
end	
--------------------------------------------------------------------------------

if not x then return true end

local owner = getItemAttribute(item2.uid, "corpseowner")

if owner and isCreature(owner) and isPlayer(owner) and cid ~= owner then   --alterado v1.5
doPlayerSendCancel(cid, "You are not allowed to catch this pokemon.")
return true
end
	-----------------------------------------------------
	   newidd = ballcatch[item.itemid].ball	  
	   typeee = ballcatch[item.itemid].typeee
	-----------------------------------------------------
local catchinfo = {}
if isPremium(cid) then
catchinfo.rate = ballcatch[item.itemid].cr + chance_premium
else
catchinfo.rate = ballcatch[item.itemid].cr
end
catchinfo.catch = ballcatch[item.itemid].on
catchinfo.fail = ballcatch[item.itemid].off
catchinfo.newid = newidd					  
catchinfo.name = doCorrectPokemonName(name)
catchinfo.topos = topos
catchinfo.chance = x.chance

doSendDistanceShoot(getThingPos(cid), topos, ballcatch[item.itemid].send)
doRemoveItem(item.uid, 1)

local d = getDistanceBetween(getThingPos(cid), topos)

addEvent(doSendPokeBall, d * 70 + 100 - (d * 14) , cid, catchinfo, false, false, typeee) --edited brokes count system
addEvent(doSendMagicEffect, (d * 70 + 100 - (d * 14)) - 100, topos, 3)

return true
end

 

Funciona assim: Se um player for premium ele terá a chance de catch da ball + a chance premium, ou seja; Ele usa uma pokeball e é premium ele terá 3+200 = 203% de capiturar ;D, só precisa mudar a chance de premium lá em cima para seu gosto, deixei 200 pra teste ^}^.

 

Só isso, fui....

Link para o comentário
Compartilhar em outros sites

  • 4 weeks later...

Bom não se só comigo... mas quando joga a ball pra capturar da um freeze de 1 2 seg ai sim começa a capturar ( isso dps que coloquei o script claro, sem ele funfa normal ).

E coloquei o local chance_premium = 2003% de chances capturei na primeira e na segunda eu não capturei o charizard o.O" mas na logica 100% já capturaria qualquer coisa...

Help?

Link para o comentário
Compartilhar em outros sites

@dido

essa valor ae nao tem nd a ver com % de sucesso da ball... isso vai ser soh +1 numero q vai ser jogado na formula do brun q dai sim vai calcular a % ...

de uma olhada no lib/catch system.lua ... good luck tentando intender aquilo kk

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...