Mercurial > might-and-magic-trilogy
view Spells.h @ 123:05b2d9653abc
15.11.12
author | Ritor1 |
---|---|
date | Thu, 15 Nov 2012 16:36:30 +0600 |
parents | 74940016abc8 |
children |
line wrap: on
line source
#pragma once /* 360 */ enum SPELL_TYPE { SPELL_FIRE_PROTECTION_FROM_FIRE = 0x3, SPELL_FIRE_HASTE = 0x5, SPELL_FIRE_FIRE_RING = 0x8, SPELL_AIR_FEATHER_FALL = 0xD, SPELL_AIR_PROTECTION_FROM_AIR = 0xE, SPELL_AIR_SHIELD = 0x11, SPELL_WATER_PROTECTION_FROM_WATER = 0x19, SPELL_WATER_WATER_WALK = 0x1B, SPELL_EARTH_PROTECTION_FROM_EARTH = 0x24, SPELL_EARTH_STONESKIN = 0x26, SPELL_SPIRIT_DETECT_LIFE = 0x2D, SPELL_SPIRIT_BLESS = 0x2E, SPELL_SPIRIT_DOOM = 0x2F, SPELL_SPIRIT_PRESERVE = 0x32, SPELL_SPIRIT_HEROISM = 0x33, SPELL_MIND_REMOVE_FEAR = 0x38, SPELL_MIND_PROTECTION_FROM_MIND = 0x3A, SPELL_MIND_CURE_PARALYSIS = 0x3D, SPELL_BODY_CURE_WEAKNESS = 0x43, SPELL_BODY_FIRST_AID = 0x44, SPELL_BODY_CURE_POISON = 0x48, SPELL_BODY_HAMMERHANDS = 0x49, SPELL_BODY_CURE_DISEASE = 0x4A, SPELL_BODY_PROTECTION_FROM_MAGIC = 0x4B, SPELL_DARK_PAIN_REFLECTION = 0x5F, }; /* 68 */ #pragma pack(push, 1) struct SpellBuff { inline SpellBuff() { uExpireTime = 0; uPower = 0; uSkill = 0; uOverlayID = 0; uCaster = 0; uFlags = 0; } signed int Apply(unsigned __int64 uExpireTime, unsigned __int16 uSkillLevel, unsigned __int16 uPower, int a5, unsigned __int8 a6); void Reset(); signed int _4585CA(__int64 a2); bool NotExpired(); unsigned __int64 uExpireTime; unsigned __int16 uPower; unsigned __int16 uSkill; unsigned __int16 uOverlayID; unsigned __int8 uCaster; unsigned __int8 uFlags; }; #pragma pack(pop) #pragma pack(push, 1) struct SpellInfo { char *pName; char *pShortName; char *pDescription; char *pBasicSkillDesc; char *pExpertSkillDesc; char *pMasterSkillDesc; char *pGrandmasterSkillDesc; unsigned int uSchool; int field_20; }; #pragma pack(pop) #pragma pack(push, 1) struct SpellStats { void Initialize(); SpellInfo pInfos[100]; }; #pragma pack(pop) /* 364 */ #pragma pack(push, 1) struct stru324_spell { __int16 uItemType; __int16 field_2; }; #pragma pack(pop) /* 151 */ #pragma pack(push, 1) struct SpellData { unsigned __int16 uNormalLevelMana; unsigned __int16 uExpertLevelMana; unsigned __int16 uMasterLevelMana; unsigned __int16 uMagisterLevelMana; unsigned __int16 field_8; __int16 field_A; __int16 field_C; __int16 field_E; __int16 field_10; char field_12; char field_13; __int16 field_14; }; #pragma pack(pop) extern struct SpellStats *pSpellStats; extern stru324_spell stru_4E3ACC[]; extern SpellData pSpellDatas[95];