Hold it in a hand, right-click it, the spell is cast, the scroll disappears, only mages should be able to use them.
I was surprised how easily this is done. For Fireball, simply copy this in to items.lua:
Code: Select all
cloneObject {
baseObject = "scroll_fireball",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 1,
}I've searched this board for "useable spell scrolls" "consumable spell scrolls" and got ready to find somerhing really complicated, but I didn't find anything, so I've tried this. IMHO, it should be in the main game like this, or am I missing somehting?
Here is a .lua file with all spell scrolls replaced + the missing enchant arrow spell scrolls. Seems to work fine:
Code: Select all
-- usable_spell_scrolls.lua v1.2 by Roman Adler
cloneObject {
baseObject = "scroll_light",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 1,
}
cloneObject {
baseObject = "scroll_darkness",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 1,
}
cloneObject {
baseObject = "scroll_fireburst",
attackMethod = "castWandSpell",
wandPower = 15,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 1,
}
cloneObject {
baseObject = "scroll_enchant_fire_arrow",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 2,
}
cloneObject {
baseObject = "scroll_fireball",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 3,
}
cloneObject {
baseObject = "scroll_fire_shield",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 4,
}
cloneObject {
baseObject = "scroll_poison_cloud",
attackMethod = "castWandSpell",
wandPower = 15,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 1,
}
cloneObject {
baseObject = "scroll_poison_bolt",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 3,
}
cloneObject {
baseObject = "scroll_poison_shield",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 4,
}
cloneObject {
baseObject = "scroll_ice_shards",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 1,
}
cloneObject {
baseObject = "scroll_frostbolt",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 3,
}
cloneObject {
baseObject = "scroll_frost_shield",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 4,
}
cloneObject {
baseObject = "scroll_shock",
attackMethod = "castWandSpell",
wandPower = 15,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 1,
}
cloneObject {
baseObject = "scroll_lightning_bolt",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 3,
}
cloneObject {
baseObject = "scroll_shock_shield",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 4,
}
cloneObject {
baseObject = "scroll_invisibility",
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 4,
}
defineObject{
name = "scroll_enchant_poison_arrow",
class = "Item",
uiName = "Scroll of Enchant Poison Arrow",
model = "assets/models/items/scroll_spell.fbx",
gfxIndex = 113,
scroll = true,
spell = "enchant_poison_arrow",
weight = 0.3,
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 2,
}
defineObject{
name = "scroll_enchant_frost_arrow",
class = "Item",
uiName = "Scroll of Enchant Frost Arrow",
model = "assets/models/items/scroll_spell.fbx",
gfxIndex = 113,
scroll = true,
spell = "enchant_frost_arrow",
weight = 0.3,
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 2,
}
defineObject{
name = "scroll_enchant_shock_arrow",
class = "Item",
uiName = "Scroll of Enchant Shock Arrow",
model = "assets/models/items/scroll_spell.fbx",
gfxIndex = 113,
scroll = true,
spell = "enchant_shock_arrow",
weight = 0.3,
attackMethod = "castWandSpell",
wandPower = 25,
coolDownTime = 5,
charges = 1,
skill = "spellcraft",
requiredLevel = 2,
}
v1.1 changed the required skill level for higher spells.
v1.2 changed damagelevel of lower spells