This seems to work when the Drops are different types of spells; when they’re the same, the action is allowing the noun and the second noun to be the same object. For example, if there is one Blizzard Drop in the room, it casts itself, changes to a Blizzara Drop and then disappears to nowhere. Any help is very appreciated.
[code]The Testing Room is a room.
Magic is a kind of thing.
Element is a kind of value.
The elements are Ice, Flame, and Electricity.
A magic has an element.
A Drop is a kind of magic.
A spellname is a kind of value.
A Drop has a spellname.
Before printing the name of a Drop: say "[spellname] ".
Before printing the plural name of a Drop: say "[spellname] ".
Understand the spellname property as describing a Drop.
Understand “cast [thing] at [thing]” as combining. Combining is an action applying to two things. Check combining: if the noun is not a drop, say “You can only cast spells.” instead.
Carry out combining:
repeat through the Table of Second Level Spells:
if the noun is the first spell entry:
if the second noun is the second spell entry:
now the spellname of the second noun is the resulting spell entry;
say “The drops combine into a [spellname of the second noun] Drop.”;
now the noun is nowhere;
rule succeeds;
say “You can’t combine those drops!”;
stop the action.
Blizzard, Blizzara, Blizzaga, and Blizzaja are spell names.
In the Testing Room are 2 Blizzard Drops.
Table of Second Level Spells
first spell second spell element resulting spell
Blizzard Blizzard Ice Blizzara[/code]