Fishing System [PxG]

GuhPk
Por GuhPk
em Actions e Talkactions
  • 1
  • 2

GuhPk

Rep+ ai se ajudei? asusah'
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 18/10/12Posts: 757

Pessoal, já vi alguns pedidos aqui no fórum, e eu estava dando umas olhadas em outros fóruns ai e achei este system aqui...



Então resolvi por boa vontade vir aqui postar para vocês!!! SAUASHASU'

 

 

 

 

local storage = 15458

local storageP = 154580

local bonus = 1

local limite = 80

 

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 = ""

 

--alterado!!

if getPlayerSkillLevel(cid, 6) < limite then

doPlayerAddSkillTry(cid, 6, 20)

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)

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

setPlayerStorageValue(cid, storageP, -1)

doCreatureSetNoMove(cid, false)

doRemoveCondition(cid, CONDITION_OUTFIT)

return true

end

addEvent(doFish, interval, cid, pos, ppos, chance, interval, number)

setPlayerStorageValue(cid, storageP, 1)

doCreatureSetNoMove(cid, true)

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 getPlayerStorageValue(cid, storageP) > 0 then

doPlayerSendTextMessage(cid, 27, "You are already fishing.")

return true

end

if getPlayerSex(cid) == 1 then

if getCreatureOutfit(cid).lookType ~= 520 then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need fisher outfit for fishing.")

return false

end

else

if getCreatureOutfit(cid).lookType ~= 521 then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need fisher outfit for fishing.")

return false

end

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

outfit = getCreatureOutfit(cid)

if getPlayerSex(cid) == 0 then

out = 1467 --- Outfit de Pesca FEMININA

else

out = 1468 --- Outfit de Pesca MASCULINA

end

doSetCreatureOutfit(cid, {lookType = out, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1)

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

 

return true

end

 

PS: Para que funcione, você deve adicionar as outift's da PxG, do carinha com a vara na mão!! =]



 

Compatível com PDA.

 

 

Creditos

 

Eu - por postar

Xisto - por criar

Oi, eu sou o GuhPk!

Quer ver meus trabalhinhos e outras coisas? Só clicar aqui !!!

Olha meu ShowOff do Mapa de OtPokemon aqui. Caso tenha uma dúvida ou dica comenta lá!

 

Aprendendo mais... Sempre mais...

BrunooMaciell

Bruno Maciel
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 27/08/11Posts: 1919Gênero: MasculinoChar no Tibia: Bruno Maciel

pelo que eu sei compativel com PDA sim !!

 

mais tu esuqeçeu de avisa que o cara que for usa precisara add a oufit da pxg com a vara na mao no cliente !!

Yan Oliveira

Yan18
avatar
Moderador
Moderador

INFOS

Grupo: ModeradorRegistrado: 05/06/12Posts: 2221Gênero: Masculino

Gabrieltxu

O Héroi
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 12/06/12Posts: 2180Gênero: MasculinoChar no Tibia: Supreme Player

hehe Vlw GU vou ver aki e se fikar bom Leva REP++ xD

Canal do facebook de lives!! cola la galera me ajudar seguindo a pagina hehe ! ❤️

 

               https://www.facebook.com/Tuxao0

Dextruidor

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 09/03/11Posts: 4Char no Tibia: Dextruidor

Vlw pelo post

Gabrieltxu

O Héroi
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 12/06/12Posts: 2180Gênero: MasculinoChar no Tibia: Supreme Player

onde coloca esse scripert?

 

Amigo Coloca em data/actions/tools fishing.lua Obrigado

Canal do facebook de lives!! cola la galera me ajudar seguindo a pagina hehe ! ❤️

 

               https://www.facebook.com/Tuxao0

didogunner

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 27/04/11Posts: 112

Ta funfando tudo certinho! porém não esta pescando pokémons... como eu configuro isto?

ppforum.jpg

Acesse clicando aqui > Pokémon Players - [ Online ]

Gabrieltxu

O Héroi
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 12/06/12Posts: 2180Gênero: MasculinoChar no Tibia: Supreme Player

Ta funfando tudo certinho! porém não esta pescando pokémons... como eu configuro isto?

 

 

depende da base do Seu Server cara Pk ai tem que arrumar o ID da vara etc.. arruma ai para o ID da vara

Canal do facebook de lives!! cola la galera me ajudar seguindo a pagina hehe ! ❤️

 

               https://www.facebook.com/Tuxao0

didogunner

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 27/04/11Posts: 112
depende da base do Seu Server cara Pk ai tem que arrumar o ID da vara etc.. arruma ai para o ID da vara

 

Eu uso o PDA Slicer, o ID da rod é ItemID: [2580].

 

qual linha eu edito?

ppforum.jpg

Acesse clicando aqui > Pokémon Players - [ Online ]

Gabrieltxu

O Héroi
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 12/06/12Posts: 2180Gênero: MasculinoChar no Tibia: Supreme Player

Usa esse Script! Creditos: StyloMaldoso

 

 

local fishing = {

["Magikarp"] = {skill = 0, level = -2},

["Horsea"] = {skill = 20, level = 2},

["Poliwag"] = {skill = 20, level = 2},

["Krabby"] = {skill = 20, level = 2},

["Goldeen"] = {skill = 20, level = 5},

["Tentacool"] = {skill = 35, level = 2},

["Staryu"] = {skill = 60, level = 6},

["Kingler"] = {skill = 75, level = 14},

["Seaking"] = {skill = 50, level = 11},

["Starmie"] = {skill = 60, level = 20},

["Poliwhirl"] = {skill = 60, level = 9},

["Seadra"] = {skill = 70, level = 15},

["Gyarados"] = {skill = 100, level = 5},

["Tentacruel"] = {skill = 100, level = 5},

["Blastoise"] = {skill = 100, level = 5},

}

local storage = 15458

local storageP = 154580

local bonus = 1

local limite = 80

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 = ""

--alterado!!

if getPlayerSkillLevel(cid, 6) < limite then

doPlayerAddSkillTry(cid, 6, 20)

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)

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

setPlayerStorageValue(cid, storageP, -1)

doCreatureSetNoMove(cid, false)

doRemoveCondition(cid, CONDITION_OUTFIT)

return true

end

addEvent(doFish, interval, cid, pos, ppos, chance, interval, number)

setPlayerStorageValue(cid, storageP, 1)

doCreatureSetNoMove(cid, true)

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 getPlayerStorageValue(cid, storageP) > 0 then

doPlayerSendTextMessage(cid, 27, "You are already fishing.")

return true

end

if getPlayerSex(cid) == 1 then

if getCreatureOutfit(cid).lookType ~= 520 then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "'You need fisher outfit for fishing'/'Você precisa da outfit 'Fisher' para pescar'")

return false

end

else

if getCreatureOutfit(cid).lookType ~= 521 then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need fisher outfit for fishing.")

return false

end

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

outfit = getCreatureOutfit(cid)

if getPlayerSex(cid) == 0 then

out = 1467

else

out = 1468

end

doSetCreatureOutfit(cid, {lookType = out, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1)

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

return true

end

 

Canal do facebook de lives!! cola la galera me ajudar seguindo a pagina hehe ! ❤️

 

               https://www.facebook.com/Tuxao0

didogunner

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 27/04/11Posts: 112

Só tem um problema nesse script... você não fica com battle! ou seja se deslogar e logar fica "You are already fishing." e não pode mais pescar

ppforum.jpg

Acesse clicando aqui > Pokémon Players - [ Online ]

StyloMaldoso

a good son makes the house...;p
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 25/01/12Posts: 1593

Gabrieltxu

 

fica chato tu sai postando os scripter dos outros por ai sem bota os creditos ¬¬

 

@

DidoGunner

 

vc tem q adiciona alguma tag no login dps eu tento adiciona e eu te mando abjs.

Project Pokémon Mysterion OpenSoures 2016.

Em breve, mais informações!

 

23vfcht.png

didogunner

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 27/04/11Posts: 112

Bom se conseguir me mandar isso eu ficaria agradecido, pq meu servidor esta on! e não esta existindo eficacia nesta action ;*(

ppforum.jpg

Acesse clicando aqui > Pokémon Players - [ Online ]

  • 1
  • 2