Results 1 to 5 of 5

Thread: Help with exori actions

  1. #1
    Normal User
    Join Date
    May 2013
    Posts
    30
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Reputation
    9
    Rep Power
    0

    Help with exori actions

    Can someone help me correct the bug in this action? It doesn't seem to be casting exori, exori gran, and exori min and i'm not sure why.




    Code:
    -- [[ INIT START ]] --
        local CONFIG = {
            CREATURES = {"Vampire Bride", "Werewolf", "Hellspawn", "Vampire", "Mutated Bat", "Vampire Bride", "Priestess", "Banshee", "Nightmare", "Fury", "Dark Torturer", "Nightstalker", "Bonebeast", "Nightmare Scion", "Spectre", "Gargoyle", "Crypt Shambler", "Demon Skeleton", "Haunted Treeling", "Slime", "War wolf"},
            
            PLAYERS = {
                ENABLED = Player_Safe,
                DISTANCE = 7,
                FLOOR_DIFFERENCE = 1,
                SAFE_LIST = {"Bubble", "Eternal Oblivion"},
            },
            
            SPELLS = {
                --{NAME = "groundshaker", AMOUNT = 6},
                {NAME = "fierce berserk", AMOUNT = AmountToEGran},
                {NAME = "berserk", AMOUNT = AmountToExori},
                {NAME = "front sweep", AMOUNT = AmountToEMin},
                --{NAME = "annihilation", HP_PC = 45},
                --{NAME = "brutal strike", HP_PC = 10},
               --{NAME = "whirlwind throw", HP_PC = 10},
            },
        }
    
        -- [[ DO NOT CHANGE ANYTHING BELOW THIS LINE. ]] --
    
        SPELLS_CONFIG = SPELLS_CONFIG or {}
        LAST_FLOOR = LAST_FLOOR or Self.PositionZ()
        ATTACK_EXHAUST = ATTACK_EXHAUST or 0
        
        table.lower(CONFIG.CREATURES)
        
        local RESET_SPELLS_CONFIG = #CONFIG.SPELLS ~= #SPELLS_CONFIG
        
        if (not RESET_SPELLS_CONFIG) then
            for INDEX, SPELL_ENTRY in ipairs(CONFIG.SPELLS) do
                if (SPELL_ENTRY.NAME ~= SPELLS_CONFIG[INDEX].NAME or ((SPELL_ENTRY.AMOUNT and SPELL_ENTRY.AMOUNT ~= SPELLS_CONFIG[INDEX].AMOUNT) or (SPELL_ENTRY.HP_PC and SPELL_ENTRY.HP_PC ~= SPELLS_CONFIG[INDEX].HP_PC))) then
                    RESET_SPELLS_CONFIG = true
                    break
                end
            end
        end
        
        if (RESET_SPELLS_CONFIG) then
            SPELLS_CONFIG = {}
            
            local CURRENT_INDEX = 1
            
            while (#CONFIG.SPELLS >= CURRENT_INDEX) do
                CONFIG.SPELLS[CURRENT_INDEX].INFO = Spell.GetByWordsOrName(CONFIG.SPELLS[CURRENT_INDEX].NAME)
                
                if (not CONFIG.SPELLS[CURRENT_INDEX].INFO:isValid()) then
                    table.remove(CONFIG.SPELLS, CURRENT_INDEX)
                else
                    if (#CONFIG.SPELLS[CURRENT_INDEX].INFO:Condition() > 0 and table.find({"BIG_BEAM", "BIG_WAVE", "FRONT", "SMALL_BEAM", "SMALL_WAVE", "STRIKE"}, CONFIG.SPELLS[CURRENT_INDEX].INFO:Condition())) then
                        CONFIG.SPELLS[CURRENT_INDEX].NEED_DIRECTION = true
                    else
                        CONFIG.SPELLS[CURRENT_INDEX].NEED_DIRECTION = false
                    end
                    
                    CURRENT_INDEX = CURRENT_INDEX + 1
                end
            end
        end
    -- [[ INIT END ]] --
    
    if (Self.PositionZ() ~= LAST_FLOOR) then
        LAST_FLOOR, ATTACK_EXHAUST = Self.PositionZ(), System.TimeMilliseconds() + 2000
        return
    end
    
    if (System.TimeMilliseconds() > ATTACK_EXHAUST) then
        for _, SPELL_ENTRY in ipairs(CONFIG.SPELLS) do
            if (SPELL_ENTRY.INFO:isAbleToCast(nil, false)) then
                local ATTACKED = Creature.GetAttacked()
                
                if (SPELL_ENTRY.AMOUNT and (not CONFIG.PLAYERS.ENABLED or Self.PlayersAroundFloorIgnore(CONFIG.PLAYERS.DISTANCE, CONFIG.PLAYERS.FLOOR_DIFFERENCE, unpack(CONFIG.PLAYERS.SAFE_LIST)) == 0)) then
                    local HIGHEST_AMOUNT, BEST_DIRECTION = 0, Self.LookDirection()
                                
                    if (SPELL_ENTRY.NEED_DIRECTION) then
                        for DIRECTION, CREATURES_AMOUNT in pairs({[DIRECTION_NORTH] = 0, [DIRECTION_EAST] = 0, [DIRECTION_SOUTH] = 0, [DIRECTION_WEST] = 0}) do
                            CREATURES_AMOUNT = Self.MonstersAroundSpell(SPELL_ENTRY.INFO:Condition(), DIRECTION, unpack(CONFIG.CREATURES))
                            
                            if (CREATURES_AMOUNT > HIGHEST_AMOUNT or (CREATURES_AMOUNT >= HIGHEST_AMOUNT and DIRECTION == Self.LookDirection())) then
                                HIGHEST_AMOUNT, BEST_DIRECTION = CREATURES_AMOUNT, DIRECTION
                            end
                        end
                    else
                        HIGHEST_AMOUNT, BEST_DIRECTION = Self.MonstersAroundSpell(SPELL_ENTRY.INFO:Condition(), Self.LookDirection(), unpack(CONFIG.CREATURES)), Self.LookDirection()
                    end
                    
                    if (HIGHEST_AMOUNT >= SPELL_ENTRY.AMOUNT) then
                        while (Self.LookDirection() ~= BEST_DIRECTION) do
                            Self.Turn(BEST_DIRECTION)
                            System.Wait(25, 75)
                        end
                        
                        if (SPELL_ENTRY.INFO:CastSpell()) then
                            System.Wait(Self.CoolDown(SPELL_GROUP_ATTACK))
                        end
                    end
                elseif (SPELL_ENTRY.HP_PC and SPELL_ENTRY.INFO:isAbleToCast(ATTACKED, false) and table.find(CONFIG.CREATURES, ATTACKED:Name():lower()) and SPELL_ENTRY.HP_PC >= ATTACKED:HealthPercent()) then
                    if (SPELL_ENTRY.INFO:CastSpell(ATTACKED)) then
                        System.Wait(Self.CoolDown(SPELL_GROUP_ATTACK))
                    end
                end
            end
        end
    end

  2. #2
    Normal User
    Join Date
    Sep 2012
    Posts
    66
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Reputation
    43
    Rep Power
    5
    What are the values of the variables AmountToEGran, AmountToExori, AmountToEMin in the setup?

  3. #3
    Normal User Onehit's Avatar
    Join Date
    Mar 2012
    Location
    Cwb
    Posts
    693
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    1 Post(s)
    Reputation
    117
    Rep Power
    7
    Quote Originally Posted by Balkarynd View Post
    What are the values of the variables AmountToEGran, AmountToExori, AmountToEMin in the setup?
    Number of monster to cast the following spell.

    NÃO RESPONDO DUVIDAS POR PM
    Brasil, aqui você é o palhaço.

  4. #4
    Moderator Drakke's Avatar
    Join Date
    Jun 2012
    Location
    Sweden
    Posts
    1,898
    Mentioned
    216 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    390 Post(s)
    Reputation
    366
    Rep Power
    10
    Post your debug aswell

  5. #5
    Normal User
    Join Date
    Sep 2012
    Posts
    66
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Reputation
    43
    Rep Power
    5
    Quote Originally Posted by Onehit View Post
    Number of monster to cast the following spell.
    I know... I asked him the number he put on the setup.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •