1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-01-26 03:52:01 +02:00

Moved some creatures abilities to cr_abils.txt.

This commit is contained in:
Frank Zago 2009-07-07 04:12:41 +00:00
parent df1e3bf7bd
commit 83791aa3e1
2 changed files with 114 additions and 118 deletions

View File

@ -4,10 +4,118 @@
// or: - [CREATURE_ID] [ABILITY] /*removing ability*/
// or: 0 /*end of ability descriptions*/
1
+ 115 DOUBLE_WIDE 0 0 0 //water elemental should be treated as double-wide
+ 123 DOUBLE_WIDE 0 0 0 //ice elemental should be treated as double-wide
+ 140 DOUBLE_WIDE 0 0 0 //boar should be treated as double-wide
+ 142 DOUBLE_WIDE 0 0 0 //nomads should be treated as double-wide
- 46 FLYING //hell hound doesn't fly
- 47 FLYING //cerberus doesn't fly
+ 0 CHARGE_IMMUNITY 0 0 0 //pikeman immunity to Champion charge bonus
+ 1 CHARGE_IMMUNITY 0 0 0 //halberdier immunity to Champion charge bonus
+ 4 ADDITIONAL_RETALIATION 1 0 0 //griffins retaliate twice
+ 5 UNLIMITED_RETALIATIONS 0 0 0 //royal griffins retaliate always
+ 12 HATE 0 54 0 //angels hate devils
+ 12 HATE 0 55 0 //angels hate archdevils
+ 13 HATE 0 54 0 //archangels hate devils
+ 13 HATE 0 55 0 //archangels hate arch
+ 13 SPELLCASTER 0 38 0 //archangels cast resurrection
+ 16 MAGIC_RESISTANCE 20 0 0 //dwarf's magic resistance 20%
+ 17 MAGIC_RESISTANCE 40 0 0 //battle dwarf's magic resistance 40%
+ 20 CHANGES_SPELL_COST_FOR_ENEMY 2 0 0 //pegasus makes spell cost higher for enemy mage
+ 21 CHANGES_SPELL_COST_FOR_ENEMY 2 0 0 //silver pegasus makes spell cost higher for enemy mage
+ 22 SPELL_AFTER_ATTACK 0 72 100 //dendroids cast bind
+ 23 SPELL_AFTER_ATTACK 0 72 100 //dendroid guards cast bind
+ 24 SPELL_AFTER_ATTACK 0 62 100 //unicorns cast blind with 20% probability
+ 24 SPELL_RESISTANCE_AURA 0 55 0 //unicorn
+ 25 SPELL_AFTER_ATTACK 0 62 100 //war unicorns cast blind with 20% probability
+ 25 SPELL_RESISTANCE_AURA 0 55 0 //war unicorn
+ 26 LEVEL_SPELL_IMMUNITY 3 0 0 //green dragon's spell immunity
+ 26 TWO_HEX_ATTACK_BREATH 0 0 0 //green dragon's breath
+ 27 LEVEL_SPELL_IMMUNITY 4 0 0 //gold dragon's spell immunity
+ 27 TWO_HEX_ATTACK_BREATH 0 0 0 //gold dragon's breath
+ 30 NON_LIVING 0 0 0 //stone gargoyles are non-living
+ 31 NON_LIVING 0 0 0 //obsidian gargoyles are non-living
+ 32 NON_LIVING 0 0 0 //stone golems are non-living
+ 32 SPELL_DAMAGE_REDUCTION 50 -1 0 //stone golems reduce dmg from spells
+ 33 NON_LIVING 0 0 0 //iron golems are non-living
+ 33 SPELL_DAMAGE_REDUCTION 75 -1 0 //iron golems reduce dmg from spells
+ 34 CHANGES_SPELL_COST_FOR_ALLY -2 0 0 //mages reduce spell cost
+ 35 CHANGES_SPELL_COST_FOR_ALLY -2 0 0 //archmages reduce spell cost
+ 36 HATE 0 52 0 //genies hate efreets
+ 36 HATE 0 53 0 //genies hate efreet sultans
+ 37 HATE 0 52 0 //master genies hate efreets
+ 37 HATE 0 53 0 //master genies hate efreet sultans
+ 37 RANDOM_GENIE_SPELLCASTER 0 0 0 //master genies cast spells
+ 38 BLOCKS_RETALIATION 0 0 0 //nagas block retaliation
+ 39 BLOCKS_RETALIATION 0 0 0 //naga queens block retaliation
+ 41 HATE 0 83 0 //titans hate black dragons
+ 43 MANA_CHANNELING 20 0 0 //familiars
+ 45 SPELL_LIKE_ATTACK 21 0 0 //magogs fire with fireballs
+ 47 BLOCKS_RETALIATION 0 0 0 //cerberus
+ 47 THREE_HEADED_ATTACK 0 0 0 //cerberus
+ 47 THREE_HEADED_ATTACK 0 0 0 //creberus
+ 51 DAEMON_SUMMONING 0 52 0 //pit lord
+ 52 FIRE_IMMUNITY 0 0 0 //efreeti
+ 52 FLYING 0 0 0 //Efreeti
+ 52 HATE 0 36 0 //efreeti hate genies
+ 52 HATE 0 37 0 //efreeti hate master genies
+ 53 FIRE_IMMUNITY 0 0 0 //efreet sultan
+ 53 FIRE_SHIELD 0 36 0 //efreet sultans
+ 53 FLYING 0 0 0 //Efreet Sultan
+ 53 HATE 0 36 0 //efreet sultans hate genies
+ 53 HATE 0 37 0 //efreet sultans hate master genies
+ 54 BLOCKS_RETALIATION 0 0 0 //devils
+ 54 ENEMY_LUCK_DECREASING -1 0 0 //devils
+ 54 HATE 0 12 0 //devils hate angels
+ 54 HATE 0 13 0 //devils hate archangles
+ 55 BLOCKS_RETALIATION 0 0 0 //archdevils
+ 55 ENEMY_LUCK_DECREASING -1 0 0 //archdevils
+ 55 HATE 0 12 0 //archdevils hate angels
+ 55 HATE 0 13 0 //archdevils hate archangles
+ 60 REGENERATION 0 0 0 //wight
+ 61 MANA_DRAIN 2 0 0 //wraith
+ 61 REGENERATION 0 0 0 //wraith
+ 62 BLOCKS_RETALIATION 0 0 0 //vampires
+ 63 BLOCKS_RETALIATION 0 0 0 //vampire lords
+ 63 LIFE_DRAIN 0 0 0 //vampire lords
+ 64 SPELL_LIKE_ATTACK 76 0 0 //liches
+ 65 SPELL_LIKE_ATTACK 76 0 0 //power liches
+ 66 SPELL_AFTER_ATTACK 0 42 20 //black knights
+ 67 DOUBLE_DAMAGE_CHANCE 20 0 0 //vampire lords
+ 67 SPELL_AFTER_ATTACK 0 42 20 //dread knights
+ 68 ENEMY_MORALE_DECREASING -1 0 0 //bone dragon
+ 69 ENEMY_MORALE_DECREASING -1 0 0 //ghost dragon
+ 69 SPELL_AFTER_ATTACK 0 75 20 //ghost dragon
+ 70 SPELL_IMMUNITY 0 62 0 //troglodytes are immune to blind
+ 71 SPELL_IMMUNITY 0 62 0 //infernal troglodytes are immune to blind
+ 72 RETURN_AFTER_STRIKE 0 0 0 //Harpies return after attack
+ 73 BLOCKS_RETALIATION 0 0 0 //Harpy Hags
+ 73 RETURN_AFTER_STRIKE 0 0 0 //Harpy Hags return after attack
+ 76 SPELL_AFTER_ATTACK 0 70 220 //medusas
+ 77 SPELL_AFTER_ATTACK 0 70 220 //medusa queens
+ 78 SELF_MORALE 0 0 0 //minotaurs
+ 79 SELF_MORALE 0 0 0 //minotaur kings
+ 81 SPELL_AFTER_ATTACK 0 74 20 //scorpicore
+ 82 LEVEL_SPELL_IMMUNITY 3 0 0 //red dragon's spell immunity
+ 83 LEVEL_SPELL_IMMUNITY 5 0 0 //black dragon's spell immunity
+ 87 ADDITIONAL_ATTACK 1 0 0 //wolf raider
+ 91 SPELLCASTER 2 43 6 //ogre magi cast bloodlust
+ 93 SPELL_AFTER_ATTACK 0 77 20 //thunderbirds
+ 96 ENEMY_DEFENCE_REDUCTION 40 0 0 //behemots
+ 97 ENEMY_DEFENCE_REDUCTION 80 0 0 //ancient behemots
+ 103 SPELL_AFTER_ATTACK 0 79 10 //mighty gorgons
+ 104 SPELL_AFTER_ATTACK 0 78 100 //serpent fly
+ 105 SPELL_AFTER_ATTACK 0 45 100 //mighty gorgons
+ 105 SPELL_AFTER_ATTACK 0 78 100 //dragon fly
+ 106 SPELL_AFTER_ATTACK 0 70 20 //basilisks
+ 107 SPELL_AFTER_ATTACK 0 70 20 //greater basilisks
+ 109 SPELL_AFTER_ATTACK 0 71 20 //Wyvern Monarch
+ 110 ATTACKS_ALL_ADJACENT 0 0 0 //hydras
+ 110 BLOCKS_RETALIATION 0 0 0 //hydras
+ 111 ATTACKS_ALL_ADJACENT 0 0 0 //chaos hydras
+ 111 BLOCKS_RETALIATION 0 0 0 //chaos hydras
+ 115 DOUBLE_WIDE 0 0 0 //water elemental should be treated as double-wide
+ 123 DOUBLE_WIDE 0 0 0 //ice elemental should be treated as double-wide
+ 140 DOUBLE_WIDE 0 0 0 //boar should be treated as double-wide
+ 142 DOUBLE_WIDE 0 0 0 //nomads should be treated as double-wide
+ 147 NOT_ACTIVE 0 0 0 //First Aid Tent //TODO: remove when support is added
+ 148 NOT_ACTIVE 0 0 0 //Ammo Cart
- 46 FLYING //hell hound doesn't fly
- 47 FLYING //cerberus doesn't fly
- 120 DOUBLE_WIDE 0 0 0 //psychic elemental
- 121 DOUBLE_WIDE 0 0 0 //magic elemental
0

View File

@ -482,57 +482,7 @@ void CCreatureHandler::loadCreatures()
creatures[46].abilities -= StackFeature::FLYING; //hell hound
creatures[47].abilities -= StackFeature::FLYING; //cerberus
*/
creatures[52].abilities += makeCreatureAbility(StackFeature::FLYING, 0); //Efreeti
creatures[53].abilities += makeCreatureAbility(StackFeature::FLYING, 0); //Efreet Sultan
creatures[47].abilities += makeCreatureAbility(StackFeature::THREE_HEADED_ATTACK, 0); //cerberus
creatures[87].abilities += makeCreatureAbility(StackFeature::ADDITIONAL_ATTACK, 1); //wolf raider
creatures[147].abilities += makeCreatureAbility(StackFeature::NOT_ACTIVE, 0); //First Aid Tent //TODO: remove when support is added
creatures[148].abilities += makeCreatureAbility(StackFeature::NOT_ACTIVE, 0); //Ammo Cart
creatures[120].abilities -= StackFeature::DOUBLE_WIDE; //psychic elemental
creatures[121].abilities -= StackFeature::DOUBLE_WIDE; //magic elemental
creatures[0].abilities += makeCreatureAbility(StackFeature::CHARGE_IMMUNITY, 0); //pikeman immunity to Champion charge bonus
creatures[1].abilities += makeCreatureAbility(StackFeature::CHARGE_IMMUNITY, 0); //halberdier immunity to Champion charge bonus
creatures[4].abilities += makeCreatureAbility(StackFeature::ADDITIONAL_RETALIATION, 1); //griffins retaliate twice
creatures[5].abilities += makeCreatureAbility(StackFeature::UNLIMITED_RETALIATIONS, 0); //royal griffins retaliate always
creatures[12].abilities += makeCreatureAbility(StackFeature::HATE, 0, 54); //angels hate devils
creatures[12].abilities += makeCreatureAbility(StackFeature::HATE, 0, 55); //angels hate archdevils
creatures[13].abilities += makeCreatureAbility(StackFeature::HATE, 0, 54); //archangels hate devils
creatures[13].abilities += makeCreatureAbility(StackFeature::HATE, 0, 55); //archangels hate arch
creatures[13].abilities += makeCreatureAbility(StackFeature::SPELLCASTER, 0, 38); //archangels cast resurrection
creatures[16].abilities += makeCreatureAbility(StackFeature::MAGIC_RESISTANCE, 20); //dwarf's magic resistance 20%
creatures[17].abilities += makeCreatureAbility(StackFeature::MAGIC_RESISTANCE, 40); //battle dwarf's magic resistance 40%
creatures[20].abilities += makeCreatureAbility(StackFeature::CHANGES_SPELL_COST_FOR_ENEMY, 2); //pegasus makes spell cost higher for enemy mage
creatures[21].abilities += makeCreatureAbility(StackFeature::CHANGES_SPELL_COST_FOR_ENEMY, 2); //silver pegasus makes spell cost higher for enemy mage
creatures[22].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 72, 100); //dendroids cast bind
creatures[23].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 72, 100); //dendroid guards cast bind
creatures[24].abilities += makeCreatureAbility(StackFeature::SPELL_RESISTANCE_AURA, 0, 55); //unicorn
creatures[25].abilities += makeCreatureAbility(StackFeature::SPELL_RESISTANCE_AURA, 0, 55); //war unicorn
creatures[24].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 62, 100); //unicorns cast blind with 20% probability
creatures[25].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 62, 100); //war unicorns cast blind with 20% probability
creatures[26].abilities += makeCreatureAbility(StackFeature::LEVEL_SPELL_IMMUNITY, 3); //green dragon's spell immunity
creatures[27].abilities += makeCreatureAbility(StackFeature::LEVEL_SPELL_IMMUNITY, 4); //gold dragon's spell immunity
creatures[26].abilities += makeCreatureAbility(StackFeature::TWO_HEX_ATTACK_BREATH, 0); //green dragon's breath
creatures[27].abilities += makeCreatureAbility(StackFeature::TWO_HEX_ATTACK_BREATH, 0); //gold dragon's breath
creatures[30].abilities += makeCreatureAbility(StackFeature::NON_LIVING, 0); //stone gargoyles are non-living
creatures[31].abilities += makeCreatureAbility(StackFeature::NON_LIVING, 0); //obsidian gargoyles are non-living
creatures[32].abilities += makeCreatureAbility(StackFeature::NON_LIVING, 0); //stone golems are non-living
creatures[33].abilities += makeCreatureAbility(StackFeature::NON_LIVING, 0); //iron golems are non-living
creatures[32].abilities += makeCreatureAbility(StackFeature::SPELL_DAMAGE_REDUCTION, 50, -1); //stone golems reduce dmg from spells
creatures[33].abilities += makeCreatureAbility(StackFeature::SPELL_DAMAGE_REDUCTION, 75, -1); //iron golems reduce dmg from spells
creatures[34].abilities += makeCreatureAbility(StackFeature::CHANGES_SPELL_COST_FOR_ALLY, -2); //mages reduce spell cost
creatures[35].abilities += makeCreatureAbility(StackFeature::CHANGES_SPELL_COST_FOR_ALLY, -2); //archmages reduce spell cost
creatures[36].abilities += makeCreatureAbility(StackFeature::HATE, 0, 52); //genies hate efreets
creatures[36].abilities += makeCreatureAbility(StackFeature::HATE, 0, 53); //genies hate efreet sultans
creatures[37].abilities += makeCreatureAbility(StackFeature::HATE, 0, 52); //master genies hate efreets
creatures[37].abilities += makeCreatureAbility(StackFeature::HATE, 0, 53); //master genies hate efreet sultans
creatures[37].abilities += makeCreatureAbility(StackFeature::RANDOM_GENIE_SPELLCASTER, 0); //master genies cast spells
creatures[38].abilities += makeCreatureAbility(StackFeature::BLOCKS_RETALIATION, 0); //nagas block retaliation
creatures[39].abilities += makeCreatureAbility(StackFeature::BLOCKS_RETALIATION, 0); //naga queens block retaliation
std::vector<int> mindSpells = getMindSpells();
for(int g=0; g<mindSpells.size(); ++g)
{
@ -542,68 +492,6 @@ void CCreatureHandler::loadCreatures()
{
creatures[41].abilities += makeCreatureAbility(StackFeature::SPELL_IMMUNITY, 0, mindSpells[g]); //titans are immune to mind spells
}
creatures[41].abilities += makeCreatureAbility(StackFeature::HATE, 0, 83); //titans hate black dragons
creatures[43].abilities += makeCreatureAbility(StackFeature::MANA_CHANNELING, 20); //familiars
creatures[45].abilities += makeCreatureAbility(StackFeature::SPELL_LIKE_ATTACK, 21); //magogs fire with fireballs
creatures[47].abilities += makeCreatureAbility(StackFeature::THREE_HEADED_ATTACK, 0); //creberus
creatures[47].abilities += makeCreatureAbility(StackFeature::BLOCKS_RETALIATION, 0); //cerberus
creatures[51].abilities += makeCreatureAbility(StackFeature::DAEMON_SUMMONING, 0, 52); //pit lord
creatures[52].abilities += makeCreatureAbility(StackFeature::FIRE_IMMUNITY, 0); //efreeti
creatures[52].abilities += makeCreatureAbility(StackFeature::HATE, 0, 36); //efreeti hate genies
creatures[52].abilities += makeCreatureAbility(StackFeature::HATE, 0, 37); //efreeti hate master genies
creatures[53].abilities += makeCreatureAbility(StackFeature::FIRE_IMMUNITY, 0); //efreet sultan
creatures[53].abilities += makeCreatureAbility(StackFeature::HATE, 0, 36); //efreet sultans hate genies
creatures[53].abilities += makeCreatureAbility(StackFeature::HATE, 0, 37); //efreet sultans hate master genies
creatures[53].abilities += makeCreatureAbility(StackFeature::FIRE_SHIELD, 0, 36); //efreet sultans
creatures[54].abilities += makeCreatureAbility(StackFeature::ENEMY_LUCK_DECREASING, -1); //devils
creatures[54].abilities += makeCreatureAbility(StackFeature::BLOCKS_RETALIATION, 0); //devils
creatures[54].abilities += makeCreatureAbility(StackFeature::HATE, 0, 12); //devils hate angels
creatures[54].abilities += makeCreatureAbility(StackFeature::HATE, 0, 13); //devils hate archangles
creatures[55].abilities += makeCreatureAbility(StackFeature::ENEMY_LUCK_DECREASING, -1); //archdevils
creatures[55].abilities += makeCreatureAbility(StackFeature::BLOCKS_RETALIATION, 0); //archdevils
creatures[55].abilities += makeCreatureAbility(StackFeature::HATE, 0, 12); //archdevils hate angels
creatures[55].abilities += makeCreatureAbility(StackFeature::HATE, 0, 13); //archdevils hate archangles
creatures[60].abilities += makeCreatureAbility(StackFeature::REGENERATION, 0); //wight
creatures[61].abilities += makeCreatureAbility(StackFeature::REGENERATION, 0); //wraith
creatures[61].abilities += makeCreatureAbility(StackFeature::MANA_DRAIN, 2); //wraith
creatures[62].abilities += makeCreatureAbility(StackFeature::BLOCKS_RETALIATION, 0); //vampires
creatures[63].abilities += makeCreatureAbility(StackFeature::BLOCKS_RETALIATION, 0); //vampire lords
creatures[63].abilities += makeCreatureAbility(StackFeature::LIFE_DRAIN, 0); //vampire lords
creatures[64].abilities += makeCreatureAbility(StackFeature::SPELL_LIKE_ATTACK, 76); //liches
creatures[65].abilities += makeCreatureAbility(StackFeature::SPELL_LIKE_ATTACK, 76); //power liches
creatures[66].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 42, 20); //black knights
creatures[67].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 42, 20); //dread knights
creatures[67].abilities += makeCreatureAbility(StackFeature::DOUBLE_DAMAGE_CHANCE, 20); //vampire lords
creatures[68].abilities += makeCreatureAbility(StackFeature::ENEMY_MORALE_DECREASING, -1); //bone dragon
creatures[69].abilities += makeCreatureAbility(StackFeature::ENEMY_MORALE_DECREASING, -1); //ghost dragon
creatures[69].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 75, 20); //ghost dragon
creatures[70].abilities += makeCreatureAbility(StackFeature::SPELL_IMMUNITY, 0, 62); //troglodytes are immune to blind
creatures[71].abilities += makeCreatureAbility(StackFeature::SPELL_IMMUNITY, 0, 62); //infernal troglodytes are immune to blind
creatures[72].abilities += makeCreatureAbility(StackFeature::RETURN_AFTER_STRIKE, 0); //Harpies return after attack
creatures[73].abilities += makeCreatureAbility(StackFeature::RETURN_AFTER_STRIKE, 0); //Harpy Hags return after attack
creatures[73].abilities += makeCreatureAbility(StackFeature::BLOCKS_RETALIATION, 0); //Harpy Hags
creatures[76].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 70, 20 + 200); //medusas
creatures[77].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 70, 20 + 200); //medusa queens
creatures[78].abilities += makeCreatureAbility(StackFeature::SELF_MORALE, 0); //minotaurs
creatures[79].abilities += makeCreatureAbility(StackFeature::SELF_MORALE, 0); //minotaur kings
creatures[81].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 74, 20); //scorpicore
creatures[82].abilities += makeCreatureAbility(StackFeature::LEVEL_SPELL_IMMUNITY, 3); //red dragon's spell immunity
creatures[83].abilities += makeCreatureAbility(StackFeature::LEVEL_SPELL_IMMUNITY, 5); //black dragon's spell immunity
creatures[91].abilities += makeCreatureAbility(StackFeature::SPELLCASTER, 2, 43, 6); //ogre magi cast bloodlust
creatures[93].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 77, 20); //thunderbirds
creatures[96].abilities += makeCreatureAbility(StackFeature::ENEMY_DEFENCE_REDUCTION, 40); //behemots
creatures[97].abilities += makeCreatureAbility(StackFeature::ENEMY_DEFENCE_REDUCTION, 80); //ancient behemots
creatures[103].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 79, 10); //mighty gorgons
creatures[104].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 78, 100); //serpent fly
creatures[105].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 78, 100); //dragon fly
creatures[105].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 45, 100); //mighty gorgons
creatures[106].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 70, 20); //basilisks
creatures[107].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 70, 20); //greater basilisks
creatures[109].abilities += makeCreatureAbility(StackFeature::SPELL_AFTER_ATTACK, 0, 71, 20); //Wyvern Monarch
creatures[110].abilities += makeCreatureAbility(StackFeature::ATTACKS_ALL_ADJACENT, 0); //hydras
creatures[110].abilities += makeCreatureAbility(StackFeature::BLOCKS_RETALIATION, 0); //hydras
creatures[111].abilities += makeCreatureAbility(StackFeature::ATTACKS_ALL_ADJACENT, 0); //chaos hydras
creatures[111].abilities += makeCreatureAbility(StackFeature::BLOCKS_RETALIATION, 0); //chaos hydras
for(int g=0; g<mindSpells.size(); ++g)
{
creatures[112].abilities += makeCreatureAbility(StackFeature::SPELL_IMMUNITY, 0, mindSpells[g]); //air elementals are immune to mind spells