.Qual servidor ou website você utiliza como base?
DXP v3 huatson no lv system
Qual o motivo deste tópico?
Modificar um script
Bom primeiramente Bom dia/tarde ou boa noite!!!
Estou começando agora em .lua quebrei a cabeça um monte já e nada, gostaria de fazer a seguinte alteração no script:
tipo quando o player começar a pescar ter uma chance de puxar um ou dois pokemon com a mesma isca e mesmo após pescar
ter outra chance de continuar pescando no mesmo lugar porém consumindo as iscas... sendo essa continuação podendo gastar apenas
uma isca e/ou ficar de 1 a 60 segundos pescando no mesmo lugar o tempo sendo random...
e quando acabar esse tempo aparecer uma msg "Voce pegou todos pokemon aqui ande 2 sqm e tente novamente."
Se alguem souber como me ajudar ficaria muito grato!
Você tem o código disponível? Se tiver publique-o aqui:
local fishing = {
[-1] = { segs = 14, skill = 30, pokes = {{"Magikarp", 4}} },
[3976] = { segs = 10, skill = 180, pokes = {{"Horsea", 3}, {"Remoraid", 3}, {"Goldeen",3}, {"Poliwag", 3}} }, -- pega no client da pxg
[12855] = { segs = 11, skill = 2000, pokes = {{"Tentacool", 3}, {"Staryu", 2}, {"Krabby",3}, {"Shellder", 2} } },
[12854] = { segs = 12, skill = 13000, pokes = {{"Seel",2}, {"Chinchou",2} } },
[12858] = { segs = 15, skill = 320000, pokes = {{"Seaking", 3}, {"Seadra", 2}, {"Poliwhirl", 2}} },
[12857] = { segs = 15, skill = 1000000, pokes = {{"Starmie", 2}, {"Kingler", 3}, {"Corsola", 3}, {"Qwilfish", 2}} }, -- pega no client da pxg
[12860] = { segs = 15, skill = 10000000, pokes = {{"Lanturn", 2}, {"Dewgong", 4}}},
[12859] = { segs = 25, skill = 100000000, pokes = {{"Cloyster", 2}, {"Poliwrath", 2}, {"Politoed", 3}, {"Octillery", 2}} },
[12856] = { segs = 25, skill = 1000000000, pokes = {{"Dratini", 3}, {"Dragonair", 2} }},
[12853] = { segs = 35, skill = 10000000000, pokes = {{"Gyarados", 1}, {"Mantine", 2}, {"Tentacruel", 2}, {"Kingdra", 1}} },
}
local storageP = 154585
local sto_iscas = 5648454 --muda aki pra sto q ta no script da isca
local bonus = 15
local limite = 100
local pescado = 98988
local fightcondition = createConditionObject(CONDITION_INFIGHT)
setConditionParam(fightcondition, CONDITION_PARAM_TICKS, 5 * 1000)
function fightCondic(cid)
if not isCreature(cid) then return true end
if not isCreature(getCreatureTarget(cid)) then return true end
doAddCondition(cid, fightcondition)
addEvent(fightCondic, 1000, cid)
end
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 * 5)
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
if #getCreatureSummons(cid) >= 1
-- se o jogador tiver sumonado algum pokemon,pegará a posição do pokemon
then peixe = doSummonCreature(random[1], getClosestFreeTile(cid, getThingPos(getCreatureSummons(cid)[1])))
-- se não pegará a do jogador
else peixe = doSummonCreature(random[1],playerpos)
end
if not isCreature(peixe) then
setPlayerStorageValue(cid, storageP, -1)
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end
setPokemonPassive(peixe, true)
doSetPokemonAgressiveToPlayer(peixe, cid)
setPlayerStorageValue(peixe, storageP, 1)
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)
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end
local waters = {11756}
function onUse(cid, item, fromPos, itemEx, toPos)
if getPlayerStorageValue(cid, pescado) >=1 then
doSendMsg(cid, "Necesitas esperar um pouco para voltar a pescar")
return false
end
if isWatchingTv(cid) then
return true
end
local checkPos = toPos
checkPos.stackpos = 0
if getTileThingByPos(checkPos).itemid <= 0 then
return true
end
if not isInArray(waters, getTileInfo(toPos).itemid) then
return true
end
if getPlayerStorageValue(cid, storageP) == 1 then
doSendMsg(cid, "Aguarde! Você já está pescando.")
return true
end
if isRiderOrFlyOrSurf(cid) and not canFishWhileSurfingOrFlying then
doPlayerSendCancel(cid, "Voce nao pode pescar enquanto usa surfing/flying.")
return true
end
if getTileInfo(getThingPos(getCreatureSummons(cid)[1] or cid)).protection then
doPlayerSendCancel(cid, "Voce nao pode pescar em 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
local outfit = getCreatureOutfit(cid)
local out = getPlayerSex(cid) == 0 and 1467 or 1468
doSetCreatureOutfit(cid, {lookType = out, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet}, -1)
setPlayerStorageValue(cid, storageP, 1) --alterei looktype
doCreatureSetNoMove(cid, false)
local pos2 = getThingPos(itemEx.uid)
doCreatureSetLookDir(cid, getLookToFish(getThingPos(cid), pos2)) --alterado ver depois
addEvent(Reducir, (delay-2)*1000, cid)
setPlayerStorageValue(cid, pescado, 1 )
doFish(cid, toPos, getThingPos(cid), math.random(9, delay))
return true
end
function getLookToFish(pos, pos2)
local x1, y1 = pos.x, pos.y
local x2, y2 = pos2.x, pos2.y
if x1-x2 <= 0 and y1-y2 > 0 then
return NORTH
elseif x1-x2 < 0 and y1-y2 == 0 then
return EAST
elseif x1-x2 < 0 and y1-y2 < 0 then
return EAST
elseif x1-x2 > 0 and y1-y2 < 0 then
return SOUTH
elseif x1-x2 > 0 and y1-y2 <= 0 then
return WEST
elseif x1-x2 > 0 and y1-y2 >= 0 then
return WEST
elseif x1-x2 < 0 and y1-y2 < 0 then
return EAST
elseif x1-x2 == 0 and y1-y2 < 0 then
return SOUTH
end
return WEST
end
function Reducir(cid)
setPlayerStorageValue(cid, pescado, 0 )
end
--[[-- resulatados em linha reta(exatos)
if x1 == x2 then -- virar para norte
if (y1 - y2) > 0 then -- virar para cima
return NORTH
elseif (y1 - y2) < 0 then -- virar para baixo
return SOUTH
end
elseif y1 == y2 then
if (x1 - x2) > 0 then -- virar para OESTE <<
return WEST
elseif (x1 - x2) < 0 then -- virar para LESTE >>
return EAST
end
end
-- resulatados em linha reta(exatos)
if (x1 ~= x2) or (y1 ~= y2) then
if (x1 - x2) < 0 then
return EAST -- virar para LESTE >>
elseif (x1 - x2) > 0 then
return WEST
end
end]]