• 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 Warning spell

nefinoo

Carnage.flv
Joined
Sep 11, 2010
Messages
549
Solutions
1
Reaction score
58
Location
Lo Mochis, Sinaloa
How can I make a spell throw a warning (tutorial square) and after 3 seconds throw the damage spell, if possible, would you put an example of the script?
 
Lua:
onCast(blah, blah)
    dosend animated square
    addEvent(oncombat1, 3000, blah, blah)
    return true
end
 
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_SMALLPLANTS)
combat:setArea(createCombatArea(AREA_BEAM8))

function onGetFormulaValues(player, level, magicLevel)
    local min = 0
    local max = 0
    return -min, -max
end

combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

local combat1 = Combat()
combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_SMALLPLANTS)
combat:setArea(createCombatArea(AREA_BEAM8))

function onGetFormulaValues(player, level, magicLevel)
    local min = 800
    local max = 1200
    return -min, -max
end

combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(creature, variant)
    addEvent(oncombat, creature, variant)
    addEvent(oncombat1, 3000, creature, variant)
    return true
end
Lua:
onCast(blah, blah)
    dosend animated square
    addEvent(oncombat1, 3000, blah, blah)
    return true
end

I am doing it right? xD i am not good with spells
 
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_SMALLPLANTS)
combat:setArea(createCombatArea(AREA_BEAM8))

function onGetFormulaValues(player, level, magicLevel)
    local min = 0
    local max = 0
    return -min, -max
end

combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

local combat1 = Combat()
combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_SMALLPLANTS)
combat:setArea(createCombatArea(AREA_BEAM8))

function onGetFormulaValues(player, level, magicLevel)
    local min = 800
    local max = 1200
    return -min, -max
end

combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(creature, variant)
    addEvent(oncombat, creature, variant)
    addEvent(oncombat1, 3000, creature, variant)
    return true
end


I am doing it right? xD i am not good with spells
I suck at them too, but try this. lol

Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_SMALLPLANTS)
combat:setArea(createCombatArea(AREA_BEAM8))

function onGetFormulaValues(player, level, magicLevel)
    local min = 0
    local max = 0
    return -min, -max
end

combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

local combat1 = Combat()
combat1:setParameter(COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
combat1:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_SMALLPLANTS)
combat1:setArea(createCombatArea(AREA_BEAM8))

function onGetFormulaValues(player, level, magicLevel)
    local min = 800
    local max = 1200
    return -min, -max
end

combat1:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(creature, variant)
    addEvent(combat, 0, creature, variant)
    addEvent(combat1, 3000, creature, variant)
    return true
end
 
Lua:
local function attack(playerId, creatureId, targetPos)
    local player = Player(playerId)
    local target = Creature(creatureId)
    if player and target then
        if target:getPosition() == targetPos then
            target:addHealth(-(target:getMaxHealth()))
        end
    end
    return true
end

function onCastSpell(creature, var)
    creature:getTarget():getPosition():sendMagicEffect(CONST_ME_TUTORIALARROW)
    return addEvent(attack, 3000, creature:getId(), creature:getTarget():getId(), creature:getTarget():getPosition())
end

Just an example, you can edit to attack everything on that tile.
 
Last edited:
Lua:
local function attack(playerId, creatureId, targetPos)
    local player = Player(playerId)
    local target = Creature(creatureId)
    if player and target then
        if target:getPosition() == targetPos then
            target:addHealth(-(target:getMaxHealth()))
        end
    end
    return true
end

function onCastSpell(creature, var)
    creature:getTarget():getPosition():sendMagicEffect(CONST_ME_TUTORIALARROW)
    return addEvent(attack, 3000, creature:getId(), creature:getTarget():getId(), creature:getTarget():getPosition())
end

Just an example, you can edit to attack everything on that tile.
Thanks thats work for a single target, but i am looking to create a animated spells but with warning tutorialsquares before the damage spell cast, and i dont know how make attack with elementals damage
 
Back
Top