| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- /*
- * BattleConstants.h, part of VCMI engine
- *
- * Authors: listed in file AUTHORS in main folder
- *
- * License: GNU General Public License v2.0 or later
- * Full text of license available in license.txt file, in main folder
- *
- */
- #pragma once
- enum class EBattleEffect
- {
- // list of battle effects that have hardcoded triggers
- MAGIC_MIRROR = 3,
- FIRE_SHIELD = 11,
- FEAR = 15,
- GOOD_LUCK = 18,
- GOOD_MORALE = 20,
- BAD_MORALE = 30,
- BAD_LUCK = 48,
- RESURRECT = 50,
- DRAIN_LIFE = 52,
- POISON = 67,
- DEATH_BLOW = 73,
- REGENERATION = 74,
- MANA_DRAIN = 77,
- RESISTANCE = 78,
- INVALID = -1,
- };
- enum class EAnimationEvents
- {
- // any action
- ROTATE, // stacks rotate before action
- // movement action
- MOVE_START, // stack starts movement
- MOVEMENT, // movement animation loop starts
- MOVE_END, // stack end movement
- // attack/spellcast action
- BEFORE_HIT, // attack and defence effects play, e.g. luck/death blow
- ATTACK, // attack and defence animations are playing
- HIT, // hit & death animations are playing
- AFTER_HIT, // post-attack effect, e.g. phoenix rebirth
- COUNT
- };
- enum class EHeroAnimType
- {
- HOLDING = 0,
- IDLE = 1, // idling movement that happens from time to time
- DEFEAT = 2, // played when army loses stack or on friendly fire
- VICTORY = 3, // when enemy stack killed or huge damage is dealt
- CAST_SPELL = 4 // spellcasting
- };
- enum class ECreatureAnimType
- {
- INVALID = -1,
- MOVING = 0,
- MOUSEON = 1,
- HOLDING = 2, // base idling animation
- HITTED = 3, // base animation for when stack is taking damage
- DEFENCE = 4, // alternative animation for defending in melee if stack spent its action on defending
- DEATH = 5,
- DEATH_RANGED = 6, // Optional, alternative animation for when stack is killed by ranged attack
- TURN_L = 7,
- TURN_R = 8,
- //TURN_L2 = 9, //unused - identical to TURN_L
- //TURN_R2 = 10, //unused - identical to TURN_R
- ATTACK_UP = 11,
- ATTACK_FRONT = 12,
- ATTACK_DOWN = 13,
- SHOOT_UP = 14, // Shooters only
- SHOOT_FRONT = 15, // Shooters only
- SHOOT_DOWN = 16, // Shooters only
- SPECIAL_UP = 17, // If empty, fallback to SPECIAL_FRONT
- SPECIAL_FRONT = 18, // Used for any special moves - dragon breath, spellcasting, Pit Lord/Ogre Mage ability
- SPECIAL_DOWN = 19, // If empty, fallback to SPECIAL_FRONT
- MOVE_START = 20, // small animation to be played before MOVING
- MOVE_END = 21, // small animation to be played after MOVING
- DEAD = 22, // new group, used to show dead stacks. If empty - last frame from "DEATH" will be copied here
- DEAD_RANGED = 23, // new group, used to show dead stacks (if DEATH_RANGED was used). If empty - last frame from "DEATH_RANGED" will be copied here
- RESURRECTION = 24, // new group, used for animating resurrection, if empty - reversed "DEATH" animation will be copied here
- FROZEN = 25, // new group, used when stack animation is paused (e.g. petrified). If empty - consist of first frame from HOLDING animation
- CAST_UP = 30,
- CAST_FRONT = 31,
- CAST_DOWN = 32,
- GROUP_ATTACK_UP = 40,
- GROUP_ATTACK_FRONT = 41,
- GROUP_ATTACK_DOWN = 42
- };
|