@@ -0,0 +1,980 @@
+package com.elmakers.mine.bukkit.action.builtin;%0A%0Aimport org.bukkit.configuration.ConfigurationSection;%0A%0Aimport com.elmakers.mine.bukkit.action.BaseSpellAction;%0Aimport com.elmakers.mine.bukkit.api.action.CastContext;%0Aimport com.elmakers.mine.bukkit.api.spell.SpellResult;%0A%0Apublic class CastResultAction extends BaseSpellAction %7B%0A    private SpellResult result = SpellResult.CANCELLED;%0A%0A    @Override%0A    public void prepare(CastContext context, ConfigurationSection configuration) %7B%0A        String spellResultString = configuration.getString(%22result%22);%0A        if (spellResultString != null && !spellResultString.isEmpty()) %7B%0A            try %7B%0A                result = SpellResult.valueOf(spellResultString.toUpperCase());%0A            %7D catch (Exception ex) %7B%0A                context.getLogger().warning(%22Invalid cast result: %22 + spellResultString);%0A            %7D%0A        %7D%0A    %7D%0A%0A    @Override%0A    public SpellResult perform(CastContext context) %7B%0A        return result;%0A    %7D%0A%7D%0A

Add CastResultAction for debugging specific cast results