Re: New Spells >> show them off here
Posted: Thu Jan 16, 2014 10:17 am
Since this thread seems to be active again and since I've taken quite a few spells for my dungeon I'll give back and post some of my spells
CHANCES SHIELD
Which calls on a SE called ChanceSpell containing
and the scroll
its a pretty basic idea rather than having to focus on a single magic type to get its shield spell you can cast this one and get a random shield type
CHANNEL MANA
This spell changes a portion of the parties health into energy, it can be a little OP if you include a healing spell, but the fact that any injured party member could be killed by this balances that I think. I was going to make this do damage based on skill but left it on a set amount, I've left in the bit for the damage but it would have to be changed to get it to work
CHANCES SHIELD
Code: Select all
defineSpell{
name = "Chance",
uiName = "Chance's Shield",
skill = "spellcraft",
level = 15,
runes = "ACGI",
manaCost = 20,
onCast = function(object)
ChanceSpell.Chance(object.level, object.x, object.y)
end,
}
Code: Select all
function Chance()
local chanceRoll = math.random(1,4)
if chanceRoll == (1) then
for i = 1,4 do
party:getChampion(i):setCondition("fire_shield", 60)
party:playScreenEffect("fireburst")
end
playSound("heal_party")
return true
else
if chanceRoll == (2) then
for i = 1,4 do
party:getChampion(i):setCondition("shock_shield", 60)
party:playScreenEffect("shockburst")
end
playSound("heal_party")
return true
else
if chanceRoll == (3) then
for i = 1,4 do
party:getChampion(i):setCondition("frost_shield", 60)
party:playScreenEffect("frostburst")
end
playSound("heal_party")
return true
else
if chanceRoll == (4) then
for i = 1,4 do
party:getChampion(i):setCondition("poison_shield", 60)
party:playScreenEffect("poison_bolt_screen")
end
playSound("heal_party")
return true
end
end
end
end end
Code: Select all
defineObject{
name = "scroll_chance",
class = "Item",
uiName = "Scroll of Chances Shield",
model = "assets/models/items/scroll_spell.fbx",
gfxIndex = 113,
scroll = true,
spell = "Chance",
weight = 0.3,
description="They say that luck is a part of skill, with this spell add a random shield effect to the caster, no longer do you need to focus on a single elemental school to gain its protection"
}
CHANNEL MANA
Code: Select all
defineSpell{
name = "manacharge",
uiName = "Mana Channel",
skill = "spellcraft",
level = 15,
runes = "AEI",
manaCost = 10,
onCast = function(caster, x, y, direction, skill)
local heal_amount = math.random(100,150)/1+skill
hudPrint(caster:getName() .. " Converted 40 health to " .. heal_amount .. " Energy")
for i=1,4 do
party:playScreenEffect("hit_blood")
playSound("blob_hit")
party:getChampion(i):modifyStat("energy", heal_amount)
party:getChampion(i):modifyStat("health", -40)
end
function D(caster, x, y, direction, skill)
local dmg_amount = math.random(- 30)/1+skill
for i=1,4 do
party:getChampion(i):modifyStat("health", dmg_amount)
end
end
end
}
Code: Select all
defineObject{
name = "scroll_Channel",
class = "Item",
uiName = "Scroll of Mana Channeling",
model = "assets/models/items/scroll_spell.fbx",
gfxIndex = 113,
scroll = true,
spell = "manacharge",
weight = 0.3,
description=" The vital forces of Life and mana are bound together. A master can transfer a portion between the two, losing life to gain mana"
}