• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Lua Script request

GOD Wille

Excellent OT User
Joined
Jan 11, 2010
Messages
2,826
Solutions
2
Reaction score
815
Location
Sweden
I need a script that:

When u say "utamo block" u block all types of dmg for 5 secounds
 
Last edited:
Code:
--[[
              
             *          *\ /*          *\  
      *_____* *________* *|* *________* *\_____*/
       ****** Mirror && Ultimate Shields ******/
        ** ** SP Edition by Cybermaster ** **/
                ******  * |  * ******/ 
                      *  *|*  */
                       **/ \**/
                        *****/                 
                          *
]]--

local energy = createConditionObject(CONDITION_ENERGY)
setConditionParam(energy, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(energy, 5, 2000, -10) 

local poison = createConditionObject(CONDITION_POISON)
setConditionParam(poison, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(poison, 5, 2000, -10)

local fire = createConditionObject(CONDITION_FIRE)
setConditionParam(fire, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(fire, 5, 2000, -10)

local freezing = createConditionObject(CONDITION_FREEZING)
setConditionParam(freezing, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(freezing, 5, 2000, -10)

local dazzled = createConditionObject(CONDITION_DAZZLED)
setConditionParam(dazzled, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(dazzled, 5, 2000, -10)

local cursed = createConditionObject(CONDITION_CURSED)
setConditionParam(cursed, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(cursed, 5, 2000, -10)

local mirrorCounterAttack = 'damage' --OPTIONS: 'condition'/'damage'/'both'
local e,d,k = { --combat type and distance shoot effect, and storages
        [COMBAT_ENERGYDAMAGE]   =   {35,energy  },
        [COMBAT_EARTHDAMAGE]    =   {29,poison  },
        [COMBAT_POISONDAMAGE]   =   {14,poison  },
        [COMBAT_FIREDAMAGE]     =   {3, fire    },
        [COMBAT_ICEDAMAGE]      =   {28,freezing},
        [COMBAT_HOLYDAMAGE]     =   {30,dazzled },
        [COMBAT_DEATHDAMAGE]    =   {31,cursed  }
        },
    1361, --druid
    1362  --kina 

function doKinaShield(p, effect)
    local pos = {   --do not modify
        {x=p.x+1,y=p.y,z=p.z  },
        {x=p.x+1,y=p.y+1,z=p.z},
        {x=p.x,y=p.y+1,z=p.z  },
        {x=p.x-1,y=p.y+1,z=p.z},
        {x=p.x-1,y=p.y,z=p.z  },
        {x=p.x-1,y=p.y-1,z=p.z},
        {x=p.x,y=p.y-1,z=p.z  },
        {x=p.x+1,y=p.y-1,z=p.z}
    }
    for i = 1, #pos do
        doSendDistanceShoot(p, pos[i], effect)
    end
end

function onStatsChange(cid, attacker, type, combat, value)
    if isDruid(cid) and isCreature(attacker) and e[combat] and getCreatureStorage(cid, d) > 0 then
        doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_RED)
        doCreatureSetStorage(cid, d, getCreatureStorage(cid, d)-1)       
        doSendDistanceShoot(getThingPos(cid), getThingPos(attacker), e[combat][1])
        doPlayerSendCancel(cid, 'Your mirror shield has '.. (getCreatureStorage(cid,d) > 0 and getCreatureStorage(cid,d) or 'no') ..' charges left.')
        if mirrorCounterAttack == 'condition' then
            doTargetCombatCondition(cid, attacker, e[combat][2], CONST_ME_MAGIC_RED)
        elseif mirrorCounterAttack == 'damage' then
            doTargetCombatHealth(cid, attacker, combat, -value, -value, CONST_ME_MAGIC_RED)
        elseif mirrorCounterAttack == 'both' then
            doTargetCombatCondition(cid, attacker, e[combat][2], CONST_ME_MAGIC_RED)
            doTargetCombatHealth(cid, attacker, combat, -value, -value, CONST_ME_MAGIC_RED)
        end
        return false
    elseif isKnight(cid) and isCreature(attacker) and e[combat] and getCreatureStorage(cid, k) > 0 then
        doKinaShield(getThingPos(cid), e[combat][1])
        doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_RED)
        doCreatureSetStorage(cid, k, getCreatureStorage(cid, k)-1)
        doPlayerSendCancel(cid, 'Your ultimate shield has '.. (getCreatureStorage(cid,k) > 0 and getCreatureStorage(cid,k) or 'no') ..' charges left.')
        return false
    end
    return true
end


Is it just to remove storages and have it as a spell script?
 
but how to fix when i say utamo block all spell dmgs blocks?

Btw the script UP, is that all spell dmg blocks?
 
Back
Top