Ir para conteúdo

Featured Replies

  • Respostas 10
  • Visualizações 1.8k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Goback do Action:   local pokeball = getPlayerSlotItem(cid, 8) local EFFECTS = { --[OutfitID] = {Effect} ["Magmar"] = 35, ["Jynx"] = 17, --alterado v1.5 ["Shiny Jynx"] = 17, ["Pil

  • Veja agora o Goback do Action:   local pokeball = getPlayerSlotItem(cid, 8) local EFFECTS = { --[OutfitID] = {Effect} ["Magmar"] = 35, ["Jynx"] = 17, --alterado v1.5 ["Shiny Jynx"] =

Posted Images

Postado
  • Autor
38 minutos atrás, Lord Stryton disse:

Cara, você está usando a do Pokémon Imperium?
Se for, tem que modificar pra caralho o Goback, o Cath, o Goback do Creature.
Posta o Goback da action e do Creaturescripts, o catch do actions.

 

Estou usando uma base antiga Dash, estou adaptando ela e atualizando.

Goback Actions

Spoiler

local pokeball = getPlayerSlotItem(cid, 8) 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
--alterado v1.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 getItemAttribute(item.uid, "ball") == "pokeball" or getItemAttribute(item.uid, "ball") == "spokeball" then
   effect = 188
elseif getItemAttribute(item.uid, "ball") == "ultraball" or getItemAttribute(item.uid, "ball") == "sultraball" then
   effect = 191
elseif getItemAttribute(item.uid, "ball") == "superball" or getItemAttribute(item.uid, "ball") == "ssuperball" then
   effect = 190
elseif getItemAttribute(item.uid, "ball") == "greatball" or getItemAttribute(item.uid, "ball") == "sgreatball" then
   effect = 189
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 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 v1.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 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

--------------------------------------------------------------------------------------
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) < 3 or getPlayerGroupId(cid) > 6) then  --alterado v1.8 \/
    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)
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

 

Catch Actions

Spoiler

local ballcatch = {                    --id normal, id da ball shiy
[2394] = {cr = 3, on = 24, off = 23, ball = {11826, 11737}, send = 47, typeee = "normal"},  --alterado v2.9  \/
[2391] = {cr = 6, on = 198, off = 197, ball = {11832, 11740}, send = 48, typeee = "great"},
[2393] = {cr = 10, on = 202, off = 201, ball = {11835, 11743}, send = 46, typeee = "super"},
[2392] = {cr = 15, on = 200, off = 199, ball = {11829, 11746}, send = 49, typeee = "ultra"},
[12617] = {cr = 3, on = 204, off = 203, ball = {10975, 12621}, send = 35, typeee = "saffari"}, 
}

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

local item2 = getTopCorpse(topos)
if item2 == null then
    return true
end

if getItemAttribute(item2.uid, "catching") == 1 then
   return true
end

if getItemAttribute(item2.uid, "golden") and getItemAttribute(item2.uid, "golden") == 1 then
   return doPlayerSendCancel(cid, "You can't try to catch a pokemon in the Golden Arena!")   --alterado v2.6
end

local name = string.lower(getItemNameById(item2.itemid))  --alterado v2.9 \/
      name = string.gsub(name, "fainted ", "")
      name = string.gsub(name, "defeated ", "")
      name = doCorrectPokemonName(name)
local x = pokecatches[name]
    

local storage = newpokedex[doCorrectPokemonName(name)].stoCatch            --alterado v2.9 \/
if getPlayerStorageValue(cid, storage) == -1 or not string.find(getPlayerStorageValue(cid, storage), ";") then  
   setPlayerStorageValue(cid, storage, "normal = 0, great = 0, super = 0, ultra = 0, saffari = 0;")              
end    
    
if not x then return true end

local owner = getItemAttribute(item2.uid, "corpseowner")
    
if owner and isCreature(owner) and isPlayer(owner) and cid ~= owner then  --alterado v2.5
   doPlayerSendCancel(cid, "You are not allowed to catch this pokemon.")
   return true
end

local newidd = isShinyName(name) and ballcatch[item.itemid].ball[2] or ballcatch[item.itemid].ball[1] --alterado v2.9       
local typeee = ballcatch[item.itemid].typeee
       
local catchinfo = {}
        catchinfo.rate = ballcatch[item.itemid].cr
        catchinfo.catch = ballcatch[item.itemid].on
        catchinfo.fail = ballcatch[item.itemid].off
        catchinfo.newid = newidd                      
        catchinfo.name = doCorrectPokemonName(name)
        catchinfo.topos = topos
        catchinfo.chance = x.chance

doSendDistanceShoot(getThingPos(cid), topos, ballcatch[item.itemid].send)
doRemoveItem(item.uid, 1)

local d = getDistanceBetween(getThingPos(cid), topos)
                                              
if getPlayerStorageValue(cid, 98796) >= 1 and getPlayerItemCount(cid, 12617) <= 0 then --alterado v2.9 
   setPlayerStorageValue(cid, 98796, -1) 
   setPlayerStorageValue(cid, 98797, -1)                                              
   doTeleportThing(cid, SafariOut, false)
   doSendMagicEffect(getThingPos(cid), 21)
   doPlayerSendTextMessage(cid, 27, "You spend all your 'saffari balls', good luck in the next time...")
end
        
addEvent(doSendPokeBall, d * 70 + 100 - (d * 14) , cid, catchinfo, false, false, typeee)
addEvent(doSendMagicEffect, (d * 70 + 100 - (d * 14)) - 100, topos, 3)
return true
end

 

Goback Creature

Spoiler

function onLogout(cid)
    
    local thisitem = getPlayerSlotItem(cid, 8)
    
    if thisitem.uid <= 0 then return true end
    
    local ballName = getItemAttribute(thisitem.uid, "poke")
    
    --------------------------------------------------------
    btype = getPokeballType(thisitem.itemid)
    ---------------------------------------------------------------
    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 not isCreature(cid) then return true end
    if getPlayerStorageValue(cid, 52480) >= 1 and isInParty(cid) then
       local party = getPartyMembers(cid)
       for j = 1, #party do
         if party[j] == cid then
            doSendAnimatedText(getThingPosWithDebug(party[j]), "LOSE", COLOR_BURN)
            setPlayerStorageValue(party[j], 52480, -1)
            setPlayerStorageValue(party[j], 52481, -1)                                 --alterado v2.6 duel system
         else
            doSendAnimatedText(getThingPosWithDebug(party[j]), "WIN", COLOR_ELECTRIC)
            setPlayerStorageValue(party[j], 52480, -1)
            setPlayerStorageValue(party[j], 52481, -1)
         end
       end
    elseif getPlayerStorageValue(cid, 52481) >= 1 and not isInParty(cid) then 
       for _, sid in ipairs(getPlayersOnline()) do
          if getPlayerStorageValue(sid, 52482) == getCreatureName(cid) then
             addEvent(doSendAnimatedText, 1000, getThingPosWithDebug(sid), "WIN", COLOR_ELECTRIC)
             setPlayerStorageValue(sid, 52480, -1)
             setPlayerStorageValue(sid, 52481, -1)
             setPlayerStorageValue(sid, 52482, -1)
             setPlayerStorageValue(sid, 52483, -1)
             setPlayerStorageValue(sid, 6598754, -1)
             doCreatureSetSkullType(sid, 0)
          end
       end
       addEvent(doSendAnimatedText, 1000, getThingPosWithDebug(cid), "LOSE", COLOR_BURN)
       setPlayerStorageValue(cid, 52480, -1)
       setPlayerStorageValue(cid, 52481, -1)
       setPlayerStorageValue(cid, 52482, -1)
       setPlayerStorageValue(cid, 52483, -1)
       setPlayerStorageValue(cid, 6598754, -1)
       doCreatureSetSkullType(cid, 0)
    end
    --////////////////////////////////////////////////////////////////////////////////////////--
    if #getCreatureSummons(cid) == 2 and getPlayerStorageValue(cid, 212124) >= 1 then
       local cmed2 = getCreatureSummons(cid)[1]
       local poscmed = getThingPos(cmed2)
       local cmeddir = getCreatureLookDir(cmed2)
       local namecmed = getCreatureName(cmed2)
       local hp, maxHp = getCreatureHealth(getCreatureSummons(cid)[1]), getCreatureMaxHealth(getCreatureSummons(cid)[1])
       local gender = getPokemonGender(cmed2) 
       local level = getWildPokemonLevel(cmed2)
       doRemoveCreature(getCreatureSummons(cid)[1])
       local back = doCreateMonster(namecmed, poscmed)
       addEvent(doCreatureSetSkullType, 150, back, gender)
       addEvent(setWildPokemonLevel, 150, back, level)
       doCreatureSetLookDir(back, cmeddir)
       addEvent(doCreatureAddHealth, 100, back, hp-maxHp)
                                                                            --alterado v2.5  control mind
       -- pokemon controlador    
       local ball2 = getPlayerSlotItem(cid, 8)
       local mynewpos = getThingPos(getCreatureSummons(cid)[1])
       doRemoveCreature(getCreatureSummons(cid)[1])
       local pk2 = doSummonCreature(getItemAttribute(ball2.uid, "poke"), mynewpos) 
       doConvinceCreature(cid, pk2)
       addEvent(doAdjustWithDelay, 100, cid, pk2, true, true, false)
       setPlayerStorageValue(cid, 888, 0)
       cleanCMcds(ball2.uid)
       doCreatureSetLookDir(getCreatureSummons(cid)[1], 2)
       registerCreatureEvent(pk2, "SummonDeath")    --alterado v2.6
    end
    
    -------------------------------------------------------------------------------------
    local summon = getCreatureSummons(cid)[1]
     
    if #getCreatureSummons(cid) >= 1 and thisitem.uid > 1 then
        if getPlayerStorageValue(cid, 212124) <= 0 then
           doItemSetAttribute(thisitem.uid, "hp", (getCreatureHealth(summon) / getCreatureMaxHealth(summon)))
        end                                                          --alterado v2.5
        setPlayerStorageValue(cid, 212124, 0)
        doTransformItem(thisitem.uid, pokeballs[btype].on)
        doSendMagicEffect(getThingPos(summon), pokeballs[btype].effect)
        doRemoveCreature(summon)
    end

    if getCreatureOutfit(cid).lookType == 814 then
        doPlayerStopWatching(cid)
    end

    if tonumber(getPlayerStorageValue(cid, 17000)) and getPlayerStorageValue(cid, 17000) >= 1 then  --alterado v2.6
        markFlyingPos(cid, getThingPos(cid))
    end
    
    if getPlayerStorageValue(cid, 22545) == 1 then     --alterado v2.4
       setGlobalStorageValue(22550, getGlobalStorageValue(22550)-1)
    end

return TRUE
end

local deathtexts = {"Oh no! POKENAME, come back!", "Come back, POKENAME!", "That's enough, POKENAME!", "You did well, POKENAME!",
            "You need to rest, POKENAME!", "Nice job, POKENAME!", "POKENAME, you are too hurt!"}

function onDeath(cid, deathList)

    local owner = getCreatureMaster(cid)

        if getPlayerStorageValue(cid, 637500) >= 1 then
           doSendMagicEffect(getThingPos(cid), 211)
           doRemoveCreature(cid)
           return true
        end
        
        if getPlayerStorageValue(cid, 212123) >= 1 then --alterado v2.5
           return true
        end
        
        --////////////////////////////////////////////////////////////////////////////////////////--
        checkDuel(owner)                                                                          --alterado v2.6 duel system
        --////////////////////////////////////////////////////////////////////////////////////////--
        
    local thisball = getPlayerSlotItem(owner, 8)
    local ballName = getItemAttribute(thisball.uid, "poke")
    
    btype = getPokeballType(thisball.itemid)

        if #getCreatureSummons(owner) > 1 then
           BackTeam(owner, getCreatureSummons(owner))      
        end

        doSendMagicEffect(getThingPos(cid), pokeballs[btype].effect)
        doTransformItem(thisball.uid, pokeballs[btype].off)

        doPlayerSendTextMessage(owner, 22, "Your pokemon fainted.")

    local say = deathtexts[math.random(#deathtexts)]
        say = string.gsub(say, "POKENAME", getCreatureName(cid))

    if getPlayerStorageValue(cid, 33) <= 0 then
        doCreatureSay(owner, say, TALKTYPE_SAY)
    end

    doItemSetAttribute(thisball.uid, "hp", 0)
    doItemSetAttribute(thisball.uid, "happy", getPlayerStorageValue(cid, 1008) - happyLostOnDeath)
    doItemSetAttribute(thisball.uid, "hunger", getPlayerStorageValue(cid, 1009))

    doRemoveCreature(cid)

return false
end

 

Postado

Goback do Action:
 

local pokeball = getPlayerSlotItem(cid, 8) 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
--alterado v1.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 getItemAttribute(item.uid, "ball") == "pokeball" or getItemAttribute(item.uid, "ball") == "spokeball" then
   effect = 188
elseif getItemAttribute(item.uid, "ball") == "ultraball" or getItemAttribute(item.uid, "ball") == "sultraball" then
   effect = 191
elseif getItemAttribute(item.uid, "ball") == "superball" or getItemAttribute(item.uid, "ball") == "ssuperball" then
   effect = 190
elseif getItemAttribute(item.uid, "ball") == "greatball" or getItemAttribute(item.uid, "ball") == "sgreatball" then
   effect = 189
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 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 v1.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 boost = getItemAttribute(item.uid, "boost") or 0
if getPlayerLevel(cid) < (x.+boost) then
doPlayerSendCancel(cid, "You need level "..(x.+boost).." to use this pokemon.")
return true
end
--------------------------------------------------------------------------------------
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) < 3 or getPlayerGroupId(cid) > 6) then  --alterado v1.8 \/
    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)
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

Catch:
Deixe o mesmo.

 

Goback do creature:
 

function onLogout(cid)
    
    local thisitem = getPlayerSlotItem(cid, 8)
    
    if thisitem.uid <= 0 then return true end
    
    local ballName = getItemAttribute(thisitem.uid, "poke")
    
    --------------------------------------------------------
    btype = getPokeballType(thisitem.itemid)
    ---------------------------------------------------------------
    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 not isCreature(cid) then return true end
    if getPlayerStorageValue(cid, 52480) >= 1 and isInParty(cid) then
       local party = getPartyMembers(cid)
       for j = 1, #party do
         if party[j] == cid then
            doSendAnimatedText(getThingPosWithDebug(party[j]), "LOSE", COLOR_BURN)
            setPlayerStorageValue(party[j], 52480, -1)
            setPlayerStorageValue(party[j], 52481, -1)                                 --alterado v2.6 duel system
         else
            doSendAnimatedText(getThingPosWithDebug(party[j]), "WIN", COLOR_ELECTRIC)
            setPlayerStorageValue(party[j], 52480, -1)
            setPlayerStorageValue(party[j], 52481, -1)
         end
       end
    elseif getPlayerStorageValue(cid, 52481) >= 1 and not isInParty(cid) then 
       for _, sid in ipairs(getPlayersOnline()) do
          if getPlayerStorageValue(sid, 52482) == getCreatureName(cid) then
             addEvent(doSendAnimatedText, 1000, getThingPosWithDebug(sid), "WIN", COLOR_ELECTRIC)
             setPlayerStorageValue(sid, 52480, -1)
             setPlayerStorageValue(sid, 52481, -1)
             setPlayerStorageValue(sid, 52482, -1)
             setPlayerStorageValue(sid, 52483, -1)
             setPlayerStorageValue(sid, 6598754, -1)
             doCreatureSetSkullType(sid, 0)
          end
       end
       addEvent(doSendAnimatedText, 1000, getThingPosWithDebug(cid), "LOSE", COLOR_BURN)
       setPlayerStorageValue(cid, 52480, -1)
       setPlayerStorageValue(cid, 52481, -1)
       setPlayerStorageValue(cid, 52482, -1)
       setPlayerStorageValue(cid, 52483, -1)
       setPlayerStorageValue(cid, 6598754, -1)
       doCreatureSetSkullType(cid, 0)
    end
    --////////////////////////////////////////////////////////////////////////////////////////--
    if #getCreatureSummons(cid) == 2 and getPlayerStorageValue(cid, 212124) >= 1 then
       local cmed2 = getCreatureSummons(cid)[1]
       local poscmed = getThingPos(cmed2)
       local cmeddir = getCreatureLookDir(cmed2)
       local namecmed = getCreatureName(cmed2)
       local hp, maxHp = getCreatureHealth(getCreatureSummons(cid)[1]), getCreatureMaxHealth(getCreatureSummons(cid)[1])
       local gender = getPokemonGender(cmed2) 
       doRemoveCreature(getCreatureSummons(cid)[1])
       local back = doCreateMonster(namecmed, poscmed)
       addEvent(doCreatureSetSkullType, 150, back, gender)
       doCreatureSetLookDir(back, cmeddir)
       addEvent(doCreatureAddHealth, 100, back, hp-maxHp)
                                                                            --alterado v2.5  control mind
       -- pokemon controlador    
       local ball2 = getPlayerSlotItem(cid, 8)
       local mynewpos = getThingPos(getCreatureSummons(cid)[1])
       doRemoveCreature(getCreatureSummons(cid)[1])
       local pk2 = doSummonCreature(getItemAttribute(ball2.uid, "poke"), mynewpos) 
       doConvinceCreature(cid, pk2)
       addEvent(doAdjustWithDelay, 100, cid, pk2, true, true, false)
       setPlayerStorageValue(cid, 888, 0)
       cleanCMcds(ball2.uid)
       doCreatureSetLookDir(getCreatureSummons(cid)[1], 2)
       registerCreatureEvent(pk2, "SummonDeath")    --alterado v2.6
    end
    
    -------------------------------------------------------------------------------------
    local summon = getCreatureSummons(cid)[1]
     
    if #getCreatureSummons(cid) >= 1 and thisitem.uid > 1 then
        if getPlayerStorageValue(cid, 212124) <= 0 then
           doItemSetAttribute(thisitem.uid, "hp", (getCreatureHealth(summon) / getCreatureMaxHealth(summon)))
        end                                                          --alterado v2.5
        setPlayerStorageValue(cid, 212124, 0)
        doTransformItem(thisitem.uid, pokeballs[btype].on)
        doSendMagicEffect(getThingPos(summon), pokeballs[btype].effect)
        doRemoveCreature(summon)
    end
    if getCreatureOutfit(cid).lookType == 814 then
        doPlayerStopWatching(cid)
    end
    if tonumber(getPlayerStorageValue(cid, 17000)) and getPlayerStorageValue(cid, 17000) >= 1 then  --alterado v2.6
        markFlyingPos(cid, getThingPos(cid))
    end
    
    if getPlayerStorageValue(cid, 22545) == 1 then     --alterado v2.4
       setGlobalStorageValue(22550, getGlobalStorageValue(22550)-1)
    end
return TRUE
end
local deathtexts = {"Oh não! POKENAME, come back!", "Come back, POKENAME!", "That's enough, POKENAME!", "You did well, POKENAME!",
            "You need to rest, POKENAME!", "Nice job, POKENAME!", "POKENAME, you are too hurt!"}
function onDeath(cid, deathList)
    local owner = getCreatureMaster(cid)
        if getPlayerStorageValue(cid, 637500) >= 1 then
           doSendMagicEffect(getThingPos(cid), 211)
           doRemoveCreature(cid)
           return true
        end
        
        if getPlayerStorageValue(cid, 212123) >= 1 then --alterado v2.5
           return true
        end
        
        --////////////////////////////////////////////////////////////////////////////////////////--
        checkDuel(owner)                                                                          --alterado v2.6 duel system
        --////////////////////////////////////////////////////////////////////////////////////////--
        
    local thisball = getPlayerSlotItem(owner, 8)
    local ballName = getItemAttribute(thisball.uid, "poke")
    
    btype = getPokeballType(thisball.itemid)
        if #getCreatureSummons(owner) > 1 then
           BackTeam(owner, getCreatureSummons(owner))      
        end
        doSendMagicEffect(getThingPos(cid), pokeballs[btype].effect)
        doTransformItem(thisball.uid, pokeballs[btype].off)
        doPlayerSendTextMessage(owner, 22, "Seu pokémon está desmaiado.")
    local say = deathtexts[math.random(#deathtexts)]
        say = string.gsub(say, "POKENAME", getCreatureName(cid))
    if getPlayerStorageValue(cid, 33) <= 0 then
        doCreatureSay(owner, say, TALKTYPE_SAY)
    end
    doItemSetAttribute(thisball.uid, "hp", 0)
    doItemSetAttribute(thisball.uid, "happy", getPlayerStorageValue(cid, 1008) - happyLostOnDeath)
    doItemSetAttribute(thisball.uid, "hunger", getPlayerStorageValue(cid, 1009))
    doRemoveCreature(cid)
return false


Mande print dos arquivos da pasta Creaturescript e dos arquivos da Pasta data/lib para eu vê se tem algum outro relacionado ao level pokémon. Por que pode ser que mesmo editando esses 3 pode ser que não retire.
Qualquer erro manda a e.
Lembre-se de fazer outra pokéball com pokémon para não dá erro com as já existente.
 

Se for editar com o Notepad, sempre use codificação ANSI e salve. Assim você poderá editar com acentos Ortográficos!

D5RHqxi.png

 

Venha curti o Pokémon Underwater!

FB/PokemonUnderwater

 

Postado
  • Autor
26 minutos atrás, Lord Stryton disse:

Mande print dos arquivos da pasta Creaturescript e dos arquivos da Pasta data/lib para eu vê se tem algum outro relacionado ao level pokémon. Por que pode ser que mesmo editando esses 3 pode ser que não retire.
Qualquer erro manda a e.
Lembre-se de fazer outra pokéball com pokémon para não dá erro com as já existente.

 

Deu seguinte erro na disto

[10/01/2016 20:32:48] [Error - LuaScriptInterface::loadFile] data/actions/scripts/goback.lua:118: '<name>' expected near '+'
[10/01/2016 20:32:48] [Warning - Event::loadScript] Cannot load script (data/actions/scripts/goback.lua)
[10/01/2016 20:32:48] data/actions/scripts/goback.lua:118: '<name>' expected near '+'

Deu tbm um erro no goback do creature mas era q faltava um "end" antes do "return false" no final.
creature

Creature.thumb.png.f95ab10f72e0c4093445a
data/Lib

 

Lib.thumb.png.4a4f67cd5c771ff5e668d62d7d

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo