Ir para conteúdo
  • 0

Erro [Go/back E Cdbar]


Stigal

Pergunta

Ola Usuarios Xtibianos,

Estou Com 2 Erros No Meu Servidor!

  • Erro 01:

Fica Aparecendo Continuamente:

[17/08/2012 15:11:01] [Error - Action Interface]
[17/08/2012 15:11:01] data/actions/scripts/goback.lua:onUse
[17/08/2012 15:11:01] Description:
[17/08/2012 15:11:01] data/actions/scripts/goback.lua:74: attempt to compare nil with number
[17/08/2012 15:11:01] stack traceback:
[17/08/2012 15:11:01] data/actions/scripts/goback.lua:74: in function <data/actions/scripts/goback.lua:19>

 

Esta Dando Esse Erro No Distro e Sempre Que Aparece Vem + Uns 10 Junto!

 

Base Do Servidor: 8.54 / (Pokemon Centurion v2 (Mapa v2) e Auguns Pokemons Do V3)

 

Meu Go/Back:

 

local hitmonchans = {
["Hitmonchan"] = {
					 [0] = {out = 559, eff = 112, type = FIGHTINGDAMAGE},  --outfit normal
					 [1] = {out = 1075, eff = 35, type = FIREDAMAGE},	--outfit fogo
					 [2] = {out = 1077, eff = 48, type = ELECTRICDAMAGE},	--outfit raio
					 [3] = {out = 1078, eff = 43, type = ICEDAMAGE},	--outfit gelo
					 [4] = {out = 1076, eff = 140, type = GHOSTDAMAGE}   --outfit ghost
			  },

["Shiny Hitmonchan"] = {			  
					 --aconcelho trocar a outfit do shiny hitmonchan pela do elite hitmonchan do PO...
					 [0] = {out = 837, eff = 112, type = FIGHTINGDAMAGE},  --outfit normal
					 [1] = {out = 1080, eff = 35, type = FIREDAMAGE},	--outfit fogo
					 [2] = {out = 1081, eff = 48, type = ELECTRICDAMAGE},	--outfit raio
					 [3] = {out = 1082, eff = 43, type = ICEDAMAGE},	--outfit gelo
					 [4] = {out = 1079, eff = 140, type = GHOSTDAMAGE}   --outfit ghost
				   }
}
function onUse(cid, item, frompos, item2, topos)

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

local owner = getItemAttribute(item.uid, "firstpoke")

if owner and owner ~= getCreatureName(cid) then
doPlayerSendCancel(cid, "This pokemon belongs to "..owner..", it is his first pokemon. Please, give it back to him.")
return true
end

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

local btype = getPokeballType(item.itemid)

local effect = pokeballs[btype].effect
if not effect then
effect = 21
end

if item.itemid == pokeballs[btype].use 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) <= 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 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

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

doSummonMonster(cid, pokemon)

local pk = getCreatureSummons(cid)[1]
if not isCreature(pk) then return true end
------------------------passiva hitmonchan------------------------------
if isSummon(pk) then
   --local e = getCreatureMaster(cid)
   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
-------------------------------------------------------------------------	  

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

 

 

  • Erro 02:

Fica Aparedenco Continuamente:

[17/08/2012 15:20:27] [Error - TalkAction Interface]
[17/08/2012 15:20:27] In a timer event called from:
[17/08/2012 15:20:27] data/talkactions/scripts/cdbar.lua:onSay
[17/08/2012 15:20:27] Description:
[17/08/2012 15:20:27] data/talkactions/scripts/cdbar.lua:5: attempt to concatenate a nil value
[17/08/2012 15:20:27] stack traceback:
[17/08/2012 15:20:27]  data/talkactions/scripts/cdbar.lua:5: in function <data/talkactions/scripts/cdbar.lua:1>

 

Esta Dando Esse Erro No Distro e Sempre Que Aparece Vem + Uns 10 Junto!

Base Do Servidor: 8.54 / (Pokemon Centurion v2 (Mapa v2) e Auguns Pokemons Do V3)

 

Meu cdbar:

 

local function ChangeBalls(cid, param, cancelequal)
local balls = getPlayerPokeballs(cid)
for a = 1, #balls do
local item = balls[a]
local name = getItemAttribute(item.uid, "poke") .. getItemAttribute(item.uid, "ballorder")
if name == param then
if cancelequal and item.uid == getPlayerSlotItem(cid, 8).uid then return true end
doChangeBalls(cid, getPlayerSlotItem(cid, 8), item)
return 0
end
end
end

function onSay(cid, words, param)

if not useKpdoDlls then return true end

if words == "!code64" then
return 0
end

if words == "/pokeread" then
if #getCreatureSummons(cid) >= 1 then
local pokemon = getCreatureSummons(cid)[1]
local pokelife = (getCreatureHealth(pokemon) / getCreatureMaxHealth(pokemon))
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "hp", pokelife)
end
doUpdatePokemonsBar(cid)
end

if words == "/goaction" then
if param == "null" then return 0 end
if exhaustion.get(cid, 6666) and exhaustion.get(cid, 6666) > 0 then return true end
if getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 17001) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 then return true end
if #getCreatureSummons(cid) >= 1 then
addEvent(doReturnPokemon, 100, cid, getCreatureSummons(cid)[1], false, pokeballs[getPokeballType(getPlayerSlotItem(cid, 8).itemid)].effect)
if param ~= getItemAttribute(getPlayerSlotItem(cid, 8).uid, "poke") .. getItemAttribute(getPlayerSlotItem(cid, 8).uid, "ballorder") then
addEvent(ChangeBalls, 1200, cid, param, true)
end
else
addEvent(ChangeBalls, 100, cid, param)
end
exhaustion.set(cid, 6666, 2)
return 0
end

return 0
end

 

 

Espero Que Me Ajudem!

 

Obrigado Desde Já!

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

7 respostass a esta questão

Posts Recomendados

  • 0

Sim os pokemons da v3 adicionados na v2 devem estar dando este erro pois vc os deve ter adicionado errado eles...

para colocar eles nao é simplesmente copiar e colar o xml e scripts tem um tanto de coisa antes disso :s

Link para o comentário
Compartilhar em outros sites

  • 0

Usuario, Ele Esta Pegando Normalmente... Somente Acusa o Erro No Go/back e no cdbar!

Se Foce essa Tal Culpa De Adicionar Errado Estaria Avisando o Erro Com Nome Do Pokemon Correto?

 

Presciso De Auguem Que Saiba Ou Que Possa Me Apontar o Erro!

Obrigado.

Link para o comentário
Compartilhar em outros sites

  • 0

Linha 74: Tentativa de comparar nulo com número

 


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

if thishp <= 0 then

 

No caso, a variável thishp está sendo comparada com 0, o problema é que essa variável está retornando nulo - a razão é simples - o item (no caso a pokeball) não possui um atributo chamado hp

 


 

Linha 5: Tentativa de "juntar" um valor nulo

 

local name = getItemAttribute(item.uid, "poke") .. getItemAttribute(item.uid, "ballorder")

 

Um desses atributos de item.uid está retornando nulo, fazendo com que juntar os dois em uma única string faça o erro acontecer. Junto com o for usado no script, o erro é multiplicado em um loop.

 


 

Nunca trabalhei com servidores de Pokémon, então não tenho ideia de como solucionar estes erros, mas uma coisa posso te dizer, você fez algo errado em algum momento que manipulou arquivos do servidor.

 

Abraços.

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

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