How to use the invocations.TargetAllyWithoutEnchantment function in invocations

To help you get started, we’ve selected a few invocations examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github jwvhewitt / dmeternal / spells / priestspells.py View on Github external
# CIRCLE FIVE

SMITE = Spell( "Smite",
    "A bolt of lightning will unerringly strike all targets in a 2 tile radius for 3d10 damage.",
    effects.HealthDamage( (3,10,0), stat_bonus=stats.INTELLIGENCE, element=stats.RESIST_LIGHTNING, anim=animobs.BlueZap ),
    rank=5, gems={AIR:3,SOLAR:1}, com_tar=targetarea.Blast(radius=2), shot_anim=animobs.Lightning, 
    ai_tar=invocations.TargetEnemy(min_distance=3) )

SPELL_SHIELD = Spell( "Spell Shield",
    "All allies within 6 tiles get +25% aura until the end of combat.",
    effects.TargetIsAlly( on_true = (
        effects.Enchant( enchantments.SpellShieldEn, anim=animobs.YellowSparkle ),
    )),
    rank=5, gems={SOLAR:1,WATER:1}, com_tar=targetarea.SelfCentered(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.SpellShieldEn) )


# CIRCLE SIX

JUSTICE = Spell( "Justice",
    "Calls down divine judgment on all targets within 6 tiles. The good will be healed and blessed, the evil will be punished.",
    effects.TargetIsAlly( on_true = (
        effects.Enchant( enchantments.BlessingEn, anim=animobs.YellowSparkle ),
        effects.TargetIsDamaged( on_true= (
            effects.HealthRestore( dice=(3,12,0) ),
        ))
    ), on_false=(
        effects.TargetIsEnemy( on_true = (
            effects.HealthDamage( (3,12,0), stat_bonus=stats.INTELLIGENCE, element=stats.RESIST_SOLAR, anim=animobs.Pearl ),
        )),
    ) ), rank=6, gems={AIR:1,SOLAR:2}, com_tar=targetarea.SelfCentered(), mpfudge=3 )
github jwvhewitt / dmeternal / spells / earthspells.py View on Github external
"This spell will call forth the living spirit of the mountains to fight alongside you.",
    effects.CallMonster( {context.DES_EARTH: True, context.SUMMON_ELEMENTAL: True }, 12, anim=animobs.OrangeSparkle ),
    rank=6, gems={EARTH:3}, com_tar=targetarea.SingleTarget(reach=5), ai_tar=invocations.TargetEmptySpot(), mpfudge = 12 )


# CIRCLE 7

    # Wall of Iron

# CIRCLE 8

IRON_SKIN = Spell( "Iron Skin",
    "Transforms a single ally, providing +10% to defense and aura plus 75% resistance to slashing, crushing, and piercing damage.",
    effects.Enchant( enchantments.IronSkinEn, anim=animobs.OrangeSparkle ),
    rank=8, gems={EARTH:4}, com_tar=targetarea.SingleTarget(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.IronSkinEn), mpfudge=-2 )


# CIRCLE 9

EARTHQUAKE = Spell( "Earthquake",
    "The land itself will attack your foes. Tremors do 12d6 crushing damage to all enemies within 8 tiles.",
    effects.TargetIsEnemy( anim=animobs.EarthBoom, on_true = (
        effects.OpposedRoll( def_stat=stats.REFLEXES, on_success = (
            effects.HealthDamage( (12,6,0), stat_bonus=stats.INTELLIGENCE, element=stats.RESIST_CRUSHING, anim=animobs.RedBoom )
        ,), on_failure = (
            effects.HealthDamage( (3,12,0), stat_bonus=None, element=stats.RESIST_CRUSHING, anim=animobs.RedBoom )
        ,) )
    ,) ), rank=9, gems={EARTH:5}, com_tar=targetarea.SelfCentered(radius=8,delay_from=-1,exclude_middle=True),
    ai_tar=invocations.TargetEnemy() )
github jwvhewitt / dmeternal / spells / necrospells.py View on Github external
rank=3, gems={LUNAR:1,WATER:1}, com_tar=targetarea.SelfCentered(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.ProtectFromGoodEn) )


# CIRCLE FOUR

RAISE_UNDEAD = Spell( "Raise Undead",
    "You conjure dark forces to animate an undead creature which will fight on your behaf.",
    effects.CallMonster( {context.MTY_UNDEAD: True, context.DES_LUNAR: context.MAYBE, context.GEN_UNDEAD: context.MAYBE}, 8, anim=animobs.PurpleSparkle ),
    rank=4, gems={EARTH:1,LUNAR:2}, com_tar=targetarea.SingleTarget(reach=2), ai_tar=invocations.TargetEmptySpot(), mpfudge=6 )

ICE_WEAPON = Spell( "Icy Weapon",
    "One ally's weapon will glow with magical cold, causing an extra 1-10 points of damge per hit and potentially freezing enemies solid. This effect lasts until the end of combat.",
    effects.Enchant( enchantments.FrostWepEn, anim=animobs.PurpleSparkle ),
    rank=4, gems={LUNAR:1,WATER:1}, com_tar=targetarea.SinglePartyMember(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.FrostWepEn) )

    # Miasma (EW)


# CIRCLE FIVE

    # Deadly Fog (EL)
    # Control Undead (LW)

# CIRCLE SIX

RAISE_SPIRIT = Spell( "Raise Spirit",
    "You conjure dark forces to animate and command a powerful undead creature which will fight on your behaf.",
    effects.CallMonster( {context.MTY_UNDEAD: True, context.DES_LUNAR: context.MAYBE, context.GEN_UNDEAD: context.MAYBE}, 12, anim=animobs.PurpleSparkle ),
    rank=6, gems={EARTH:2,LUNAR:2}, com_tar=targetarea.SingleTarget(reach=2), ai_tar=invocations.TargetEmptySpot(), mpfudge=8 )
github jwvhewitt / dmeternal / spells / druidspells.py View on Github external
# Tame Animal (FS)
    # Wolf Form (EF)

# CIRCLE THREE

CALL_CREATURE = Spell( "Call Creature",
    "This spell will summon a large natural creature to fight on your behaf.",
    effects.CallMonster( {context.MTY_CREATURE: True, context.DES_EARTH: context.MAYBE, context.GEN_NATURE: context.MAYBE, context.DES_SOLAR: context.MAYBE}, 6, anim=animobs.OrangeSparkle ),
    rank=3, gems={EARTH:2,SOLAR:1}, com_tar=targetarea.SingleTarget(reach=2), ai_tar=invocations.TargetEmptySpot(), mpfudge = 6 )

SLIMY_WEAPON = Spell( "Slimy Weapon",
    "One ally's weapon will be coated in caustic slime which causes an extra 1d10 acid damage and may corrode an opponent's armor.",
    effects.Enchant( enchantments.AcidWepEn, anim=animobs.OrangeSparkle ),
    rank=3, gems={EARTH:1}, com_tar=targetarea.SingleTarget(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.AcidWepEn) )

    # Firebird (FS)

# CIRCLE FOUR

CALL_BEAST = Spell( "Call Beast",
    "This spell will summon a powerful creature to fight on your behaf.",
    effects.CallMonster( {context.MTY_CREATURE: True, context.DES_EARTH: context.MAYBE, context.GEN_NATURE: context.MAYBE, context.DES_SOLAR: context.MAYBE}, 8, anim=animobs.OrangeSparkle ),
    rank=4, gems={EARTH:2,SOLAR:1}, com_tar=targetarea.SingleTarget(reach=2), ai_tar=invocations.TargetEmptySpot(), mpfudge = 9 )

    # Tame Plants (FS)
    # Web (EF)

# CIRCLE FIVE

CALL_MONSTER = Spell( "Call Monster",
github jwvhewitt / dmeternal / spells / earthspells.py View on Github external
"This attack does 2d5 acid damage to a single target, and may corrode the target's armor.",
    effects.OpposedRoll( on_success = (
        effects.HealthDamage( (2,5,0), stat_bonus=stats.INTELLIGENCE, element=stats.RESIST_ACID, anim=animobs.GreenExplosion ),
        effects.OpposedRoll( def_stat=stats.TOUGHNESS, on_success = (
            effects.Enchant( enchantments.ArmorDamage, anim=animobs.OrangeSparkle )
        ,))
    ), on_failure = (
        effects.HealthDamage( (1,5,0), stat_bonus=None, element=stats.RESIST_ACID, anim=animobs.GreenExplosion )
    ,) ), rank=2, gems={EARTH:1}, com_tar=targetarea.SingleTarget(), shot_anim=animobs.GreenSpray,
    ai_tar=invocations.TargetEnemy() )

BEASTLY_MIGHT = Spell( "Beastly Might",
    "Imbues a single ally with supernatural strength, giving +4 strength, +4 toughness, and +5% to attack.",
    effects.Enchant( enchantments.BeastlyMightEn, anim=animobs.OrangeSparkle ),
    rank=2, gems={EARTH:1}, com_tar=targetarea.SingleTarget(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.BeastlyMightEn) )


# CIRCLE 3

SHAPE_FLESH = Spell( "Shape Flesh",
    "By touching a living creature, you may reshape its flesh so as to either cause or cure 3-18 damage.",
    effects.TargetIs( effects.ALIVE, on_true= (
        effects.TargetIsAlly( on_true=(
            effects.HealthRestore( dice=(3,6,0) ), ),),
        effects.TargetIsEnemy( on_true=(
            effects.HealthDamage( (3,6,0), stat_bonus=None, element=stats.RESIST_ATOMIC, anim=animobs.RedBoom )
        ,))
    ), on_false = (
        effects.NoEffect( anim=animobs.SmallBoom ),
    )),
    rank=3, gems={EARTH:2}, com_tar=targetarea.SingleTarget(reach=1),
github jwvhewitt / dmeternal / spells / firespells.py View on Github external
# CIRCLE ONE

FIRE_BOLT = Spell( "Fire Bolt",
    "This attack does 1d8 fire damage to a single target.",
    effects.OpposedRoll( att_modifier=10, on_success = (
        effects.HealthDamage( (1,8,0), stat_bonus=stats.INTELLIGENCE, element=stats.RESIST_FIRE, anim=animobs.OrangeExplosion )
    ,), on_failure = (
        effects.HealthDamage( (1,8,0), stat_bonus=None, element=stats.RESIST_FIRE, anim=animobs.OrangeExplosion )
    ,) ), rank=1, gems={FIRE:1}, com_tar=targetarea.SingleTarget(),
    shot_anim=animobs.FireBolt, ai_tar=invocations.TargetEnemy() )

BURNING_WEAPON = Spell( "Burning Weapon",
    "Magical flames burst from an ally's weapon, causing an extra 1-6 points of damge per hit. This effect lasts until the end of combat.",
    effects.Enchant( enchantments.FireWepEn, anim=animobs.RedSparkle ),
    rank=1, gems={FIRE:1}, com_tar=targetarea.SinglePartyMember(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.FireWepEn) )

# CIRCLE 2

BLINDING_FLASH = Spell( "Blinding Flash",
    "A sudden flash of light will daze, and possibly stun, all enemies within 4 tiles.",
    effects.TargetIsEnemy( on_true = (
        effects.Enchant( enchantments.BlindedEn, anim=animobs.RedSparkle ),
        effects.OpposedRoll( att_modifier=-20, on_success = (
            effects.Paralyze( max_duration = 2 )
        ,) )
    ) ), rank=2, gems={FIRE:2}, com_tar=targetarea.SelfCentered(radius=4), ai_tar=invocations.TargetEnemy() )

IGNITE = Spell( "Ignite",
    "You touch one opponent, causing them to burst into flame. The target suffers 2d5 fire damage and may continue burning.",
    effects.OpposedRoll( on_success = (
        effects.HealthDamage( (2,5,0), stat_bonus=stats.INTELLIGENCE, element=stats.RESIST_FIRE, anim=animobs.Ignite ),
github jwvhewitt / dmeternal / spells / waterspells.py View on Github external
"Infuses a single ally will life energy, allowing them to regenerate 1d6 health per turn.",
    effects.Enchant( enchantments.RegeneratEn, anim=animobs.GreenSparkle, children=(
        effects.HealthRestore( dice=(1,6,0) )
    ,) ),
    rank=3, gems={WATER:2}, com_tar=targetarea.SingleTarget(), exp_tar=targetarea.SinglePartyMember(),
    ai_tar=invocations.TargetWoundedAlly() )

# CIRCLE FOUR

RESIST_ELEMENTS = Spell( "Resist Elements",
    "All allies within 6 tiles get 50% resistance to wind, water, and poison damage for the duration of combat.",
    effects.TargetIsAlly( on_true = (
        effects.Enchant( enchantments.ResistElementsEn, anim=animobs.GreenSparkle ),
    )),
    rank=4, gems={WATER:2}, com_tar=targetarea.SelfCentered(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.ResistElementsEn) )

# CIRCLE FIVE

HEALING_MISTS = Spell( "Healing Mists",
    "The party is bathed in beneficial vapors, allowing all allies to regenerate their wounds.",
    effects.TargetIsAlly( on_true = (
        effects.Enchant( enchantments.RegeneratEn, anim=animobs.GreenSparkle ),
    )),
    rank=5, gems={WATER:3}, com_tar=targetarea.SelfCentered(), exp_tar=targetarea.AllPartyMembers(),
    ai_tar=invocations.TargetWoundedAlly() )


# CIRCLE SIX

TSUNAMI = Spell( "Tsunami",
    "Conjures a tidal wave which strikes foes for 5d10 water damage.",
github jwvhewitt / dmeternal / spells / earthspells.py View on Github external
POISON_WEAPON = Spell( "Poison Weapon",
    "Enhances one ally's weapon with poison, causing an extra 2d6 damage at first and potentially more damage later.",
    effects.Enchant( enchantments.PoisonWepEn, anim=animobs.OrangeSparkle ),
    rank=5, gems={EARTH:2}, com_tar=targetarea.SingleTarget(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.PoisonWepEn), mpfudge=-2 )

    # Wall of Stone

# CIRCLE 6

STONE_SKIN = Spell( "Stone Skin",
    "Transforms a single ally, providing +10% to defense and aura plus 50% resistance to slashing, crushing, and piercing damage.",
    effects.Enchant( enchantments.StoneSkinEn, anim=animobs.OrangeSparkle ),
    rank=6, gems={EARTH:3}, com_tar=targetarea.SingleTarget(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.StoneSkinEn), mpfudge=-2 )

CALL_EARTH_ELEMENTAL = Spell( "Call Earth Elemental",
    "This spell will call forth the living spirit of the mountains to fight alongside you.",
    effects.CallMonster( {context.DES_EARTH: True, context.SUMMON_ELEMENTAL: True }, 12, anim=animobs.OrangeSparkle ),
    rank=6, gems={EARTH:3}, com_tar=targetarea.SingleTarget(reach=5), ai_tar=invocations.TargetEmptySpot(), mpfudge = 12 )


# CIRCLE 7

    # Wall of Iron

# CIRCLE 8

IRON_SKIN = Spell( "Iron Skin",
    "Transforms a single ally, providing +10% to defense and aura plus 75% resistance to slashing, crushing, and piercing damage.",
    effects.Enchant( enchantments.IronSkinEn, anim=animobs.OrangeSparkle ),
github jwvhewitt / dmeternal / spells / necrospells.py View on Github external
ACID_CLOUD = Spell( "Acid Cloud",
    "Calls forth billowing clouds of acid which do 2d6 damage to all targets within 3 tiles.",
    effects.OpposedRoll( on_success = (
        effects.HealthDamage( (2,6,0), stat_bonus=stats.INTELLIGENCE, element=stats.RESIST_ACID, anim=animobs.GreenCloud )
    ,), on_failure = (
        effects.HealthDamage( (1,6,0), stat_bonus=None, element=stats.RESIST_ACID, anim=animobs.GreenCloud )
    ,) ), rank=3, gems={EARTH:1,LUNAR:1}, com_tar=targetarea.Blast(radius=3), shot_anim=animobs.GreenComet, 
    ai_tar=invocations.TargetEnemy(min_distance=4) )

PROTECT_FROM_GOOD = Spell( "Protection from Good",
    "All allies within 6 tiles get +10% defense, +10% aura, and 50% resistance to holy damage for the duration of combat.",
    effects.TargetIsAlly( on_true = (
        effects.Enchant( enchantments.ProtectFromGoodEn, anim=animobs.PurpleSparkle ),
    )),
    rank=3, gems={LUNAR:1,WATER:1}, com_tar=targetarea.SelfCentered(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.ProtectFromGoodEn) )


# CIRCLE FOUR

RAISE_UNDEAD = Spell( "Raise Undead",
    "You conjure dark forces to animate an undead creature which will fight on your behaf.",
    effects.CallMonster( {context.MTY_UNDEAD: True, context.DES_LUNAR: context.MAYBE, context.GEN_UNDEAD: context.MAYBE}, 8, anim=animobs.PurpleSparkle ),
    rank=4, gems={EARTH:1,LUNAR:2}, com_tar=targetarea.SingleTarget(reach=2), ai_tar=invocations.TargetEmptySpot(), mpfudge=6 )

ICE_WEAPON = Spell( "Icy Weapon",
    "One ally's weapon will glow with magical cold, causing an extra 1-10 points of damge per hit and potentially freezing enemies solid. This effect lasts until the end of combat.",
    effects.Enchant( enchantments.FrostWepEn, anim=animobs.PurpleSparkle ),
    rank=4, gems={LUNAR:1,WATER:1}, com_tar=targetarea.SinglePartyMember(),
    ai_tar=invocations.TargetAllyWithoutEnchantment(enchantments.FrostWepEn) )

    # Miasma (EW)