World of Might and Magic  0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
Файл CastSpellInfo.cpp

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

Определения типов

using EngineIoc = Engine_::IocContainer
 

Функции

size_t PushCastSpellInfo (uint16_t uSpellID, uint16_t uPlayerID, __int16 skill_level, uint16_t uFlags, int spell_sound_id)
 
void _42777D_CastSpell_UseWand_ShootArrow (SPELL_TYPE spell, unsigned int uPlayerID, unsigned int a4, __int16 flags, int a6)
 

Переменные

static Mousemouse = EngineIoc::ResolveMouse()
 
static SpellFxRendererspell_fx_renderer = EngineIoc::ResolveSpellFxRenderer()
 
const size_t CastSpellInfoCount = 10
 
std::array< CastSpellInfo, CastSpellInfoCountpCastSpellInfo
 

Типы

◆ EngineIoc

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

Функции

◆ PushCastSpellInfo()

size_t PushCastSpellInfo ( uint16_t  uSpellID,
uint16_t  uPlayerID,
__int16  skill_level,
uint16_t  uFlags,
int  spell_sound_id 
)

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

4331  {
4332  // uFlags: ON_CAST_*
4333  for (size_t i = 0; i < CastSpellInfoCount; i++) {
4334  if (!pCastSpellInfo[i].uSpellID) {
4335  pCastSpellInfo[i].uSpellID = uSpellID;
4336  pCastSpellInfo[i].uPlayerID = uPlayerID;
4337  if (uFlags & 0x10) pCastSpellInfo[i].uPlayerID_2 = uPlayerID;
4338  pCastSpellInfo[i].field_6 = 0;
4339  pCastSpellInfo[i].spell_target_pid = 0;
4340  pCastSpellInfo[i].uFlags = uFlags;
4341  pCastSpellInfo[i].forced_spell_skill_level = skill_level;
4342  pCastSpellInfo[i].sound_id = spell_sound_id;
4343  return i;
4344  }
4345  }
4346  return -1;
4347 }

Перекрестные ссылки CastSpellInfoCount и pCastSpellInfo.

Используется в _42777D_CastSpell_UseWand_ShootArrow().

+ Граф вызова функции:

◆ _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().

+ Граф вызовов:
+ Граф вызова функции:

Переменные

◆ mouse

Mouse* mouse = EngineIoc::ResolveMouse()
static

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

Используется в CastSpellInfoHelpers::_427E01_cast_spell() и CastSpellInfoHelpers::Cancel_Spell_Cast_In_Progress().

◆ spell_fx_renderer

SpellFxRenderer* spell_fx_renderer = EngineIoc::ResolveSpellFxRenderer()
static

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

Используется в CastSpellInfoHelpers::_427E01_cast_spell().

◆ CastSpellInfoCount

const size_t CastSpellInfoCount = 10

◆ pCastSpellInfo

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