World of Might and Magic  0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Друзья Группы Страницы
Файл CastSpellInfo.h

См. исходные тексты.

Классы

struct  CastSpellInfo
 

Пространства имен

 CastSpellInfoHelpers
 

Функции

void CastSpellInfoHelpers::Cancel_Spell_Cast_In_Progress ()
 
void CastSpellInfoHelpers::_427E01_cast_spell ()
 
void _42777D_CastSpell_UseWand_ShootArrow (SPELL_TYPE spell, unsigned int uPlayerID, unsigned int a4, __int16 flags, int a6)
 

Функции

◆ _42777D_CastSpell_UseWand_ShootArrow()

void _42777D_CastSpell_UseWand_ShootArrow ( SPELL_TYPE  spell,
unsigned int  uPlayerID,
unsigned int  a4,
__int16  flags,
int  a6 
)

См. определение в файле CastSpellInfo.cpp строка 4369

4372  {
4373  unsigned __int16 v9; // cx@16
4374  unsigned int v10; // eax@18
4375  unsigned __int8 v11; // sf@18
4376  unsigned __int8 v12; // of@18
4377  unsigned __int16 v13; // cx@21
4378  unsigned int v14; // eax@23
4379 
4380  // if (!pParty->bTurnBasedModeOn
4381  // || (result = pTurnEngine->field_4, pTurnEngine->field_4 != 1) &&
4382  // pTurnEngine->field_4 != 3 )
4383  if (pParty->bTurnBasedModeOn) {
4384  if (pTurnEngine->turn_stage == TE_WAIT ||
4386  return;
4387  }
4388 
4389  // spell_pointed_target = a5;
4390  // v7 = &pParty->pPlayers[uPlayerID];
4391  assert(uPlayerID < 4);
4392  Player *player = &pParty->pPlayers[uPlayerID];
4393  if (!(flags & 0x10)) {
4394  switch (spell) {
4395  case SPELL_SPIRIT_FATE:
4396  case SPELL_BODY_FIRST_AID:
4397  case SPELL_DARK_REANIMATE:
4398  // HIBYTE(spell_pointed_target) = HIBYTE(a5) | 1;
4399  flags |= ON_CAST_MonsterSparkles;
4400  break;
4401 
4402  case SPELL_FIRE_FIRE_AURA:
4406  flags |= ON_CAST_Enchantment;
4407  break;
4408 
4409  case SPELL_FIRE_FIRE_BOLT:
4410  case SPELL_FIRE_FIREBALL:
4411  case SPELL_FIRE_INCINERATE:
4413  case SPELL_AIR_IMPLOSION:
4415  case SPELL_WATER_ICE_BOLT:
4417  case SPELL_WATER_ICE_BLAST:
4418  case SPELL_EARTH_STUN:
4419  case SPELL_EARTH_SLOW:
4421  case SPELL_EARTH_BLADES:
4424  case SPELL_MIND_MIND_BLAST:
4425  case SPELL_MIND_CHARM:
4427  case SPELL_BODY_HARM:
4431  case SPELL_LIGHT_SUNRAY:
4434  case SPELL_DARK_SHARPMETAL:
4436  if (!a6) flags |= ON_CAST_TargetCrosshair;
4437  break;
4438  case SPELL_MIND_TELEPATHY:
4439  case SPELL_MIND_BERSERK:
4440  case SPELL_MIND_ENSLAVE:
4441  case SPELL_LIGHT_PARALYZE:
4443  flags |= ON_CAST_TargetCrosshair;
4444  break;
4445 
4447  flags |= ON_CAST_Telekenesis;
4448  break;
4449 
4450  case SPELL_SPIRIT_BLESS:
4451  if (a4 && ~a4 & 0x01C0) {
4452  flags |= ON_CAST_WholeParty_BigImprovementAnim;
4453  break;
4454  } else if ((player->pActiveSkills[PLAYER_SKILL_SPIRIT] &
4455  0x1C0) == 0) {
4456  flags |= ON_CAST_WholeParty_BigImprovementAnim;
4457  break;
4458  }
4459  break;
4460 
4462  v9 = a4;
4463  if (!a4) v9 = player->pActiveSkills[PLAYER_SKILL_SPIRIT];
4464  // goto LABEL_18;
4465  v10 = SkillToMastery(v9);
4466  v12 = __OFSUB__(v10, 3);
4467  v11 = ((v10 - 3) & 0x80000000u) != 0;
4468  // goto LABEL_24;
4469  if (v11 ^ v12) {
4470  flags |= ON_CAST_WholeParty_BigImprovementAnim;
4471  break;
4472  }
4473  break;
4474 
4476  v9 = a4;
4477  if (!a4) v9 = player->pActiveSkills[PLAYER_SKILL_DARK];
4478  // LABEL_18:
4479  v10 = SkillToMastery(v9);
4480  v12 = __OFSUB__(v10, 3);
4481  v11 = ((v10 - 3) & 0x80000000u) != 0;
4482  // goto LABEL_24;
4483  if (v11 ^ v12) {
4484  flags |= ON_CAST_WholeParty_BigImprovementAnim;
4485  break;
4486  }
4487  break;
4488 
4490  v13 = a4;
4491  if (!a4) v13 = player->pActiveSkills[PLAYER_SKILL_BODY];
4492  v14 = SkillToMastery(v13);
4493  v12 = __OFSUB__(v14, 4);
4494  v11 = ((v14 - 4) & 0x80000000u) != 0;
4495  // LABEL_24:
4496  if (v11 ^ v12) {
4497  flags |= ON_CAST_WholeParty_BigImprovementAnim;
4498  break;
4499  }
4500  break;
4501 
4513  flags |= ON_CAST_WholeParty_BigImprovementAnim;
4514  break;
4515 
4516  case SPELL_DARK_SACRIFICE:
4517  flags |= ON_CAST_DarkSacrifice;
4518  break;
4519  default:
4520  break;
4521  }
4522  }
4523 
4524  // clear previous casts
4525  if (flags & ON_CAST_CastingInProgress) {
4526  for (uint i = 0; i < CastSpellInfoCount; ++i)
4527  if (pCastSpellInfo[i].uFlags & ON_CAST_CastingInProgress) {
4528  pCastSpellInfo[i].uSpellID = 0;
4529  break;
4530  }
4531  }
4532 
4534 
4535  int result = PushCastSpellInfo(spell, uPlayerID, a4, flags, a6);
4536  if (result != -1) {
4537  if (flags & ON_CAST_WholeParty_BigImprovementAnim) {
4538  if (pGUIWindow_CastTargetedSpell) return;
4540  0, 0, window->GetWidth(), window->GetHeight(),
4541  (int)&pCastSpellInfo[result]);
4543  52, 422, 35, 0, 2, 0, UIMSG_CastSpell_Character_Big_Improvement,
4544  0, 49, "");
4546  165, 422, 35, 0, 2, 0,
4549  280, 422, 35, 0, 2, 0,
4552  390, 422, 35, 0, 2, 0,
4555  return;
4556  }
4557  if (flags & ON_CAST_TargetCrosshair) {
4558  if (pGUIWindow_CastTargetedSpell) return;
4559 
4561  0, 0, window->GetWidth(), window->GetHeight(),
4562  (int)&pCastSpellInfo[result]);
4566  "");
4568  return;
4569  }
4570  if (flags & ON_CAST_Telekenesis) {
4571  if (pGUIWindow_CastTargetedSpell) return;
4572 
4574  0, 0, window->GetWidth(), window->GetHeight(),
4575  (int)&pCastSpellInfo[result]);
4579  "");
4581  return;
4582  }
4583  if (flags & ON_CAST_Enchantment) {
4584  if (pGUIWindow_CastTargetedSpell) return;
4585 
4587  pCastSpellInfo[result].GetCastSpellInInventoryWindow();
4591  return;
4592  }
4593  if (flags & ON_CAST_MonsterSparkles) {
4594  if (pGUIWindow_CastTargetedSpell) return;
4596  0, 0, window->GetWidth(), window->GetHeight(),
4597  (int)&pCastSpellInfo[result]);
4599  0x34u, 0x1A6u, 0x23u, 0, 2, 0,
4602  0xA5u, 0x1A6u, 0x23u, 0, 2, 0,
4605  0x118u, 0x1A6u, 0x23u, 0, 2, 0,
4608  0x186u, 0x1A6u, 0x23u, 0, 2, 0,
4614  }
4615  if (flags & ON_CAST_DarkSacrifice && !pGUIWindow_CastTargetedSpell) {
4617  0, 0, window->GetWidth(), window->GetHeight(),
4618  (int)&pCastSpellInfo[result]);
4620  469, 178, ui_btn_npc_left->GetWidth(),
4622  "", {{ui_btn_npc_left}});
4624  626, 178, ui_btn_npc_right->GetWidth(),
4626  "", {{ui_btn_npc_right}});
4628  491, 149, 64, 74, 1, 0, UIMSG_HiredNPC_CastSpell, 4, 0x35u, "");
4630  561, 149, 64, 74, 1, 0, UIMSG_HiredNPC_CastSpell, 5, 0x36u, "");
4631  }
4632  }
4633 }

Перекрестные ссылки _50C9A0_IsEnchantingInProgress, __OFSUB__(), Party::bTurnBasedModeOn, CastSpellInfoHelpers::Cancel_Spell_Cast_In_Progress(), CastSpellInfoCount, GUIWindow::CreateButton(), game_viewport_height, game_viewport_width, game_viewport_x, game_viewport_y, Image::GetHeight(), Image::GetWidth(), Player::pActiveSkills, pBtn_NPCLeft, pBtn_NPCRight, pCastSpellInfo, pGUIWindow_CastTargetedSpell, PLAYER_SKILL_BODY, PLAYER_SKILL_DARK, PLAYER_SKILL_SPIRIT, pParty, Party::pPlayers, pTurnEngine, PushCastSpellInfo(), SkillToMastery(), some_active_character, SPELL_AIR_IMPLOSION, SPELL_AIR_LIGHNING_BOLT, SPELL_BODY_CURE_DISEASE, SPELL_BODY_CURE_POISON, SPELL_BODY_CURE_WEAKNESS, SPELL_BODY_FIRST_AID, SPELL_BODY_FLYING_FIST, SPELL_BODY_HAMMERHANDS, SPELL_BODY_HARM, SPELL_BODY_REGENERATION, SPELL_DARK_CONTROL_UNDEAD, SPELL_DARK_DRAGON_BREATH, SPELL_DARK_PAIN_REFLECTION, SPELL_DARK_REANIMATE, SPELL_DARK_SACRIFICE, SPELL_DARK_SHARPMETAL, SPELL_DARK_SHRINKING_RAY, SPELL_DARK_TOXIC_CLOUD, SPELL_DARK_VAMPIRIC_WEAPON, SPELL_EARTH_BLADES, SPELL_EARTH_DEADLY_SWARM, SPELL_EARTH_MASS_DISTORTION, SPELL_EARTH_SLOW, SPELL_EARTH_STONE_TO_FLESH, SPELL_EARTH_STUN, SPELL_EARTH_TELEKINESIS, SPELL_FIRE_FIRE_AURA, SPELL_FIRE_FIRE_BOLT, SPELL_FIRE_FIREBALL, SPELL_FIRE_INCINERATE, SPELL_LIGHT_DESTROY_UNDEAD, SPELL_LIGHT_LIGHT_BOLT, SPELL_LIGHT_PARALYZE, SPELL_LIGHT_SUNRAY, SPELL_MIND_BERSERK, SPELL_MIND_CHARM, SPELL_MIND_CURE_INSANITY, SPELL_MIND_CURE_PARALYSIS, SPELL_MIND_ENSLAVE, SPELL_MIND_MIND_BLAST, SPELL_MIND_PSYCHIC_SHOCK, SPELL_MIND_REMOVE_FEAR, SPELL_MIND_TELEPATHY, SPELL_SPIRIT_BLESS, SPELL_SPIRIT_FATE, SPELL_SPIRIT_PRESERVATION, SPELL_SPIRIT_RAISE_DEAD, SPELL_SPIRIT_REMOVE_CURSE, SPELL_SPIRIT_RESSURECTION, SPELL_SPIRIT_SPIRIT_LASH, SPELL_WATER_ACID_BURST, SPELL_WATER_ENCHANT_ITEM, SPELL_WATER_ICE_BLAST, SPELL_WATER_ICE_BOLT, SPELL_WATER_POISON_SPRAY, SPELL_WATER_RECHARGE_ITEM, Party::sub_421B2C_PlaceInInventory_or_DropPickedItem(), TE_MOVEMENT, TE_WAIT, stru262_TurnBased::turn_stage, uActiveCharacter, ui_btn_npc_left, ui_btn_npc_right, UIMSG_CastSpell_Character_Big_Improvement, UIMSG_CastSpell_Character_Small_Improvement, UIMSG_CastSpell_Monster_Improvement, UIMSG_CastSpell_Shoot_Monster, UIMSG_CastSpell_Telekinesis, UIMSG_HiredNPC_CastSpell и UIMSG_ScrollNPCPanel.

Используется в Player::_42ECB5_PlayerAttacksActor(), Application::Game::EventLoop(), TempleDialog(), Player::UseItem_DrinkPotion_etc() и UseNPCSkill().

+ Граф вызовов:
+ Граф вызова функции:
TE_MOVEMENT
@ TE_MOVEMENT
Definition: TurnEngine.h:22
SPELL_LIGHT_PARALYZE
@ SPELL_LIGHT_PARALYZE
Definition: Spells.h:100
Player
Definition: Player.h:401
pCastSpellInfo
std::array< CastSpellInfo, CastSpellInfoCount > pCastSpellInfo
Definition: CastSpellInfo.cpp:43
SPELL_SPIRIT_RESSURECTION
@ SPELL_SPIRIT_RESSURECTION
Definition: Spells.h:71
SPELL_LIGHT_DESTROY_UNDEAD
@ SPELL_LIGHT_DESTROY_UNDEAD
Definition: Spells.h:98
Image::GetHeight
unsigned int GetHeight()
Definition: Image.cpp:230
SPELL_DARK_VAMPIRIC_WEAPON
@ SPELL_DARK_VAMPIRIC_WEAPON
Definition: Spells.h:111
ui_btn_npc_right
Image * ui_btn_npc_right
Definition: GUIWindow.cpp:97
SPELL_LIGHT_LIGHT_BOLT
@ SPELL_LIGHT_LIGHT_BOLT
Definition: Spells.h:97
SPELL_SPIRIT_PRESERVATION
@ SPELL_SPIRIT_PRESERVATION
Definition: Spells.h:66
SPELL_MIND_PSYCHIC_SHOCK
@ SPELL_MIND_PSYCHIC_SHOCK
Definition: Spells.h:82
SPELL_DARK_PAIN_REFLECTION
@ SPELL_DARK_PAIN_REFLECTION
Definition: Spells.h:115
SPELL_WATER_POISON_SPRAY
@ SPELL_WATER_POISON_SPRAY
Definition: Spells.h:38
GUIWindow::CreateButton
GUIButton * CreateButton(int x, int y, int width, int height, int a6, int a7, UIMessageType msg, unsigned int msg_param, uint8_t hotkey, const String &label, const std::vector< Image * > &textures=std::vector< Image * >())
Definition: GUIWindow.cpp:717
UIMSG_CastSpell_Character_Big_Improvement
@ UIMSG_CastSpell_Character_Big_Improvement
Definition: GUIWindow.h:55
SkillToMastery
unsigned int SkillToMastery(unsigned int skill_value)
Definition: Player.cpp:7854
UIMSG_CastSpell_Character_Small_Improvement
@ UIMSG_CastSpell_Character_Small_Improvement
Definition: GUIWindow.h:121
UIMSG_CastSpell_Shoot_Monster
@ UIMSG_CastSpell_Shoot_Monster
Definition: GUIWindow.h:56
game_viewport_width
unsigned int game_viewport_width
Definition: mm7_data.cpp:194
SPELL_EARTH_DEADLY_SWARM
@ SPELL_EARTH_DEADLY_SWARM
Definition: Spells.h:52
UIMSG_CastSpell_Monster_Improvement
@ UIMSG_CastSpell_Monster_Improvement
Definition: GUIWindow.h:120
SPELL_BODY_HARM
@ SPELL_BODY_HARM
Definition: Spells.h:88
game_viewport_x
int game_viewport_x
Definition: mm7_data.cpp:196
Party::pPlayers
std::array< Player, 4 > pPlayers
Definition: Party.h:310
SPELL_EARTH_STONE_TO_FLESH
@ SPELL_EARTH_STONE_TO_FLESH
Definition: Spells.h:55
SPELL_MIND_TELEPATHY
@ SPELL_MIND_TELEPATHY
Definition: Spells.h:76
SPELL_MIND_MIND_BLAST
@ SPELL_MIND_MIND_BLAST
Definition: Spells.h:74
Party::sub_421B2C_PlaceInInventory_or_DropPickedItem
void sub_421B2C_PlaceInInventory_or_DropPickedItem()
Definition: Party.cpp:1048
UIMSG_CastSpell_Telekinesis
@ UIMSG_CastSpell_Telekinesis
Definition: GUIWindow.h:157
SPELL_DARK_SHARPMETAL
@ SPELL_DARK_SHARPMETAL
Definition: Spells.h:113
SPELL_WATER_ICE_BOLT
@ SPELL_WATER_ICE_BOLT
Definition: Spells.h:40
Player::pActiveSkills
std::array< unsigned __int16, 37 > pActiveSkills
Definition: Player.h:711
game_viewport_height
unsigned int game_viewport_height
Definition: mm7_data.cpp:195
SPELL_MIND_ENSLAVE
@ SPELL_MIND_ENSLAVE
Definition: Spells.h:83
pTurnEngine
struct stru262_TurnBased * pTurnEngine
Definition: TurnEngine.cpp:21
result
GLuint64EXT * result
Definition: SDL_opengl_glext.h:9435
SPELL_FIRE_FIRE_BOLT
@ SPELL_FIRE_FIRE_BOLT
Definition: Spells.h:14
game_viewport_y
int game_viewport_y
Definition: mm7_data.cpp:197
SPELL_EARTH_TELEKINESIS
@ SPELL_EARTH_TELEKINESIS
Definition: Spells.h:57
Image::GetWidth
unsigned int GetWidth()
Definition: Image.cpp:217
SPELL_BODY_FIRST_AID
@ SPELL_BODY_FIRST_AID
Definition: Spells.h:86
pParty
Party * pParty
Definition: Party.cpp:30
SPELL_BODY_CURE_POISON
@ SPELL_BODY_CURE_POISON
Definition: Spells.h:90
SPELL_WATER_ICE_BLAST
@ SPELL_WATER_ICE_BLAST
Definition: Spells.h:46
PLAYER_SKILL_SPIRIT
@ PLAYER_SKILL_SPIRIT
Definition: Player.h:187
CastSpellInfoCount
const size_t CastSpellInfoCount
Definition: CastSpellInfo.cpp:42
SPELL_DARK_CONTROL_UNDEAD
@ SPELL_DARK_CONTROL_UNDEAD
Definition: Spells.h:114
SPELL_MIND_CHARM
@ SPELL_MIND_CHARM
Definition: Spells.h:77
SPELL_BODY_REGENERATION
@ SPELL_BODY_REGENERATION
Definition: Spells.h:89
SPELL_FIRE_FIRE_AURA
@ SPELL_FIRE_FIRE_AURA
Definition: Spells.h:16
SPELL_BODY_HAMMERHANDS
@ SPELL_BODY_HAMMERHANDS
Definition: Spells.h:91
SPELL_EARTH_SLOW
@ SPELL_EARTH_SLOW
Definition: Spells.h:50
window
EGLSurface EGLNativeWindowType * window
Definition: SDL_egl.h:1580
SPELL_EARTH_STUN
@ SPELL_EARTH_STUN
Definition: Spells.h:49
pBtn_NPCLeft
GUIButton * pBtn_NPCLeft
Definition: GUIButton.cpp:51
SPELL_DARK_SACRIFICE
@ SPELL_DARK_SACRIFICE
Definition: Spells.h:116
_50C9A0_IsEnchantingInProgress
bool _50C9A0_IsEnchantingInProgress
Definition: mm7_data.cpp:578
ui_btn_npc_left
Image * ui_btn_npc_left
Definition: GUIWindow.cpp:98
TE_WAIT
@ TE_WAIT
Definition: TurnEngine.h:20
SPELL_MIND_CURE_INSANITY
@ SPELL_MIND_CURE_INSANITY
Definition: Spells.h:81
SPELL_LIGHT_SUNRAY
@ SPELL_LIGHT_SUNRAY
Definition: Spells.h:106
SPELL_FIRE_FIREBALL
@ SPELL_FIRE_FIREBALL
Definition: Spells.h:18
Party::bTurnBasedModeOn
bool bTurnBasedModeOn
Definition: Party.h:305
SPELL_SPIRIT_RAISE_DEAD
@ SPELL_SPIRIT_RAISE_DEAD
Definition: Spells.h:69
SPELL_SPIRIT_BLESS
@ SPELL_SPIRIT_BLESS
Definition: Spells.h:62
UIMSG_HiredNPC_CastSpell
@ UIMSG_HiredNPC_CastSpell
Definition: GUIWindow.h:123
SPELL_SPIRIT_REMOVE_CURSE
@ SPELL_SPIRIT_REMOVE_CURSE
Definition: Spells.h:65
SPELL_SPIRIT_SPIRIT_LASH
@ SPELL_SPIRIT_SPIRIT_LASH
Definition: Spells.h:68
SPELL_EARTH_MASS_DISTORTION
@ SPELL_EARTH_MASS_DISTORTION
Definition: Spells.h:59
SPELL_BODY_CURE_WEAKNESS
@ SPELL_BODY_CURE_WEAKNESS
Definition: Spells.h:85
SPELL_SPIRIT_FATE
@ SPELL_SPIRIT_FATE
Definition: Spells.h:63
SPELL_WATER_ACID_BURST
@ SPELL_WATER_ACID_BURST
Definition: Spells.h:43
SPELL_DARK_DRAGON_BREATH
@ SPELL_DARK_DRAGON_BREATH
Definition: Spells.h:117
uint
unsigned int uint
Definition: MM7.h:4
UIMSG_ScrollNPCPanel
@ UIMSG_ScrollNPCPanel
Definition: GUIWindow.h:155
uActiveCharacter
unsigned int uActiveCharacter
Definition: mm7_data.cpp:555
SPELL_AIR_IMPLOSION
@ SPELL_AIR_IMPLOSION
Definition: Spells.h:33
flags
EGLSyncKHR EGLint flags
Definition: SDL_egl.h:898
SPELL_BODY_CURE_DISEASE
@ SPELL_BODY_CURE_DISEASE
Definition: Spells.h:92
SPELL_EARTH_BLADES
@ SPELL_EARTH_BLADES
Definition: Spells.h:54
PushCastSpellInfo
size_t PushCastSpellInfo(uint16_t uSpellID, uint16_t uPlayerID, __int16 skill_level, uint16_t uFlags, int spell_sound_id)
Definition: CastSpellInfo.cpp:4329
PLAYER_SKILL_DARK
@ PLAYER_SKILL_DARK
Definition: Player.h:191
PLAYER_SKILL_BODY
@ PLAYER_SKILL_BODY
Definition: Player.h:189
SPELL_MIND_BERSERK
@ SPELL_MIND_BERSERK
Definition: Spells.h:79
SPELL_WATER_ENCHANT_ITEM
@ SPELL_WATER_ENCHANT_ITEM
Definition: Spells.h:44
SPELL_AIR_LIGHNING_BOLT
@ SPELL_AIR_LIGHNING_BOLT
Definition: Spells.h:31
pBtn_NPCRight
GUIButton * pBtn_NPCRight
Definition: GUIButton.cpp:50
__OFSUB__
int8 __OFSUB__(T x, U y)
Definition: MM7.h:209
SPELL_BODY_FLYING_FIST
@ SPELL_BODY_FLYING_FIST
Definition: Spells.h:94
SPELL_MIND_REMOVE_FEAR
@ SPELL_MIND_REMOVE_FEAR
Definition: Spells.h:73
CastSpellInfoHelpers::Cancel_Spell_Cast_In_Progress
void Cancel_Spell_Cast_In_Progress()
Definition: CastSpellInfo.cpp:4350
SPELL_DARK_TOXIC_CLOUD
@ SPELL_DARK_TOXIC_CLOUD
Definition: Spells.h:110
SPELL_WATER_RECHARGE_ITEM
@ SPELL_WATER_RECHARGE_ITEM
Definition: Spells.h:42
SPELL_DARK_REANIMATE
@ SPELL_DARK_REANIMATE
Definition: Spells.h:109
OnCastTargetedSpell
Definition: GUIWindow.h:598
some_active_character
int some_active_character
Definition: mm7_data.cpp:569
SPELL_DARK_SHRINKING_RAY
@ SPELL_DARK_SHRINKING_RAY
Definition: Spells.h:112
pGUIWindow_CastTargetedSpell
GUIWindow * pGUIWindow_CastTargetedSpell
Definition: GUIWindow.cpp:56
SPELL_MIND_CURE_PARALYSIS
@ SPELL_MIND_CURE_PARALYSIS
Definition: Spells.h:78
stru262_TurnBased::turn_stage
int turn_stage
Definition: TurnEngine.h:75
SPELL_FIRE_INCINERATE
@ SPELL_FIRE_INCINERATE
Definition: Spells.h:23