Ir para conteúdo

sidneivascao

Campones
  • Total de itens

    82
  • Registro em

  • Última visita

Posts postados por sidneivascao

  1. Então é o seguinte kk , no meu servidor está dando um  erro na distro quando pokemon mata um player , ou quando noPVP um player mata o outro , o erro é o seguinte ..

    Print do player morrendo e ali a corpse http://prntscr.com/k6md6x  , ai ele desloga >> http://prntscr.com/k6mdla

    e enbaixo o erro

    [Error - CreatureScript Interface]
    data/creaturescripts/scripts/exp2.0.lua:onStatsChange
    Description:
    (luaDoCreatureAddHealth) Creature not found

    Isso no exp2.0 , irei deixar aqui ele 

    exp2.0

    Spoiler

    local combats = {                        
    [PSYCHICDAMAGE] = {cor = COLOR_PSYCHIC},
    [GRASSDAMAGE] = {cor = COLOR_GRASS},
    [POISONEDDAMAGE] = {cor = COLOR_GRASS},
    [FIREDAMAGE] = {cor = COLOR_FIRE2},                         
    [BURNEDDAMAGE] = {cor = COLOR_BURN},
    [WATERDAMAGE] = {cor = COLOR_WATER},
    [ICEDAMAGE] = {cor = COLOR_ICE},
    [NORMALDAMAGE] = {cor = COLOR_NORMAL},
    [FLYDAMAGE] = {cor = COLOR_FLYING},           
    [GHOSTDAMAGE] = {cor = COLOR_GHOST},
    [GROUNDDAMAGE] = {cor = COLOR_GROUND},
    [ELECTRICDAMAGE] = {cor = COLOR_ELECTRIC},
    [ROCKDAMAGE] = {cor = COLOR_ROCK},
    [BUGDAMAGE] = {cor = COLOR_BUG},
    [FIGHTDAMAGE] = {cor = COLOR_FIGHTING},
    [DRAGONDAMAGE] = {cor = COLOR_DRAGON},
    [POISONDAMAGE] = {cor = COLOR_POISON},
    [DARKDAMAGE] = {cor = COLOR_DARK},               
    [STEELDAMAGE] = {cor = COLOR_STEEL},
    [MIRACLEDAMAGE] = {cor = COLOR_PSYCHIC},  
    [DARK_EYEDAMAGE] = {cor = COLOR_GHOST},
    [SEED_BOMBDAMAGE] = {cor = COLOR_GRASS},
    [SACREDDAMAGE] = {cor = COLOR_FIRE2}, 
    [MUDBOMBDAMAGE] = {cor = COLOR_GROUND}, --alterado v1.9
    }

    local function sendPlayerDmgMsg(cid, text)
        if not isCreature(cid) then return true end
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, text)
    end

    local races = {
    [4] = {cor = COLOR_FIRE2},
    [6] = {cor = COLOR_WATER},
    [7] = {cor = COLOR_NORMAL},
    [8] = {cor = COLOR_FIRE2},
    [9] = {cor = COLOR_FIGHTING},
    [10] = {cor = COLOR_FLYING},
    [11] = {cor = COLOR_GRASS},
    [12] = {cor = COLOR_POISON},
    [13] = {cor = COLOR_ELECTRIC},
    [14] = {cor = COLOR_GROUND},
    [15] = {cor = COLOR_PSYCHIC},
    [16] = {cor = COLOR_ROCK},
    [17] = {cor = COLOR_ICE},
    [18] = {cor = COLOR_BUG},
    [19] = {cor = COLOR_DRAGON},
    [20] = {cor = COLOR_GHOST},
    [21] = {cor = COLOR_STEEL},
    [22] = {cor = COLOR_DARK},
    [1] = {cor = 180},
    [2] = {cor = 180},
    [3] = {cor = 180},
    [5] = {cor = 180},
    }

    local damages = {GROUNDDAMAGE, ELECTRICDAMAGE, ROCKDAMAGE, FLYDAMAGE, BUGDAMAGE, FIGHTINGDAMAGE, DRAGONDAMAGE, POISONDAMAGE, DARKDAMAGE, STEELDAMAGE}
    local fixdmgs = {PSYCHICDAMAGE, COMBAT_PHYSICALDAMAGE, GRASSDAMAGE, FIREDAMAGE, WATERDAMAGE, ICEDAMAGE, NORMALDAMAGE, GHOSTDAMAGE}
    local ignored = {POISONEDDAMAGE, BURNEDDAMAGE}                
    local cannotkill = {BURNEDDAMAGE, POISONEDDAMAGE}
    local centropokemon = {x=1050, y=1053, z=7} -- Coordenadas para onde o player irá ser teleportado.

    function onStatsChange(cid, attacker, type, combat, value)

    if combat == FLYSYSTEMDAMAGE then return false end
    if isPlayer(cid) and getCreatureOutfit(cid).lookType == 814 then return false end -- TV

    if not isCreature(attacker) then  
        if not isInArray(fixdamages, combat) and combats[combat] then
            doSendAnimatedText(getThingPos(cid), value, combats[combat].cor)
        end
    return true
    end

    local damageCombat = combat
    --------------------------------------------------
    if type == STATSCHANGE_HEALTHGAIN then
        if cid == attacker then
        return true
        end
        if isSummon(cid) and isSummon(attacker) and canAttackOther(cid, attacker) == "Cant" then
        return false
        end
    return true
    end
    --------------------------------------------------
    if isMonster(cid) then
    local valor = value
       if not pokes[getCreatureName(cid)] and damageCombat == COMBAT_PHYSICALDAMAGE then
          valor = getOffense(attacker) * playerDamageReduction
          doCreatureAddHealth(cid, -math.abs(valor), 3, races[7].cor)                       
          return false
       elseif not pokes[getCreatureName(cid)] and damageCombat ~= COMBAT_PHYSICALDAMAGE then
          doCreatureAddHealth(cid, -math.abs(valor), 3, combats[damageCombat].cor)
          return false
       end
    end
    --------------------------------------------------
    if isPlayer(attacker) then

        local valor = value
        if valor >= getCreatureHealth(cid) then
            valor = getCreatureHealth(cid)
        end

        if combat == COMBAT_PHYSICALDAMAGE then
        return false
        end

        if combat == PHYSICALDAMAGE then
        doSendMagicEffect(getThingPos(cid), 3)
        doSendAnimatedText(getThingPos(cid), valor, races[getMonsterInfo(getCreatureName(cid)).race].cor)
        end

        if combats[damageCombat] and not isInArray(fixdmgs, damageCombat) then
        doSendAnimatedText(getThingPos(cid), valor, combats[damageCombat].cor)
        end

        if #getCreatureSummons(attacker) >= 1 and not isInArray({POISONEDDAMAGE, BURNEDDAMAGE}, combat) then
            doPlayerSendTextMessage(attacker, MESSAGE_STATUS_DEFAULT, "Your "..getPokeName(getCreatureSummons(attacker)[1]).." dealt "..valor.." damage to "..getSomeoneDescription(cid)..".")
        end

    return true
    end
    --------------------------------------------------
    if isPlayer(cid) and #getCreatureSummons(cid) >= 1 and type == STATSCHANGE_HEALTHLOSS then
    return false                                                                           
    end
    --------------------------------------------------
    if isPlayer(cid) and #getCreatureSummons(cid) <= 0 and type == STATSCHANGE_HEALTHLOSS then

    if isSummon(attacker) or isPlayer(attacker) then
       if canAttackOther(cid, attacker) == "Cant" then return false end
    end

    local valor = 0
            if combat == COMBAT_PHYSICALDAMAGE then
                valor = getOffense(attacker)
            else
                valor = getSpecialAttack(attacker)
            end

        valor = valor * playerDamageReduction
        valor = valor * math.random(83, 117) / 100

        if valor >= getCreatureHealth(cid) then
            valor = getCreatureHealth(cid)
        end

        valor = math.floor(valor)

        if valor >= getCreatureHealth(cid) then
           if getPlayerStorageValue(cid, 6598754) >= 1 or getPlayerStorageValue(cid, 6598755) >= 1 then
              setPlayerStorageValue(cid, 6598754, -1)
              setPlayerStorageValue(cid, 6598755, -1)
              doRemoveCondition(cid, CONDITION_OUTFIT)             
              doTeleportThing(cid, posBackPVP, false)
              doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
              return false --alterado v1.8
           end
           
           if getPlayerStorageValue(cid, 17001) >= 1 or getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 then
              doRemoveCondition(cid, CONDITION_OUTFIT)
              setPlayerStorageValue(cid, 17000, 0)
              setPlayerStorageValue(cid, 17001, 0)
              setPlayerStorageValue(cid, 63215, -1) 
              doChangeSpeed(cid, PlayerSpeed)
              local item = getPlayerSlotItem(cid, ?
              local btype = getPokeballType(item.itemid)
              if #getCreatureSummons(cid) <= 0 then
                   if isInArray(pokeballs[btype].all, item.itemid) then
                       doTransformItem(item.uid, pokeballs[btype].off)
                       doItemSetAttribute(item.uid, "hp", 0)
                 end
              end
           end

           if getPlayerStorageValue(cid, 22545) == 1 then
              if getGlobalStorageValue(22550) == 1 then
                 doPlayerSendTextMessage(cid, 20, "You are the last survivor of the golden arena! Take your reward!")
                 doPlayerAddItem(cid, 2152, getPlayerStorageValue(cid, 22551)*2)  
                 setPlayerStorageValue(cid, 22545, -1)
                 doTeleportThing(cid, getClosestFreeTile(cid, getClosestFreeTile(cid, posBackGolden)), false)  
                 doCreatureAddHealth(cid, getCreatureMaxHealth(cid)-getCreatureHealth(cid))
                 setPlayerRecordWaves(cid)     
                 endGoldenArena()
                 return false --alterado v1.8           
              else
                 setGlobalStorageValue(22550, getGlobalStorageValue(22550)-1)
                 setPlayerStorageValue(cid, 22545, -1)
                 doTeleportThing(cid, getClosestFreeTile(cid, posBackGolden), false)    
                 doCreatureAddHealth(cid, getCreatureMaxHealth(cid)-getCreatureHealth(cid))
                 setPlayerRecordWaves(cid)     
                 return true
              end 
           end

           if getPlayerStorageValue(cid, 98796) >= 1 then
              setPlayerStorageValue(cid, 98796, -1) 
              setPlayerStorageValue(cid, 98797, -1)                      --alterado v1.8
              doTeleportThing(cid, SafariOut, false)
              doSendMagicEffect(getThingPos(cid), 21)
              doPlayerSendTextMessage(cid, 27, "You die in the saffari... Best luck in the next time!")
              return false --alterado v1.8
           end


           
        

           if getPlayerStorageValue(cid, Agatha.stoIni) >= 1 and getPlayerStorageValue(cid, Agatha.stoIni) <= 10 then
              setPlayerStorageValue(cid, Agatha.stoIni, -1)
              setPlayerStorageValue(cid, Agatha.stoRec, -1)
              setPlayerStorageValue(cid, Agatha.stoPer, -1)
              setPlayerStorageValue(cid, Agatha.stoEni, -1)        --alterado v1.9  agatha quest
              setPlayerStorageValue(cid, Agatha.stoRes, -1)
           end 
        doCreatureAddHealth(cid, getCreatureMaxHealth(cid), 3, 180)
                if getTileZoneInfo(getCreaturePosition(cid)) == 2 then
                updateLevel(cid, math.ceil(getPlayerLevel(cid) / 100 * 9), "nao")
            else
        updateLevel(cid, math.ceil(getPlayerLevel(cid) / 100 * 9), "sim")
                
            end
        end
        doCreatureAddHealth(cid, -valor, 3, 180)
        if not isPlayer(cid) then
           addEvent(sendPlayerDmgMsg, 5, cid, "You lost "..valor.." hitpoints due to an attack from "..getSomeoneDescription(attacker)..".")
        end
    return false
    end
    --------------------------------------------------
    if isMonster(attacker) and getPlayerStorageValue(attacker, 201) ~= -1 then
        if isPlayer(cid) then
        return false
        end
        if getPlayerStorageValue(getCreatureMaster(cid), ginasios[getPlayerStorageValue(attacker, 201)].storage) ~= 1 then
        return false
        end
    end
    --------------------------------------------------
    if isMonster(cid) and getPlayerStorageValue(cid, 201) ~= -1 then
        if getPlayerStorageValue(getCreatureMaster(attacker), ginasios[getPlayerStorageValue(cid, 201)].storage) ~= 1 then
        return false
        end
    end
    --------------------------------------------------
    if ehMonstro(cid) and ehMonstro(attacker) and not isSummon(cid) and not isSummon(attacker) then 
    return false                                          --alterado v1.9 /\
    end
    --------------------------------------------------
    --------------------REFLECT-----------------------
    if getPlayerStorageValue(cid, 21099) >= 1 and combat ~= COMBAT_PHYSICALDAMAGE then
       if not isInArray({"Team Claw", "Team Slice"}, getPlayerStorageValue(attacker, 21102)) then
          doSendMagicEffect(getThingPosWithDebug(cid), 135)
          doSendAnimatedText(getThingPosWithDebug(cid), "REFLECT", COLOR_GRASS)
          addEvent(docastspell, 100, cid, getPlayerStorageValue(attacker, 21102))
          if getCreatureName(cid) == "Wobbuffet" then
             doRemoveCondition(cid, CONDITION_OUTFIT)    
          end
          setPlayerStorageValue(cid, 21099, -1)                    
          setPlayerStorageValue(cid, 21100, 1)
          setPlayerStorageValue(cid, 21101, attacker)
          setPlayerStorageValue(cid, 21103, getTableMove(attacker, getPlayerStorageValue(attacker, 21102)).f)
          setPlayerStorageValue(cid, 21104, getCreatureOutfit(attacker).lookType)
          return false
       end
    end
    -------------------------------------------------

    local multiplier = 1

       if isCreature(cid) then
          poketype1 = pokes[getCreatureName(cid)].type        
          poketype2 = pokes[getCreatureName(cid)].type2
       end
       if not poketype1 or not poketype2 then return false end  
       
        if getCreatureCondition(cid, CONDITION_INVISIBLE) then
        return false
        end
    if combat == COMBAT_PHYSICALDAMAGE then
        if isGhostPokemon(cid) then               
           if not isInArray(specialabilities["foresight"], getCreatureName(attacker)) then  --passiva Foresight!!
              doSendMagicEffect(getThingPos(cid), 3)     
              return false
           end
        end
            local cd = getPlayerStorageValue(attacker, conds["Miss"])
            local cd2 = getPlayerStorageValue(attacker, conds["Confusion"]) 
            local cd3 = getPlayerStorageValue(attacker, conds["Stun"]) 
            if cd >= 0 or cd2 >= 0 or cd3 >= 0 then
               if math.random(1, 100) > 50 then  
                  doSendMagicEffect(getThingPos(cid), 211)
                  doSendAnimatedText(getThingPos(attacker), "MISS", 215)         
                  return false
               end
            end
    end
    --------------------------------------------------
    local valor = value

        if multiplier < 1.5 and poketype2 == "no type" then
            multiplier = 2                                         
        elseif multiplier == 1.5 and poketype2 ~= "no type" then    
            multiplier = 1.75       
        elseif multiplier == 2.20 then    
            multiplier = 3    
        end

    --------------------------------------------------
        if isSummon(cid) and isSummon(attacker) then
            if getCreatureMaster(cid) == getCreatureMaster(attacker) then
               return false
            end
            if canAttackOther(cid, attacker) == "Cant" then
               return false
            end
        end

        valor = valor * multiplier

        if isSummon(attacker) then
            valor = valor * getHappinessRate(attacker)
        else
            valor = valor * summonReduction
        end
                                                                  
        valor = math.floor(valor)                                 
        
        if combat == COMBAT_PHYSICALDAMAGE then
           
           local value = getOffense(attacker) > 1000 and 3 or 2
           block = 1 - (getDefense(cid) / (getOffense(attacker) + getDefense(cid))) --alterado v1.9 testem essa nova formula plzzz '--'
            valor = (getOffense(attacker)/value) * block
           
            if valor <= 0 then
              valor = math.random(5, 10) --alterado v1.9
           end
           
           if isInArray(specialabilities["counter"], getCreatureName(cid)) then
              if math.random(1, 100) <= 10 then
                 doCreatureAddHealth(attacker, -valor, 3, 180)    
                 valor = 0
                 doSendAnimatedText(getThingPosWithDebug(cid), "COUNTER", 215)
              end
           end      
        else
                if valor <= 0 then
              valor = math.random(5, 10) --alterado v1.9
           end
           
           valor = valor / getDefense(cid)
        end
        
        -------------------------Edited CLAN SYSTEM-----------------------------------
        if isSummon(attacker) and getPlayerStorageValue(getCreatureMaster(attacker), 86228) >= 1 then
           valor = valor*getClanPorcent(getCreatureMaster(attacker), combat, "atk")                           
        elseif isSummon(cid) and getPlayerStorageValue(getCreatureMaster(cid), 86228) >= 1 then
           valor = valor - (valor*getClanPorcent(getCreatureMaster(cid), combat, "def", pokes[getCreatureName(cid)].type, pokes[getCreatureName(cid)].type2))
        end
        -----------------------------------------------------------------------
        ---------------------- FEAR / ROAR ------------------------------------
        if getPlayerStorageValue(attacker, conds["Fear"]) >= 1 then         
        return true
        end
    --------------------------------------------------------------------------


    if damageCombat == GROUNDDAMAGE then
       if isInArray(specialabilities["levitate"], getCreatureName(cid)) then
          valor = 0                      
       end
    end
    -----------------------------------------------------------------------------
    local p = getThingPos(cid)                     
    if p.x == 1 and p.y == 1 and p.z == 10 then
    return false                                    
    end

    if getPlayerStorageValue(cid, 9658783) == 1 then
    return false     --imune
    end
    -----------------------------------------------------------------------------

    --------------- FIGHT MODE -----------------------
    if useOTClient then
    if isSummon(cid) then                                  
       local master = getCreatureMaster(cid)
       if getPlayerStorageValue(master, 248759) == 1 then
          valor = valor * 1.1
       elseif getPlayerStorageValue(master, 248759) == 3 then
          valor = valor * 0.9
       end
    end
    if isSummon(attacker) then
       local master = getCreatureMaster(attacker)
       if getPlayerStorageValue(master, 248759) == 1 then
          valor = valor * 1.1
       elseif getPlayerStorageValue(master, 248759) == 3 then
          valor = valor * 0.9
       end
    end 
    end   
    -----------------------------------------------------------------------------      
        
    ------------------ SKILLs Q CURAM O ATTACKER ---------------------------------
    local function doHeal(cid, amount)
    if (getCreatureHealth(cid) + amount) >= getCreatureMaxHealth(cid) then
       amount = math.abs(getCreatureHealth(cid)-getCreatureMaxHealth(cid))
    end
    if getCreatureHealth(cid) ~= getCreatureMaxHealth(cid) then           
       doCreatureAddHealth(cid, amount)
       doSendAnimatedText(getThingPosWithDebug(cid), "+"..amount.."", 65) 
    end
    end
              
    if damageCombat == PSYCHICDAMAGE or damageCombat == MIRACLEDAMAGE then
       if getPlayerStorageValue(attacker, 95487) >= 1 then
          doHeal(attacker, valor)
          setPlayerStorageValue(attacker, 95487, -1)                  
       end
    elseif damageCombat == SEED_BOMBDAMAGE then
       doHeal(attacker, valor)
    end
    --------------------------------------------
    ----------SACRED FIRE-----------------------
    if combat == SACREDDAMAGE and not ehNPC(cid) then    
       local ret = {}
       ret.id = cid
       ret.cd = 9
       ret.check = getPlayerStorageValue(cid, conds["Silence"])
       ret.eff = 39
       ret.cond = "Silence"

       doCondition2(ret)
    elseif combat == MUDBOMBDAMAGE and not ehNPC(cid) then
       local ret = {}                                        
       ret.id = cid
       ret.cd = 9
       ret.eff = 34
       ret.check = getPlayerStorageValue(cid, conds["Miss"])
       ret.spell = "Mud Bomb"       --alterado v1.9
       ret.cond = "Miss"
       
       doCondition2(ret)
    end
    ---------------------------------------------
    --------------Passiva Lifesteal Clobat------------
    if combat == COMBAT_PHYSICALDAMAGE then
       if getCreatureName(attacker) == "Crobat" then                    
          doCreatureAddHealth(attacker, math.floor(valor))
          doSendAnimatedText(getThingPos(attacker), "+ "..math.floor(valor), 30)
       end
    end
    --------------------------------------------
        valor = math.abs(valor)    --alterado v1.9
        if isSummon(attacker) then
            if combat == COMBAT_PHYSICALDAMAGE then
                doTargetCombatHealth(getCreatureMaster(attacker), cid, PHYSICALDAMAGE, -valor, -valor, 255)
                addEvent(doDoubleHit, 1000, attacker, cid, valor, races)      
            else
                doTargetCombatHealth(getCreatureMaster(attacker), cid, damageCombat, -valor, -valor, 255)
            end
        else
            if combat ~= COMBAT_PHYSICALDAMAGE then
                doCreatureAddHealth(cid, -valor, 3, combats[damageCombat].cor)  
            else
                doCreatureAddHealth(cid, -valor, 3, races[getMonsterInfo(getCreatureName(cid)).race].cor)
                addEvent(doDoubleHit, 1000, attacker, cid, valor, races)   
            end

            if isSummon(cid) and valor ~= 0 then
                addEvent(sendPlayerDmgMsg, 5, getCreatureMaster(cid), "Your "..getCreatureName(cid).." lost "..valor.." hitpoints due to an attack from "..getSomeoneDescription(attacker)..".")
            end

        end
        
        if damageCombat == FIREDAMAGE and not isBurning(cid) then
           local ret = {}
           ret.id = cid
           ret.cd = math.random(5, 12)
           ret.check = getPlayerStorageValue(cid, conds["Burn"])
           ret.damage = isSummon(attacker) and getPokemonBoost(attacker) or getPokemonLevel(attacker)
           ret.cond = "Burn"
           
           doCondition2(ret)
        elseif damageCombat == POISONDAMAGE and not isPoisoned(cid) then
           local ret = {}
           ret.id = cid
           ret.cd = math.random(6, 15)
           ret.check = getPlayerStorageValue(cid, conds["Poison"])
           local lvl = isSummon(attacker) and getPokemonBoost(attacker) or getPokemonLevel(attacker)
           ret.damage = math.floor((getPokemonLevel(attacker)+lvl)/2)
           ret.cond = "Poison"
           
           doCondition2(ret)
        end
    --[[---------------CD BAR-----------------------
    if isSummon(cid) then
       doCreatureExecuteTalkAction(getCreatureMaster(cid), "/pokeread")
    end  ]]
    ------------------------------------POTIONS-------------------------------------------
    if isSummon(cid) and type == STATSCHANGE_HEALTHLOSS then
       if getPlayerStorageValue(cid, 173) >= 1 then
          if damageCombat ~= BURNEDDAMAGE and damageCombat ~= POISONEDDAMAGE then
             setPlayerStorageValue(cid, 173, -1)  
             doSendAnimatedText(getThingPos(cid), "Lost Heal", 144)
          end
       end
    end
    ----------------------------------------PASSIVAS-------------------------------------  
    -------------------------------------------Counter Helix------------------------------------
    if passivesChances["Helix"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Helix"][getCreatureName(cid)] then
       docastspell(cid, "Counter Helix")
    end
    -------------------------------------------Lava Counter/Electricity----------------------------
    if passivesChances["Fire_Thunder"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Fire_Thunder"][getCreatureName(cid)] then
       docastspell(cid, "Lava-Electricity")
    end
    ---------------------------------------Stunning Confusion-----------------------------------------
    if passivesChances["Stunning"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Stunning"][getCreatureName(cid)] then  
       docastspell(cid, "Stunning Confusion")
    end
    -----------------------------------------Groundshock-----------------------------------
    ---------------------------------------Stunning Confusion-----------------------------------------
    if passivesChances["Invisible Passive"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Invisible Passive"][getCreatureName(cid)] then  
       docastspell(cid, "Invisible Passive")
    end
    -----------------------------------------Groundshock-----------------------------------
    if passivesChances["Groundshock"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Groundshock"][getCreatureName(cid)] then
       docastspell(cid, "Groundshock")
    end
    --------------------------------------Electric Charge---------------------------------------------
    if passivesChances["Electric Charge"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Electric Charge"][getCreatureName(cid)] then
       docastspell(cid, "Electric Charge", 0, 0)
    end
    -------------------------------------Melody------------------------------------
    if passivesChances["Melody"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Melody"][getCreatureName(cid)] then 
       docastspell(cid, "Melody")
    end
    ------------------------------------- Dragon Fury / Fury ---------------------------------------
    if passivesChances["Dragon Fury"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Dragon Fury"][getCreatureName(cid)] then
       docastspell(cid, "Dragon Fury", 0, 0)
    end
    ------------------------------------- Mega Drain ---------------------------------------
    if passivesChances["Mega Drain"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Mega Drain"][getCreatureName(cid)] then
       docastspell(cid, "Mega Drain")
    end
    ------------------------------------- Spores Reaction ---------------------------------------
    if passivesChances["Spores Reaction"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Spores Reaction"][getCreatureName(cid)] then
       docastspell(cid, "Spores Reaction")
    end
    ------------------------------------ Amnesia ----------------------------------------   
    if passivesChances["Amnesia"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Amnesia"][getCreatureName(cid)] then 
       docastspell(cid, "Amnesia", 0, 0)
    end
    ----------------------------------- Zen Mind -----------------------------------------
    if passivesChances["Zen Mind"][getCreatureName(cid)] and isWithCondition(cid) and math.random(1, 100) <= passivesChances["Zen Mind"][getCreatureName(cid)] then
       docastspell(cid, "Zen Mind", 0, 0)
    end
    ---------------------------------- Mirror Coat ---------------------------------------
    if passivesChances["Mirror Coat"][getCreatureName(cid)] and math.random(1, 100) <= passivesChances["Mirror Coat"][getCreatureName(cid)] then   
       docastspell(cid, "Mirror Coat", 0, 0)
    end
    --------------------------------- Illusion -----------------------------------------
    return false
    end

     

    Ai eu fiz um teste , peguei um exp de outro serve lenda , msm distro e tal , testei , até então nao da erro quando morre , ou quando mata alguem no pvp , print de como fica quando morre >>  http://prntscr.com/k6mdfd

    aqui o link 

    exp

    Spoiler

    local expcond = createConditionObject(CONDITION_INFIGHT)
    setConditionParam(expcond, CONDITION_PARAM_TICKS, 4500)

    function onStatsChange(cid, attacker, enps, combatee, value)
    if getPlayerStorageValue(cid, 33) >= 1 then
    if isCreature(attacker) then
    return false
    end
    return true
    end
    if getPlayerStorageValue(cid, 34) >= 1 then
    if combatee ~= COMBAT_PHYSICALDAMAGE then
    if isCreature(attacker) then
    doSendMagicEffect(getThingPos(cid), 135)
    doSendMagicEffect(getThingPos(attacker), 3)
    doSendAnimatedText(getThingPos(cid), "REFLECT", 215)
    doCreatureAddHealth(attacker, -value)
    setPlayerStorageValue(cid, 34, 0)
    doSendAnimatedText(getThingPos(attacker), -value, 191)
    return false
    end
    end
    end
    if getPlayerStorageValue(cid, 35) >= 1 then
    if combatee ~= COMBAT_PHYSICALDAMAGE then
    if isCreature(attacker) then
    doSendAnimatedText(getThingPos(cid), "MISS", 215)
    setPlayerStorageValue(cid, 35, 0)
    return false
    end
    end
    end
    if not isCreature(attacker) then
    return true
    end
    if isPlayer(attacker) then
    return true
    end
    if enps == STATSCHANGE_HEALTHGAIN then
    return true
    end
    if enps == STATSCHANGE_HEALTHLOSS then
    if getCreatureHealth(cid) <= value then
    if isPlayer(cid) then
        if #getCreatureSummons(cid) == 0 then
        return true
        end
    return false
    end
    if isPlayer(getCreatureMaster(attacker)) then
    doTargetCombatHealth(getCreatureMaster(attacker), cid, combatee, -(getCreatureHealth(cid)), -(getCreatureHealth(cid)), 3)
    return false
    end
    return true
    end
    if isPlayer(getCreatureMaster(cid)) then
    doAddCondition(getCreatureMaster(cid), expcond)
    end
    if not isPlayer(cid) then
    if combatee == ELECTRICDAMAGE then
    if isInArray(electric2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(electric1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(electric0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == WATERDAMAGE then
    if isInArray(water2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(water1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(water0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == GRASSDAMAGE then
    if isInArray(grass2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(grass1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(grass0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == FLYDAMAGE then
    if isInArray(flying2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(flying1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(flying0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == FIREDAMAGE then
    if isInArray(fire2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(fire1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(fire0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == ROCKDAMAGE then
    if isInArray(rock2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(rock1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(rock0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == GROUNDDAMAGE then
    if isInArray(ground2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(ground1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(ground0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == GHOSTDAMAGE then
    if isInArray(ghost2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(ghost1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(ghost0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == BUGDAMAGE then
    if isInArray(bug2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(bug1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(bug0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == NORMALDAMAGE then
    if isInArray(normal2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(normal1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(normal0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == FIGHTDAMAGE then
    if isInArray(fighting2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(fighting1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(fighting0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == POISONDAMAGE then
    if isInArray(poison2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(poison1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(poison0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == PSYCHICDAMAGE then
    if isInArray(psychic2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(psychic1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(psychic0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == ICEDAMAGE then
    if isInArray(ice2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(ice1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(ice0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    elseif combatee == DRAGONDAMAGE then
    if isInArray(dragon2, getCreatureName(cid)) then
    x = 2
    elseif isInArray(dragon1, getCreatureName(cid)) then
    x = 0.5
    elseif isInArray(dragon0, getCreatureName(cid)) then
    x = 0
    else
    x = 1
    end
    else
    x = 1
    end
    else
    x = 1
    end
    local xx = x
    if combatee == PSYCHICDAMAGE then
    cor = COLOR_PSYCHIC
    elseif combatee == GRASSDAMAGE then
    cor = COLOR_GRASS
    elseif combatee == FIREDAMAGE then
    cor = COLOR_FIRE2
    elseif combatee == WATERDAMAGE then
    cor = COLOR_WATER
    elseif combatee == ICEDAMAGE then
    cor = COLOR_ICE
    elseif combatee == NORMALDAMAGE then
    cor = COLOR_NORMAL
    elseif combatee == FLYDAMAGE then
    cor = COLOR_FLYING
    elseif combatee == GHOSTDAMAGE then
    cor = COLOR_GHOST
    elseif combatee == GROUNDDAMAGE then
    cor = COLOR_GROUND
    elseif combatee == ELECTRICDAMAGE then
    cor = COLOR_ELECTRIC
    elseif combatee == ROCKDAMAGE then
    cor = COLOR_ROCK
    elseif combatee == BUGDAMAGE then
    cor = COLOR_BUG
    elseif combatee == FIGHTDAMAGE then
    cor = COLOR_FIGHTING
    elseif combatee == DRAGONDAMAGE then
    cor = COLOR_DRAGON
    elseif combatee == POISONDAMAGE then
    cor = COLOR_POISON
    elseif getCreatureName(cid) == "Kakuna" or getCreatureName(cid) == "Metapod" then
    cor = COLOR_BUG
    elseif getCreatureName(cid) == "Golem" or getCreatureName(cid) == "Graveler" or getCreatureName(cid) == "Geodude" then
    cor = COLOR_ROCK
    else
    cor = NONE
    end
    local cores = cor
    if not isSummon(attacker) then
    if not isPlayer(cid) and not isPlayer(getCreatureMaster(cid)) then
    return false
    end
    if isSummon(cid) and getCreatureHealth(cid) <= (getCreatureMaxHealth(cid)*0.15) and not exhaustion.get(getCreatureMaster(cid), 88726) then
    exhaustion.set(getCreatureMaster(cid), 88726, 6)
    doSendMagicEffect(getThingPos(cid), 178)
    end
    if isPlayer(cid) then
    if #getCreatureSummons(cid) >= 1 then
    return false
    end
    doCreatureAddHealth(cid, -value)
    doSendAnimatedText(getThingPos(cid), value, 180)
    doSendMagicEffect(getThingPos(cid), 3)
    return false
    end
    if getPlayerStorageValue(cid, 4) >= 1 then
    local damage = value
    doSendMagicEffect(getThingPos(cid), 2)
    doCreatureAddHealth(cid, -((math.floor(damage/2))*xx))
    doSendAnimatedText(getThingPos(cid), (math.floor((damage)/2)*xx), cores)
    else
    local damage = value
    if cor == NONE then
    return true
    end
    doCreatureAddHealth(cid, -((math.floor(damage/1))*xx))
    doSendAnimatedText(getThingPos(cid), (math.floor((damage)/1)*xx), cores)
    doSendMagicEffect(getThingPos(cid), 3)
    return false
    end
    return false
    end
    if isSummon(attacker) then
    if isSummon(cid) then
    return false
    end
    combatx = combatee
    valor = value
    if getPlayerStorageValue(cid, 4) >= 1 then
    doTargetCombatHealth(getCreatureMaster(attacker), cid, combatx, -((valor / 2)*x), -(((valor / 2)+10)*x), 255)
    else
    doTargetCombatHealth(getCreatureMaster(attacker), cid, combatx, -((valor)*x), -((valor+10)*x), 255)
    end
    end
    end
    end

    Então eu queria coloca esse sistema da morte de cima , pois ele nao deu nenhum erro no meu servidor kk , se alguem tiver como ajuda :v , ja mexi em tudo , e o erro persiste .. 

  2. comigo deu uns erro aew kk , se tiver como ajudar 

    TFs 0.36 minha distro

     

    os erros forao

     

    [29/06/2018 02:18:58] [Error - LuaScriptInterface::loadFile] data/talkactions/scripts/afk.lua:3: unexpected symbol near 'ï'
    [29/06/2018 02:18:58] [Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/afk.lua)
    [29/06/2018 02:18:58] data/talkactions/scripts/afk.lua:3: unexpected symbol near 'ï'
    [29/06/2018 02:18:58] [Error - LuaScriptInterface::loadFile] cannot open data/creaturescripts/scripts/AwayFromKeyboard.lua: No such file or directory
    [29/06/2018 02:18:58] [Warning - Event::loadScript] Cannot load script (data/creaturescripts/scripts/AwayFromKeyboard.lua)
    [29/06/2018 02:18:58] cannot open data/creaturescripts/scripts/AwayFromKeyboard.lua: No such file or directory
    [29/06/2018 02:18:58] [Error - LuaScriptInterface::loadFile] cannot open data/creaturescripts/scripts/AwayFromKeyboard.lua: No such file or directory
    [29/06/2018 02:18:58] [Warning - Event::loadScript] Cannot load script (data/creaturescripts/scripts/AwayFromKeyboard.lua)
    [29/06/2018 02:18:58] cannot open data/creaturescripts/scripts/AwayFromKeyboard.lua: No such file or directory

  3. Help , to com erro tbm , se eu usar a pokedex em mim mesmo , da esse erro na distro , ou se usar em player tbm da erro , como faria pra bloquea essa açao ?

     

    [29/06/2018 01:51:52] [Error - Action Interface] 
    [29/06/2018 01:51:52] data/actions/scripts/pokedex.lua:onUse
    [29/06/2018 01:51:52] Description: 
    [29/06/2018 01:51:52] data/actions/scripts/pokedex.lua:58: attempt to index a boolean value
    [29/06/2018 01:51:52] stack traceback:
    [29/06/2018 01:51:52]     data/actions/scripts/pokedex.lua:58: in function <data/actions/scripts/pokedex.lua:3>
     

  4. 23 horas atrás, Marshmello disse:

    Corrigido topico atualizado

    deu certo , so tem um pequeno problema , se o player nao tiver o pokemon , e ele falar Hi

    missao 

    e aparecer akela msg 01:33 NPC NAME: Preciso que me traga um Divine Arceus.

    da esse erro na distro http://prntscr.com/k0nnxl

    Acontece porque o player nao tem o pokemon , se o player tiver , o npc funciona e troca de boa 

    e tbm se nao tiver usando pokemon e falar "missao" da erro tbm e fala que precisa do pokemon , fora isso sistema ta perfeito , se puder me ajuda resolver, fico grato hehe

  5. 47 minutos atrás, PoRaI disse:

    O problema tá no seu banco de dados ou no seu arquivo de deathlist (talkaction). Faça o seguinte, verifique se existe a tabela `mortes`, `killers`, `player_death`, algo assim no seu banco de dados, se sim, abra ela e tire uma print para mim. E também, poste o arquivo talkactions/scripts/deathlist.lua do seu servidor aqui eu analisar. Preciso da print e do arquivo.

    https://prnt.sc/ju0um5 , nao marca nada ai , so no "mortes" , mostra uma morte , mais nao sei como ativo ela no servidor

    print do "mortes" http://prntscr.com/ju0vtx

    http://prntscr.com/ju0w4i

    deathlist.lua

  6. Em 09/06/2018 em 22:10, PoRaI disse:

    1.2:

    
    function onUse(player, item, fromPosition, target, toPosition, isHotkey)
    	local tile = Tile(fromPosition)
    	if tile:hasFlag(TILESTATE_PROTECTIONZONE) then
    		-- erro se tiver em PZ.
    		return true
    	end
    
    	-- código fora de PZ.
    	return true
    end

    0.3.6:

    
    function onUse(cid, item, fromPosition, itemEx, toPosition)
    	if (getTileInfo(fromPosition).protection == TRUE) then
    		-- erro se tiver em PZ.
    		return true
    	end
    	-- código fora de PZ.
    	return true
    end


    Testa ai e me dizzzz...

    poderia manda o script do xml ai tbm ? quero testa no meu pra ve se funfa tbm , Tfs e 0.36

  7. » » »  POKELUTE 2 » » » 

    »  Varios pokemons retirados do shop para ser add em quest.
    »  Launcher «
    »   Megas Free! «
    »  Open Sourcer «
    »  Vagas na Staff  «
    »  Vagas De Youtuber  «
    »  Vagas De Divulgadores  «
    »  Base com Pokemons Squad, mais de 30 quests.«
    »  Sistemas inovativos. «
    »  Quests espalhadas, UP não exagerado «
    »  Sem pergaminho «
    »  Base Lenda «
    »  HeroVIP «
    »  BetaVIP «
    »  Novos sistemas «
    »  Corrigido varios bugs. «
    »  House e Guild estão devolta | APROVEITE E COMPRE SUA HOUSE «
    »  Revives agora são compraveis no Fill (Cerulean) por apenas 5 scarabs (20 unidades) «
    »  Nova maquina (VPS) «
    »  Sistema de Achievements (Matar 100 mil pokemon = premio, dar dex em X pokemon = premio) «
    »  Venha para o PokeLute «

    »  Download OLD Client com Launcher (Necessario) Mediafire: http://www.mediafire.com/file/tsva5favtxlsq88/Install_PokeLute_v2_02.rar «
    »  Download OLD Client com Launcher (Necessario) Mega: https://mega.nz/ «
    »    Download NEW Client com Launcher (Necessario) Mediafire: http://www.mediafire.com/file/5vrcrg9vyar6uc8/NewClient_PokeLute_v10002.exe «
    »  Scan: https://www.virustotal.com/pt/file/b8614f187d1da0007b268322d43e1fb0332fc4205201038c9e1bb2bbd64cdebf/analysis/1480620897/ [WIN32: VIRUS FALSO] «
    »  (Caso de algum aviso quando você abrir o Launcher pela primeira vez, basta abrir novamente q ele funciona) «
    »  Em breve mais opções de download! «

    »  OBS: «
    »  Ao Baixar e  Instalar o Launcher , Execute como Administrador , Não Clique em Start Até Finalizar a Atualização Automatica , caso contrario poderá bugar. «

    »  Pagina: https://www.facebook.com/PokeLute/ «
    »  Grupo: https://www.facebook.com/groups/pokeluteoficial/ «
    »  Site: http://pokeluteofficial.um sitezinho qualquer/ «

    »  Videos: «
    »  https://www.youtube.com/channel/UClZymfW0ONxj89HusY75Znw/videos «
    »  

    «
  8. » PokeLute Official  «


    » Oque mudou do PokeLute? «

    » Base «

    » Pegamos a Base Antiga nossa, Limpamos os Erros ,Bug e Adicionamos Varios Sistemas,Pokemons. «
    » Lag «

    » O Lag foi removido, por conta de ser outra base, e tudo novo. «
    » Quests «

    »  mais de 40 quests. «
    » Torneio «

    » Temos sistemas de Torneio que acontecem as: 08:00, 10:00, 12:00, 14:00, 16:00, 18:00, 20:00 e 22:00 horas. «
    » EXP «

    »A EXP do servidor foi diminuida, assim, menos problemas com leveis e pokemons. «
    » Lendas «

    » Varios Lendas Adicionado no Mapa. «
    » Eventos «

    » Terão staffs proprios para tais eventos «

    » Catch
    » 65% Normal
    » 47% Shiny
    » 5% Ditto
    » 70% Lendário

    » Download

    Mediafire

    Mega

    Sendspace

    4shared

     

    » OBS:

    » Ao Baixar e  Instalar o Launcher , Execute como Administrador , Não Clique em Start Até Finalizar a Atualização Automatica , caso contrario poderá bugar. «

    » Site

    PokeLute Oficial

  9. » PokeLute Official Beta «


    » Oque mudou do PokeLute? «

     

    » Base «

    » Pegamos uma base zerada, e iremos adicionar tudo aos poucos, porem, ja tem a metade do servidor nela, e da pra jogar de boa. «
    » Lag «

    » O Lag foi removido, por conta de ser outra base, e tudo novo. «
    » Quests «

    » As quests vão ser adicionadas com o tempo, temos ate a B8 atualmente, quando ter mais, vou atualizar o topico. «
    » Torneio «

    » Temos sistemas de Torneio que acontecem as: 08:00, 10:00, 12:00, 14:00, 16:00, 18:00, 20:00 e 22:00 horas. «
    » EXP «

    »A EXP do servidor foi diminuida, assim, menos problemas com leveis e pokemons. «
    » Lendas «

    » Bem, os lendas estão mais hard de conseguir, porem, todos eles obtidos em quests. «
    » Eventos «

    » Terão staffs proprios para tais eventos «

     

    » Catch
    » 65% Normal
    » 47% Shiny
    » 14% Ditto
    » 4% Lendário

     

    » Prints «

    5488697631244e09af87693f0310c30b.png

     

    5aa8149153c0413eaf7765947b606b69.png

     

     

    » Download

    Mediafire

    Mega

    Sendspace

    4shared

     

    » Site

    PokeLute

  • Quem Está Navegando   0 membros estão online

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