Ir para conteúdo

[Encerrado] [Erro] Goback.lua


DinoAdmin

Posts Recomendados

Bom estou com o seguinte erro no meu servidor de poketibia.

 

[19/12/2012 17:00:58] [Error - Action Interface]
[19/12/2012 17:00:58] data/actions/scripts/goback.lua:onUse
[19/12/2012 17:00:58] Description:
[19/12/2012 17:00:58] data/actions/scripts/goback.lua:126: attempt to perform arithmetic on global 'pokemonMaxLevelAbovePlayer' (a nil value)
[19/12/2012 17:00:58] stack traceback:
[19/12/2012 17:00:58]  data/actions/scripts/goback.lua:126: in function <data/actions/scripts/goback.lua:8>

 

Aqui esta o script que eu utilizo:

 

 

 

local EFFECTS = {

--[OutfitID] = {Effect}

["Magmar"] = 35,

["Jynx"] = 17, --alterado v2.5

["Shiny Jynx"] = 17,

}

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

if exhaustion.get(cid, 6666) and exhaustion.get(cid, 6666) > 0 then return true end

--alterado v2.6 sistema de firstpoke retirado

if getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 17001) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 then

return true

end

-------------------------------------------------------

ballName = getItemAttribute(item.uid, "poke")

 

btype = getPokeballType(item.itemid)

usando = pokeballs[btype].use

local effect = pokeballs[btype].effect

if not effect then

effect = 21

end

----------------------------------------------------------

if item.itemid == usando then

if getPlayerStorageValue(cid, 990) == 1 then -- GYM

doPlayerSendCancel(cid, "You can't return your pokemon during gym battles.")

return true

end

 

---------------------------------------------------------------------------------------

if #getCreatureSummons(cid) > 1 and getPlayerStorageValue(cid, 212124) <= 0 then --alterado v2.6

if getPlayerStorageValue(cid, 637501) == -2 or getPlayerStorageValue(cid, 637501) >= 1 then

BackTeam(cid)

end

end

-----------------------------------------------------------------------------------------

if #getCreatureSummons(cid) == 2 and getPlayerStorageValue(cid, 212124) >= 1 then

doPlayerSendCancel(cid, "You can't do that while is controling a mind")

return true --alterado v2.5

end

---------------------------------------------------------------------------------------

 

if #getCreatureSummons(cid) <= 0 then

if isInArray(pokeballs[btype].all, item.itemid) then

doTransformItem(item.uid, pokeballs[btype].off)

doItemSetAttribute(item.uid, "hp", 0)

doPlayerSendCancel(cid, "This pokemon is fainted.")

return true

end

end

local cd = getCD(item.uid, "blink", 30)

if cd > 0 then

setCD(item.uid, "blink", 0)

end

 

local z = getCreatureSummons(cid)[1]

if getCreatureCondition(z, CONDITION_INVISIBLE) and not isGhostPokemon(z) then

return true

end

doReturnPokemon(cid, z, item, effect)

elseif item.itemid == pokeballs[btype].on then

if item.uid ~= getPlayerSlotItem(cid, CONST_SLOT_FEET).uid then

doPlayerSendCancel(cid, "You must put your pokeball in the correct place!")

return TRUE

end

local thishp = getItemAttribute(item.uid, "hp")

if thishp <= 0 then

if isInArray(pokeballs[btype].all, item.itemid) then

doTransformItem(item.uid, pokeballs[btype].off)

doItemSetAttribute(item.uid, "hp", 0)

doPlayerSendCancel(cid, "This pokemon is fainted.")

return true

end

end

local pokemon = getItemAttribute(item.uid, "poke")

if not pokes[pokemon] then

return true

end

 

----------------------- Sistema de nao poder carregar mais que 3 pokes lvl baixo e + q 1 poke de lvl medio/alto ---------------------------------

if not isInArray({5, 6}, getPlayerGroupId(cid)) then

local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK)

local lowPokes = {"Rattata", "Caterpie", "Weedle", "Oddish", "Pidgey", "Paras", "Poliwag", "Bellsprout", "Magikarp", "Hoppip", "Sunkern"}

local low = {}

local lw = 1

for e, f in pairs(pokeballs) do

for times = 1, 3 do

local items = getItemsInContainerById(bp.uid, pokeballs[e].all[times])

if #items >= 1 then --alterado v2.6

for _, uid in pairs(items) do

local nome1 = getItemAttribute(uid, "poke")

if not isInArray(lowPokes, pokemon) and nome1 == pokemon then

return doPlayerSendTextMessage(cid, 27, "Sorry, but you can't carry two pokemons equals!")

elseif isInArray(lowPokes, pokemon) then

if nome1 == pokemon then

table.insert(low, lw, nome1)

lw = lw +1

end

end

end

end

end

end

if #low >= 3 then

return doPlayerSendTextMessage(cid, 27, "Sorry, but you can't carry more than three pokemons equals of low level!")

end

end

---------------------------------------------------------------------------------------------------------------------------------------------------

local x = pokes[pokemon]

local boosts = getItemAttribute(item.uid, "boost") or 0

if getPlayerLevel(cid) + pokemonMaxLevelAbovePlayer < getItemAttribute(item.uid, "level") + boosts then

doPlayerSendCancel(cid, "Your pokemon's level is much higher than yours, you can't use him.")

return true

end

--------------------------------------------------------------------------------------

shinysClan = {

["Shiny Fearow"] = {4, "Wingeon"},

["Shiny Flareon"] = {1, "Volcanic"},

["Shiny Vaporeon"] = {2, "Seavel"},

["Shiny Jolteon"] = {9, "Raibolt"},

["Shiny Hypno"] = {7, "Psycraft"},

["Shiny Golem"] = {3, "Orebound"},

["Shiny Vileplume"] = {8, "Naturia"},

["Shiny Nidoking"] = {5, "Malefic"},

["Shiny Hitmontop"] = {6, "Gardestrike"}, --alterado v2.4

}

 

if shinysClan[pokemon] and (getPlayerGroupId(cid) < 3 or getPlayerGroupId(cid) > 6) then

if getPlayerStorageValue(cid, 86228) ~= shinysClan[pokemon][1] then

doPlayerSendCancel(cid, "You need be a member of the clan "..shinysClan[pokemon][2].." to use this pokemon!")

return true

elseif getPlayerStorageValue(cid, 862281) ~= 5 then

doPlayerSendCancel(cid, "You need be atleast rank 5 to use this pokemon!")

return true

end

end

--------------------------------------------------------------------------------------

 

doSummonMonster(cid, pokemon)

local pk = getCreatureSummons(cid)[1]

if not isCreature(pk) then return true end

------------------------passiva hitmonchan------------------------------

if isSummon(pk) then

local nameHIT = getItemAttribute(getPlayerSlotItem(cid, 8).uid, "poke")

local hands = getItemAttribute(getPlayerSlotItem(cid, 8).uid, "hands")

if nameHIT == "Shiny Hitmonchan" or nameHIT == "Hitmonchan" then

if getItemAttribute(getPlayerSlotItem(cid, 8).uid, "hands") then

doSetCreatureOutfit(pk, {lookType = hitmonchans[nameHIT][hands].out}, -1)

else

doPlayerSendTextMessage(cid, 27, "Contact a GameMaster! Error in passive system! Attribute \"hands\" missing")

end

end

end

-------------------------------------------------------------------------

---------movement magmar, jynx-------------

if EFFECTS[getCreatureName(pk)] then

markPosEff(pk, getThingPos(pk))

sendMovementEffect(pk, EFFECTS[getCreatureName(pk)], getThingPos(pk)) --alterado v2.5

end

--------------------------------------------------------------------------

if getCreatureName(pk) == "Ditto" then

local left = getItemAttribute(item.uid, "transLeft")

local name = getItemAttribute(item.uid, "transName")

if left and left > 0 then

setPlayerStorageValue(pk, 1010, name)

doSetCreatureOutfit(pk, {lookType = getItemAttribute(item.uid, "transOutfit")}, -1)

addEvent(deTransform, left * 1000, pk, getItemAttribute(item.uid, "transTurn"))

doItemSetAttribute(item.uid, "transBegin", os.clock())

else

setPlayerStorageValue(pk, 1010, "Ditto")

end

end

if isGhostPokemon(pk) then doTeleportThing(pk, getPosByDir(getThingPos(cid), math.random(0, 7)), false) end

doCreatureSetLookDir(pk, 2)

adjustStatus(pk, item.uid, true, false, true)

doAddPokemonInOwnList(cid, pokemon)

doTransformItem(item.uid, item.itemid+1)

local pokename = getItemAttribute(item.uid, "nick") or getCreatureName(pk)

local mgo = gobackmsgs[math.random(1, #gobackmsgs)].go:gsub("doka", pokename)

doCreatureSay(cid, mgo, TALKTYPE_SAY)

doSendMagicEffect(getCreaturePosition(pk), effect)

else

doPlayerSendCancel(cid, "This pokemon is fainted.")

end

if useKpdoDlls then

doUpdateMoves(cid)

end

return true

end

 

 

 

 

Eu utilizo o Servidor do Slicer 1.6 sem lvl sistem!!

Link para o comentário
Compartilhar em outros sites

Nao slicer foi assim meu amigo me passou um servidor chamado "Server Full v1.6 Sel lvl" o seu server v1.6

porem ele que editou dai eu nao sei se ele utilizou o script da 2.6.

E agora oque eu fasso pois o servidor liga e apois 5 min desliga

Link para o comentário
Compartilhar em outros sites

mano esse script ae eh da 2.6.. n vai da certo ms... ;/ o caso eh pegar do zero.. a 1.6 full, 1.6.1 e a 1.7..

Nao foi nescessario, eu acabei de baixar o server 1.6 sem lvl e utilizei o gogack.lua dele no server que eu estou editando.

parece que nao tem mais erro.

Duvida senada

Topico Reportado!

Link para o comentário
Compartilhar em outros sites

  • 5 years later...
A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta.

+ Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda.
* Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado.
Link para o comentário
Compartilhar em outros sites

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