Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Olá estou com esse erro quando vou dar look e quando tento colocar o pokemon pra fora da ball

Obs: o pokemon que eu estou querendo colocar pra fora foi capturado no mesmo instante ai dar erro no goback.lua 

 

erros

[16/05/2015 10:53:45] [Error - CreatureScript Interface] 
[16/05/2015 10:53:45] data/creaturescripts/scripts/look.lua:onLook
[16/05/2015 10:53:45] Description: 
[16/05/2015 10:53:45] data/creaturescripts/scripts/look.lua:19: attempt to concatenate a nil value
[16/05/2015 10:53:45] stack traceback:
[16/05/2015 10:53:45]  data/creaturescripts/scripts/look.lua:19: in function <data/creaturescripts/scripts/look.lua:1>
 
[16/05/2015 10:54:01] [Error - Action Interface] 
[16/05/2015 10:54:01] data/actions/scripts/goback.lua:onUse
[16/05/2015 10:54:01] Description: 
[16/05/2015 10:54:01] data/actions/scripts/goback.lua:138: attempt to perform arithmetic on a nil value
[16/05/2015 10:54:01] stack traceback:
[16/05/2015 10:54:01]  data/actions/scripts/goback.lua:138: in function <data/actions/scripts/goback.lua:8>
[16/05/2015 11:00:00] [GOD] xP has logged out.
 

Look.lua

function onLook(cid, thing, position, lookDistance)
 
local str = ""
 
if not isCreature(thing.uid) then
 
local iname = getItemInfo(thing.itemid)
 
if isPokeball(thing.itemid) then
 
local unique = getItemAttribute(thing.uid, "unique")  --alterado v2.6
 
local pokename = getItemAttribute(thing.uid, "poke")
local item = getItemInfo(thing.itemid)
str = "You see "..item.article.." "..item.name.."." --alterado v2.6
if unique and unique == getCreatureName(cid) then
  str = str.." It's an unique item."   --alterado v2.6
            end
str = str.."\nIt contains "..getArticle(pokename).." "..pokename.." [level "..getItemAttribute(thing.uid, "level").."].\n" --alterado v2.6
 
            --alterado v2.6 
               
local boost = getItemAttribute(thing.uid, "boost") or 0
local boostshow = ""
 
if boost > 0 then
str = str.."Boost level: +"..boost..".\n"
end
 
if getItemAttribute(thing.uid, "nick") then
str = str.."It's nickname is: "..getItemAttribute(thing.uid, "nick")..".\n"
end
 
if getItemAttribute(thing.uid, "gender") == SEX_MALE then
str = str.."It is male."
elseif getItemAttribute(thing.uid, "gender") == SEX_FEMALE then
str = str.."It is female."
else
str = str.."It is genderless."
end
 
str = str.."\n--- Status ---"
str = str.."\nOffense: "..math.floor(getItemAttribute(thing.uid, "offense")).." Defense: "..math.floor(getItemAttribute(thing.uid, "defense")).."\n"
str = str.."Agility: "..math.floor(getItemAttribute(thing.uid, "speed")).." Sp. Attack: "..math.floor(getItemAttribute(thing.uid, "specialattack")).."\n"
str = str.."Vitality: "..math.floor(getItemAttribute(thing.uid, "vitality")).."" 
 
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str)
 
return false
 
elseif string.find(iname.name, "fainted") or string.find(iname.name, "defeated") then
 
str = "You see a "..string.lower(iname.name).." ["..getItemAttribute(thing.uid, "level").."].\n"
 
if getItemAttribute(thing.uid, "gender") == SEX_MALE then
str = str.."It is male."
elseif getItemAttribute(thing.uid, "gender") == SEX_FEMALE then
str = str.."It is female."
else
str = str.."It is genderless."
end
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str)
 
return false
 
else
 
return true
 
end
end
 
local NPCBattle = {
["Brock"] = {artig = "He is", cidbat = "Pewter"},
["Misty"] = {artig = "She is", cidbat = "Cerulean"}, 
}  
                                                       --edited npc name
NPCname = {"Brock", "Misty"}
 
local npcname = getCreatureName(thing.uid)
if not isPlayer(thing.uid) and not isMonster(thing.uid) and isInArray(NPCname, npcname) then
   str = "You see "..npcname..". "..NPCBattle[npcname].artig.." a pokemon trainer from "..NPCBattle[npcname].cidbat.."."
   doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str)
   return false
end
 
if not isPlayer(thing.uid) and not isMonster(thing.uid) then    
   str = "You see "..getCreatureName(thing.uid).."."
   doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str)
   return false
end
 
look = {
[1] = {"a Volcanic Spark", "a Volcanic Flame","a Volcanic Firetamer","a Volcanic Pyromancer","a Volcanic Master"},
[2] = {"a Seavell Drop", "a Seavell Icelake","a Seavell Waterfall","a Seavell Frost","a Seavell Master"},
[3] = {"an Orebound Sand", "an Orebound Rock","an Orebound Solid","an Orebound Hardskin","an Orebound Hero"},
[4] = {"a Wingeon Cloud", "a Wingeon Wind","a Wingeon Sky","a Wingeon Falcon","a Wingeon Dragon"},
[5] = {"a Malefic Troublemaker", "a Malefic Venomancer","a Malefic Spectre","a Malefic Nightwalker","a Malefic Master"},
[6] = {"a Gardestrike Fist", "a Gardestrike Tamer","a Gardestrike Fighter","a Gardestrike DeathHand","a Gardestrike Champion"},
[7] = {"a Psycraft Mind", "a Psycraft Brain","a Psycraft Scholar","a Psycraft Telepath","a Psycraft Medium"},
[8] = {"a Naturia Seed", "a Naturia Sprout","a Naturia Webhead","a Naturia Woodtrunk","a Naturia Keeper"},
[9] = {"a Raibolt Shock", "a Raibolt Watt","a Raibolt Electrician","a Raibolt Overcharged","a Raibolt Legend"},
}
 
youAre = {
[3] = "a Senior Tutor",
[4] = "a Game Master",
[5] = "a Sub",                     --alterado v2.3
[6] = "a GOD"
}
 
if thing.uid == cid then
      
   if getPlayerStorageValue(thing.uid, 86228) <= 0 then
      if getPlayerGroupId(thing.uid) >= 3 and getPlayerGroupId(thing.uid) <= 6 then    --alterado v2.3
          pos = getCreaturePosition(thing.uid)
          ocupacao = youAre[getPlayerGroupId(thing.uid)]          --alterado v2.3
          str = "You see yourself. You are "..ocupacao..".\n"
          str = str.."Pos: {x = "..pos.x..", y = "..pos.y..", z = "..pos.z.."}."
      else
          str = "You see yourself. You are a Pokemon Trainer."
      end
      
   else
      vocation = getPlayerStorageValue(thing.uid, 86228)
      rank = getPlayerStorageValue(thing.uid, 862281)
      promote = look[vocation][rank] 
      if getPlayerGroupId(thing.uid) >= 3 and getPlayerGroupId(thing.uid) <= 6 then
          pos = getCreaturePosition(thing.uid)
          ocupacao = youAre[getPlayerGroupId(thing.uid)]          --alterado v2.3
          str = "You see yourself. You are "..ocupacao.." and "..promote..".\n"
          str = str.."Pos: {x = "..pos.x..", y = "..pos.y..", z = "..pos.z.."}."
      else
          str = "You see yourself. You are "..promote.."."
      end
   end
   doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str)
 
return false
end 
                                                                    --edited clan system
 
 
if isPlayer(thing.uid) and thing.uid ~= cid then
 
   vocation2 = getPlayerStorageValue(thing.uid, 86228) 
   rank2 = getPlayerStorageValue(thing.uid, 862281)
 
   if getPlayerStorageValue(thing.uid, 86228) <= 0 then
      promote2 = "a Pokemon Trainer"
   else
      promote2 = look[vocation2][rank2]
   end
 
   if getPlayerSex(thing.uid) == 1 then
      artic = "He is" 
   elseif getPlayerSex(thing.uid) == 0 then
      artic = "She is"
   end 
   
   if getPlayerGroupId(thing.uid) >= 3 and getPlayerGroupId(thing.uid) <= 6 then   --alterado v2.3
       pos = getCreaturePosition(thing.uid)
       ocupacao = youAre[getPlayerGroupId(thing.uid)]          --alterado v2.3
       str = "You see "..getCreatureName(thing.uid)..". "..artic.." "..ocupacao.." and "..promote2..".\n"
       str = str.."Poss: {x = "..pos.x..", y = "..pos.y..", z = "..pos.z.."}."
   else
       str = "You see "..getCreatureName(thing.uid)..". "..artic.." "..promote2.."."
   end
   doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str)
          
return false
end
 
if getCreatureName(thing.uid) == "Evolution" then return false end
 
if not isSummon(thing.uid) then
local str = "You see a wild "..string.lower(getCreatureName(thing.uid)).." [level "..getPokemonLevel(thing.uid).."].\n"
if getPokemonGender(thing.uid)  == SEX_MALE then
str = str.."It is male."
elseif getPokemonGender(thing.uid)  == SEX_FEMALE then
str = str.."It is female."
else
str = str.."It is genderless."
end
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, str)
return false
elseif isSummon(thing.uid) and not isPlayer(thing.uid) then
 
local boostlevel = getItemAttribute(getPlayerSlotItem(getCreatureMaster(thing.uid), 8).uid, "boost") or 0
local boostshow = " + "..boostlevel.."]"
 
if showBoostSeparated then
boostshow = "] [+"..boostlevel.."]"
end
 
local levelinfo = "["..getPokemonLevel(thing.uid)..""..boostshow..""
 
if getCreatureMaster(thing.uid) == cid then
local myball = getPlayerSlotItem(cid, 8).uid
local nexp = getItemAttribute(myball, "nextlevelexp")
 
local string = "You see your "..string.lower(getCreatureName(thing.uid)).." "..levelinfo.."."
string = string.."\nHit points: "..getCreatureHealth(thing.uid).."/"..getCreatureMaxHealth(thing.uid).."."
string = string.."\n"..getPokemonHappinessDescription(thing.uid)
if getItemAttribute(myball, "level") <= 99 then
string = string.."\nExperience needed to level up: "..nexp.."."
end
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string)
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You see a "..string.lower(getCreatureName(thing.uid)).." "..levelinfo..".\nIt belongs to "..getCreatureName(getCreatureMaster(thing.uid))..".")
end
 
 
return false
end
 
return true
end

 

Goback.lua

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
--doPlayerSendCancel(cid, '12//,hide')
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 status = {}
status.poke = getItemAttribute(item.uid,"poke")
status.offense = getItemAttribute(item.uid,"offense")
status.defense = getItemAttribute(item.uid,"defense")
status.specialattack = getItemAttribute(item.uid,"specialattack")
status.speed = getItemAttribute(item.uid,"speed")
status.vitality = getItemAttribute(item.uid,"vitality")
 
setPlayerStorageValue(cid,8866,status) --status do pokemon
setPlayerStorageValue(cid,8867,15) --points
 
 
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
    --------------------------------------------------------------------------------------
    
--doPlayerSendCancel(cid, '12//,show')
doSummonMonster(cid, pokemon)
setPlayerStorageValue(cid,8868,10)
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

Editado por TopllDanStar (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo