Ir para conteúdo

[Encerrado] Me Ajudem a resolver o problema da incubadora


pirulitopiu

Posts Recomendados

Por favor me ajudem 

o sistema de action

Spoiler

function onUse(cid, item, fromPosition, itemEx, toPosition)
function getTime(s)
local n = math.floor(s / 60)
s = s - (60 * n)
return n, s
end
local box = {
[1] ={msg = "You Open a Box +3",np = "Contains a Ivysaur.",nm= 'Ivysaur'},
[2] ={msg = "You Open a Box +3",np = "Contains a Charmeleon.",nm= 'Charmeleon'},
[3] ={msg = "You Open a Box +3",np = 'Contains a Wartortle.',nm= 'Wartortle'},
[4] ={msg = "You Open a Box +3",np = 'Contains a Raichu.',nm= 'Raichu'},
[5] ={msg = "You Open a Box +3",np = 'Contains a Fearow.',nm= 'Fearow'},
[6] ={msg = "You Open a Box +3",np = 'Contains a Vileplume.',nm= 'Vileplume'},
[7] ={msg = "You Open a Box +3",np = 'Contains a Venomoth.',nm= 'Venomoth'},
[8] ={msg = "You Open a Box +3",np = 'Contains a Parasect.',nm= 'Parasect'},
[9] ={msg = "You Open a Box +3",np = 'Contains a Clefable.',nm= 'Clefable'},
[10] ={msg = "You Open a Box +3",np = 'Contains a Wigglytuff.',nm= 'Wigglytuff'},
[11] ={msg = "You Open a Box +3",np = 'Contains a Sandslash.',nm= 'Sandslash'},
[12] ={msg = "You Open a Box +3",np = 'Contains a Dugtrio.',nm= 'Dugtrio'},
[13] ={msg = "You Open a Box +3",np = 'Contains a Golduck.',nm= 'Golduck'},
[14] ={msg = "You Open a Box +3",np = 'Contains a Rapidash.',nm= 'Rapidash'},
[15] ={msg = "You Open a Box +3",np = 'Contains a Magneton.',nm= 'Magneton'},
[16] ={msg = "You Open a Box +3",np = 'Contains a Hypno.',nm= 'Hypno'},
[17] ={msg = "You Open a Box +3",np = 'Contains a Kingler.',nm= 'Kingler'},
[18] ={msg = "You Open a Box +3",np = 'Contains a Exeggutor.',nm= 'Exeggutor'},
[19] ={msg = "You Open a Box +3",np = 'Contains a Hitmonlee.',nm= 'Hitmonlee'},
[20] ={msg = "You Open a Box +3",np = 'Contains a Hitmonchan.',nm= 'Hitmonchan'},
[21] ={msg = "You Open a Box +3",np = 'Contains a Tangela.',nm= 'Tangela'},
[22] ={msg = "You Open a Box +3",np = 'Contains a Starmie.',nm= 'Starmie'},
[23] ={msg = "You Open a Box +3",np = 'Contains a Mr.Mime.',nm= 'Mr.Mime'},
[24] ={msg = "You Open a Box +3",np = 'Contains a Jolteon.',nm= 'Jolteon'},
[25] ={msg = "You Open a Box +3",np = 'Contains a Porygon.',nm= 'Porygon'}
}

local e = box[math.random(1,25)]
local boxid = 11826 -- id da ball que vai ser dada ao jogador
local pk = "This is "..e.nm.."'s pokeball. HP = [1/1]"
local gender = math.random(1,3)
local emcubadora = 14740
local time = 4
if itemEx.itemid == emcubadora then
if os.time()-getPlayerStorageValue(cid, 64231) <= 2*60 then
setPlayerStorageValue(cid, 49514, 4)
minutes,seconds = getTime(2*60-(os.time()-getPlayerStorageValue(cid, 64231)))
return doPlayerSendCancel(cid, "You need wait " .. minutes .. " minutes and " .. seconds .. " seconds.") 
else
if itemEx.itemid == emcubadora and getPlayerStorageValue(cid, 49514) == 4 and os.time()-getPlayerStorageValue(cid, 64231) then
setPlayerStorageValue(cid, 46574, 4)
setPlayerStorageValue(cid, 64231, -1)
setPlayerStorageValue(cid, 49514, -1)
doPlayerSendTextMessage(cid, 27, "your egg is ready for descubed")
else
if itemEx.itemid == emcubadora and getPlayerStorageValue(cid, 46574) == 4 and getPlayerFreeCap(cid) <= 0.99 then
doPlayerSendTextMessage(cid, 27, "your egg is descubed")
doRemoveItem(itemEx.uid,1)
b = doCreateItemEx(cid, boxid-1, 1)
doItemSetAttribute(b, "poke", pk)
doItemSetAttribute(b, "nome", "e.nm")
doItemSetAttribute(b, "description", e.np)
doSetItemText(b, gender)
doPlayerSendMailByName(getCreatureName(cid), b,1)
doPlayerSendTextMessage(cid,22,"You Open a emcubador,Good Luck You pokemon has been sent to your depot")
else
if itemEx.itemid == emcubadora and getPlayerStorageValue(cid, 46574) == 4 then
doPlayerSendTextMessage(cid, 27, "your egg is descubed")
doRemoveItem(itemEx.uid,1)
doPlayerSendTextMessage(cid,22,"You Open a emcubador,You Won a "..e.nm.."")
b = doPlayerAddItem(cid, boxid, 1)
doItemSetAttribute(b, "poke", pk)
doItemSetAttribute(b, "nome", "e.nm")
doItemSetAttribute(b, "description", e.np)
doSetItemText(b, gender)
end
end
end
end
end
end

o golback

Spoiler

local EFFECTS = {
    --[OutfitID] = {Effect}
    ["Magmar"] = 35,   
    ["Jynx"] = 17,          --alterado v1.5
    ["Shiny Jynx"] = 17, 
    ["Piloswine"] = 205,  --alterado v1.8
    ["Swinub"] = 205,   
}

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

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 
or getPlayerStorageValue(cid, 75846) >= 1 or getPlayerStorageValue(cid, 5700) >= 1  then    --alterado v1.9 <<
   return true                                                                                                                        
end

local ballName = getItemAttribute(item.uid, "poke")
local btype = getPokeballType(item.itemid)
local usando = pokeballs[btype].use

local effect = pokeballs[btype].effect
    if not effect then
        effect = 21
    end
    
unLock(item.uid) --alterado v1.8

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 v1.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 v1.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 balls = getPokeballsInContainer(getPlayerSlotItem(cid, 3).uid)
   local low = {}
   local lowPokes = {"Rattata", "Caterpie", "Weedle", "Oddish", "Pidgey", "Paras", "Poliwag", "Bellsprout", "Magikarp", "Hoppip", "Sunkern"}
   if #balls >= 1 then
      for _, uid in ipairs(balls) do
          local nome = getItemAttribute(uid, "poke")
          if not isInArray(lowPokes, pokemon) and nome == pokemon then
             return doPlayerSendTextMessage(cid, 27, "Sorry, but you can't carry two pokemons equals!")
          else
             if nome == pokemon then
                table.insert(low, nome)
             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 boost = getItemAttribute(item.uid, "boost") or 0

    if getPlayerLevel(cid) < (x.level+boost) then
       doPlayerSendCancel(cid, "You need level "..(x.level+boost).." to use this pokemon.")
       return true
    end
    
    ---------------------------- Sistema pokes de clan --------------------------------------
    local 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 v1.4
    }
    
    if shinysClan[pokemon] and (getPlayerGroupId(cid) < 4 or getPlayerGroupId(cid) > 6) then  --alterado v1.9 \/
       if getPlayerClanNum(cid) ~= shinysClan[pokemon][1] then
          doPlayerSendCancel(cid, "You need be a member of the clan "..shinysClan[pokemon][2].." to use this pokemon!")
          return true   
       elseif getPlayerClanRank(cid) ~= 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                                                  --alterado v1.8 \/
       if pokemon == "Shiny Hitmonchan" or pokemon == "Hitmonchan" then
          if not getItemAttribute(item.uid, "hands") then
             doSetItemAttribute(item.uid, "hands", 0)
          end
          local hands = getItemAttribute(item.uid, "hands")
          doSetCreatureOutfit(pk, {lookType = hitmonchans[pokemon][hands].out}, -1)
       end
    end
    -------------------------------------------------------------------------
    ---------movement magmar, jynx-------------
    if EFFECTS[getCreatureName(pk)] then             
       markPosEff(pk, getThingPos(pk))
       sendMovementEffect(pk, EFFECTS[getCreatureName(pk)], getThingPos(pk))  
    end
    --------------------------------------------------------------------------      

    if getCreatureName(pk) == "Ditto" or getCreatureName(pk) == "Shiny Ditto" then --edited

        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, getCreatureName(pk) == "Ditto" and "Ditto" or "Shiny Ditto")     --edited
        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, true, true)
    doCureWithY(getCreatureMaster(pk), pk)       
    doRegenerateWithY(getCreatureMaster(pk), pk)
    doAddPokemonInOwnList(cid, pokemon)

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

    local pokename = getPokeName(pk) --alterado v1.7 

    local mgo = gobackmsgs[math.random(1, #gobackmsgs)].go:gsub("doka", pokename)
    doCreatureSay(cid, mgo, TALKTYPE_SAY)
    
    doSendMagicEffect(getCreaturePosition(pk), effect)
    
    if useOTClient then
       doPlayerSendCancel(cid, '12//,show') --alterado v1.7
    end
    
else

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

end

    if useKpdoDlls then
        doUpdateMoves(cid)
    end
return true
end

o erro que esta dando

Spoiler

Esta dando esse erro podem me ajudar a resolver

 

[15/10/2018 20:24:12] [Error - Action Interface] 
[15/10/2018 20:24:12] data/actions/scripts/goback.lua:onUse
[15/10/2018 20:24:12] Description: 
[15/10/2018 20:24:12] data/actions/scripts/goback.lua:75: attempt to compare nil with number
[15/10/2018 20:24:12] stack traceback:
[15/10/2018 20:24:12]     data/actions/scripts/goback.lua:75: in function <data/actions/scripts/goback.lua:10>

 

Link para o comentário
Compartilhar em outros sites

  • 4 months later...
A questão neste 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.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...