| 
    World of Might and Magic
    0.2.0
    
   Open reimplementation of Might and Magic 6 7 8 game engine 
   | 
 
 
 
 
См. документацию.
   40 #define PLAYER_GUILD_BITS__FINED 1 
   41 #define PLAYER_GUILD_BITS__SPIRIT_MEMBERSHIP 58 
   42 #define PLAYER_GUILD_BITS__ARCOMAGE_WIN 103 
   43 #define PLAYER_GUILD_BITS__ARCOMAGE_LOSE 104 
  167 #pragma warning(push) 
  168 #pragma warning(disable : 4341) 
  267         if (
image != 
nullptr) {
 
  282 #pragma pack(push, 1) 
  288 #pragma pack(push, 1) 
  315 #pragma pack(push, 1) 
  414                            unsigned short Player::*attrValue,
 
  415                            unsigned short Player::*attrBonus);
 
  436                                unsigned int uTargetActorID);
 
  453                       int reputation, 
int extraStealFine, 
int* fineIfFailed);
 
  454     int StealFromActor(
unsigned int uActorID, 
int _steal_perm, 
int reputation);
 
  455     void Heal(
int amount);
 
  496                                  int BuildID_2Events, 
int a5);
 
  505     bool CanFitItem(
unsigned int uSlot, 
unsigned int uItemID);
 
  508     int HasSkill(
unsigned int uSkillType);
 
  509     void WearItem(
unsigned int uItemID);
 
  510     int AddItem(
int uSlot, 
unsigned int uItemID);
 
  518     void SetCondition(
unsigned int uConditionIdx, 
int blockable);
 
  532     int GetBuyingPrice(
unsigned int uRealValue, 
float price_multiplier);
 
  537     void SalesProcess(
unsigned int inventory_idnx, 
int item_index,
 
  550                                             int mult1, 
int mult2, 
int mult3,
 
  553                                            unsigned int uTargetActorID,
 
  557         unsigned char armour_skill_type, 
float param2, 
float param3,
 
  558         float param4, 
float param5);
 
  560                          unsigned __int16 skillValue);
 
  562                          unsigned __int16 addSkillValue);
 
  710         std::array<unsigned __int16, 37>
 
  802                              struct Vec3_int_* pPos, 
signed int a4);
 
  
 
unsigned __int16 uMightBonus
 
unsigned __int16 uint16_t
 
int ReceiveSpecialAttackEffect(int attType, struct Actor *pActor)
 
char GetLearningPercent()
 
int GetSkillBonus(enum CHARACTER_ATTRIBUTE_TYPE a2)
 
@ CHARACTER_EXPRESSION_PERTIFIED
 
void SetRecoveryTime(signed int sRecoveryTime)
 
void UseItem_DrinkPotion_etc(signed int a2, int a3)
 
void AddSkillByEvent(unsigned __int16 Player::*skillToSet, unsigned __int16 addSkillValue)
 
int StealFromActor(unsigned int uActorID, int _steal_perm, int reputation)
 
std::array< unsigned int, 16 > pIndices
 
bool PlayerHitOrMiss(Actor *pActor, int distancemod, int skillmod)
 
@ PLAYER_SKILL_MONSTER_ID
 
@ CHARACTER_EXPRESSION_17
 
String GetRangedDamageString()
 
bool IsUnconcious() const
 
@ PLAYER_CLASS_PRIEST_OF_MOON
 
@ PLAYER_BUFF_PAIN_REFLECTION
 
unsigned __int16 skillSword
 
int _expression21_animtime
 
unsigned __int16 skillMeditation
 
int GetItemsBonus(enum CHARACTER_ATTRIBUTE_TYPE attr, bool a3=false)
 
@ CHARACTER_EXPRESSION_30
 
int GetAttackRecoveryTime(bool bRangedAttack)
 
@ SPEECH_IDENTIFY_MONSTER_STRONGER
 
void IncreaseAttribute(int eAttribute)
 
void SubtractVariable(enum VariableType VarNum, signed int pValue)
 
int GetBaseResistance(enum CHARACTER_ATTRIBUTE_TYPE a2)
 
void SetPoisonSevere(GameTime time)
 
int GetMagicalBonus(enum CHARACTER_ATTRIBUTE_TYPE a2)
 
@ PLAYER_BUFF_RESIST_MIND
 
@ PLAYER_CLASS_RANGER_LORD
 
int CalculateRangedDamageTo(int uMonsterInfoID)
 
void PlayEmotion(CHARACTER_EXPRESSION_ID expression, int duration)
 
int GetActualSkillMastery(PLAYER_SKILL_TYPE uSkillType)
 
@ CHARACTER_EXPRESSION_SCARED
 
unsigned __int16 skillArmsmaster
 
unsigned __int16 skillDiplomacy
 
unsigned __int16 skillItemId
 
unsigned __int16 skillBlaster
 
int GetActualAttack(bool onlyMainHandDmg)
 
bool CanIdentify(ItemGen *pItem)
 
unsigned __int16 uWillpowerBonus
 
unsigned __int16 skillDodge
 
struct ItemGen * GetItemAtInventoryIndex(int inout_item_cell)
 
unsigned __int16 uAccuracy
 
@ CHARACTER_EXPRESSION_23
 
void SetDrunk(GameTime time)
 
ItemGen * GetNthRingItem(int ringNum)
 
unsigned __int16 skillLearning
 
ITEM_EQUIP_TYPE GetEquippedItemEquipType(ITEM_EQUIP_TYPE uEquipSlot)
 
int ReceiveDamage(signed int amount, DAMAGE_TYPE dmg_type)
 
@ CHARACTER_EXPRESSION_55
 
unsigned __int16 skillStealing
 
int GetTempleHealCostModifier(float price_multi)
 
char uNumDivineInterventionCastsThisDay
 
PlayerSpellbookChapter pDarkSpellbook
 
unsigned __int16 uEnduranceBonus
 
void ItemsPotionDmgBreak(int enchant_count)
 
static const unsigned int INVETORYSLOTSHEIGHT
 
@ CHARACTER_EXPRESSION_DMGRECVD_MAJOR
 
PlayerSpellbookChapter pAirSpellbook
 
unsigned __int16 skillRepair
 
unsigned __int16 skillSpear
 
@ CHARACTER_EXPRESSION_16
 
static void _42FA66_do_explosive_impact(int xpos, int ypos, int zpos, int a4, __int16 a5, signed int actchar)
 
void SetAfraid(GameTime time)
 
unsigned int GetBaseAge()
 
unsigned __int16 skillAxe
 
unsigned __int16 skillBow
 
String GetRaceName() const
 
@ CHARACTER_EXPRESSION_39
 
int GetBaseRepairPrice(int uRealValue, float price_multiplier)
 
ItemGen * GetAmuletItem()
 
void SetInsane(GameTime time)
 
int CalculateMeleeDamageTo(bool ignoreSkillBonus, bool ignoreOffhand, unsigned int uTargetActorID)
 
@ CHARACTER_EXPRESSION_DEAD
 
@ CHARACTER_EXPRESSION_SLEEP
 
unsigned __int16 skillDagger
 
int GetPriceRepair(int uRealValue, float price_multiplier)
 
@ CHARACTER_EXPRESSION_INSANE
 
char lastOpenedSpellbookPage
 
unsigned __int16 skillLight
 
unsigned __int16 skillMerchant
 
@ CHARACTER_EXPRESSION_33
 
PlayerSpellbookChapter pEarthSpellbook
 
@ CHARACTER_EXPRESSION_DMGRECVD_MINOR
 
int GetSpecialItemBonus(ITEM_ENCHANTMENT enchantment)
 
unsigned __int16 skillBodybuilding
 
void SetUnconcious(GameTime time)
 
@ CHARACTER_EXPRESSION_CURSED
 
@ CHARACTER_EXPRESSION_UNCONCIOUS
 
unsigned int uSkillPoints
 
std::array< unsigned __int16, 37 > pActiveSkills
 
void WearItem(unsigned int uItemID)
 
@ PLAYER_BUFF_RESIST_FIRE
 
PlayerSpellbookChapter pLightSpellbook
 
int FindFreeInventoryListSlot()
 
void SalesProcess(unsigned int inventory_idnx, int item_index, int _2devent_idx)
 
unsigned __int16 skillLeather
 
unsigned __int16 skillDisarmTrap
 
int GetActualIntelligence()
 
bool IsEradicated() const
 
unsigned __int16 skillWater
 
ItemGen * GetMainHandItem()
 
@ SPEECH_IDENTIFY_MONSTER_WEAKER
 
void OnInventoryLeftClick()
 
@ PLAYER_CLASS_ARCH_DRUID
 
void EquipBody(ITEM_EQUIP_TYPE uEquipType)
 
@ CHARACTER_EXPRESSION_13
 
@ CHARACTER_EXPRESSION_22
 
void SetPertified(GameTime time)
 
bool WearsItemAnyWhere(int item_id)
 
@ PLAYER_SKILL_BODYBUILDING
 
unsigned __int16 skillAlchemy
 
unsigned __int16 uExpressionTimeLength
 
@ PLAYER_SKILL_PERCEPTION
 
void SetCondInsaneWithBlockCheck(int blockable)
 
@ CHARACTER_EXPRESSION_FALLING
 
@ CHARACTER_EXPRESSION_29
 
std::array< int, 126 > pInventoryMatrix
 
void SetCondDeadWithBlockCheck(int blockable)
 
@ CHARACTER_EXPRESSION_38
 
unsigned __int16 skillMonsterId
 
unsigned __int16 uAccuracyBonus
 
bool CompareVariable(enum VariableType VarNum, signed int pValue)
 
bool HasUnderwaterSuitEquipped()
 
std::array< char, 99 > bHaveSpell
 
unsigned __int16 skillStaff
 
void SetCondUnconsciousWithBlockCheck(int blockable)
 
@ CHARACTER_EXPRESSION_25
 
std::array< ItemGen, 138 > pOwnItems
 
std::array< char, 11 > bIsSpellAvailable
 
int StealFromShop(ItemGen *itemToSteal, int extraStealDifficulty, int reputation, int extraStealFine, int *fineIfFailed)
 
bool DiscardConditionIfLastsLongerThan(unsigned int uCondition, GameTime time)
 
unsigned __int16 skillPlate
 
@ CHARACTER_EXPRESSION_28
 
int CreateItemInInventory(unsigned int uSlot, unsigned int uItemID)
 
@ CHARACTER_EXPRESSION_WEAK
 
void SetPoisonMedium(GameTime time)
 
int GetActualResistance(enum CHARACTER_ATTRIBUTE_TYPE a2)
 
@ CHARACTER_EXPRESSION_19
 
@ CHARACTER_EXPRESSION_PARALYZED
 
void RemoveItemAtInventoryIndex(unsigned int uSlot)
 
void SetCondWeakWithBlockCheck(int blockable)
 
ItemGen * GetNthEquippedIndexItem(int index)
 
bool CanTrainToNextLevel()
 
void PlayAwardSound_Anim()
 
unsigned __int16 uWillpower
 
unsigned __int16 skillThievery
 
void SetCondition(unsigned int uConditionIdx, int blockable)
 
unsigned int GetItemListAtInventoryIndex(int inout_item_cell)
 
unsigned __int16 uExpressionTimePassed
 
int GetBaseIdentifyPrice(float price_multiplier)
 
unsigned __int16 skillChain
 
CHARACTER_EXPRESSION_ID expression
 
@ CHARACTER_EXPRESSION_26
 
@ PLAYER_CLASS_PRIEST_OF_SUN
 
void AddVariable(enum VariableType var, signed int val)
 
std::array< PlayerSpellbookChapter, 9 > pChapters
 
@ CHARACTER_EXPRESSION_14
 
bool ShouldLoadTexturesForRaceAndGender(unsigned int _this)
 
@ PLAYER_SKILL_MEDITATION
 
bool WearsItem(int item_id, ITEM_EQUIP_TYPE equip_type)
 
float GetArmorRecoveryMultiplierFromSkillLevel(unsigned char armour_skill_type, float param2, float param3, float param4, float param5)
 
String GetMeleeDamageString()
 
int CalculateMeleeDmgToEnemyWithWeapon(ItemGen *weapon, unsigned int uTargetActorID, bool addOneDice)
 
unsigned char _achieved_awards_bits[64]
 
void SetDead(GameTime time)
 
enum CHARACTER_RACE GetRace() const
 
unsigned __int16 uLuckBonus
 
@ CHARACTER_EXPRESSION_INVALID
 
int GetMeleeDamageMaximal()
 
unsigned __int16 uEndurance
 
void PlayAwardSound_Anim98()
 
@ CHARACTER_EXPRESSION_56
 
bool NothingOrJustBlastersEquipped()
 
@ PLAYER_SKILL_TRAP_DISARM
 
unsigned __int16 uTimeToRecovery
 
@ CHARACTER_EXPRESSION_DMGRECVD_MODERATE
 
unsigned int GetSpellSchool(unsigned int uSpellID)
 
@ CHARACTER_EXPRESSION_32
 
void SetDiseaseSevere(GameTime time)
 
PlayerSpellbookChapter pMindSpellbook
 
int _expression21_frameset
 
@ CHARACTER_EXPRESSION_31
 
bool HasItem(unsigned int uItemID, bool checkHeldItem)
 
GLfixed GLfixed GLint GLint order
 
unsigned __int16 skillShield
 
unsigned int GetMultiplierForSkillLevel(PLAYER_SKILL_TYPE uSkillType, int mult1, int mult2, int mult3, int mult4)
 
std::array< unsigned int, 6 > uRings
 
@ PLAYER_BUFF_INTELLIGENCE
 
static const unsigned int INVETORYSLOTSWIDTH
 
int GetParameterBonus(int player_parameter)
 
void PlayAwardSound_Anim97_Face(PlayerSpeech speech)
 
int AddItem2(int uSlot, ItemGen *Src)
 
void PlayAwardSound_Anim_Face(PlayerSpeech speech)
 
@ SPEECH_IDENTIFY_MONSTER_106
 
unsigned __int16 uIntelligenceBonus
 
ItemGen pInventoryItemList[126]
 
unsigned __int8 uCurrentFace
 
void SetCursed(GameTime time)
 
PlayerSpellbookChapter pSpiritSpellbook
 
void SetParalyzed(GameTime time)
 
PLAYER_SEX GetSexByVoice()
 
ItemGen * GetItem(unsigned int PlayerEquipment::*itemPos)
 
void PutItemArInventoryIndex(int uItemID, int itemListPos, int uSlot)
 
unsigned __int16 uSpeedBonus
 
@ PLAYER_CLASS_MASTER_ARCHER
 
bool CanRepair(ItemGen *pItem)
 
@ PLAYER_CLASS_BOUNTY_HUNTER
 
unsigned __int16 skillBody
 
@ PLAYER_CLASS_BLACK_KNIGHT
 
unsigned __int16 skillMind
 
std::array< GameTime, 20 > conditions_times
 
unsigned __int16 skillDark
 
ItemGen * GetOffHandItem()
 
int GetBaseBuyingPrice(int uRealValue, float price_multiplier)
 
bool CanEquip_RaceAndAlignmentCheck(unsigned int uItemID)
 
@ CHARACTER_EXPRESSION_27
 
@ CHARACTER_EXPRESSION_DISEASED
 
PLAYER_CLASS_TYPE classType
 
GLboolean GLboolean GLboolean b
 
bool IsDwarfPresentInParty(bool b)
 
int GetBaseIntelligence()
 
bool AddItem(struct ItemGen *pItem)
 
PlayerSpellbookChapter pWaterSpellbook
 
unsigned __int16 skillEarth
 
unsigned int uRequiredMana
 
bool HasEnchantedItemEquipped(int uEnchantment)
 
@ PLAYER_BUFF_RESIST_EARTH
 
@ CHARACTER_EXPRESSION_ERADICATED
 
unsigned int GetMajorConditionIdx()
 
std::vector< LloydBeacon > vBeacons
 
@ CHARACTER_EXPRESSION_18
 
int SelectPhrasesTransaction(ItemGen *pItem, int building_type, int BuildID_2Events, int a5)
 
@ CHARACTER_EXPRESSION_57
 
unsigned __int16 skillUnarmed
 
@ PLAYER_CLASS_WARRIOR_MAGE
 
bool SetBeacon(size_t index, size_t power)
 
unsigned __int16 uIntelligence
 
unsigned int SkillToMastery(unsigned int skill_value)
 
void SetZombie(GameTime time)
 
int GetMeleeDamageMinimal()
 
@ PLAYER_BUFF_RESIST_BODY
 
@ CHARACTER_EXPRESSION_37
 
@ CHARACTER_EXPRESSION_15
 
@ PLAYER_BUFF_REGENERATION
 
int CalculateIncommingDamage(DAMAGE_TYPE dmg_type, int amount)
 
unsigned int GetExperienceDisplayColor()
 
void PlaySound(PlayerSpeech speech, int a3)
 
void Reset(PLAYER_CLASS_TYPE classType)
 
@ CHARACTER_EXPRESSION_54
 
void PlayAwardSound_Anim98_Face(PlayerSpeech speech)
 
unsigned __int16 skillAir
 
int GetPriceIdentification(float price_multiplier)
 
void DamagePlayerFromMonster(unsigned int uObjID, int a2, struct Vec3_int_ *pPos, signed int a4)
 
int GetActualAttribute(CHARACTER_ATTRIBUTE_TYPE attrId, unsigned short Player::*attrValue, unsigned short Player::*attrBonus)
 
int GetBaseSellingPrice(int uRealValue, float price_multiplier)
 
@ PLAYER_BUFF_RESIST_WATER
 
void PlayAwardSound_Anim97()
 
unsigned __int64 uExperience
 
void SetWeak(GameTime time)
 
PLAYER_SKILL_TYPE GetEquippedItemSkillType(ITEM_EQUIP_TYPE uEquipSlot)
 
bool CanCastSpell(unsigned int uRequiredMana)
 
int GetActualSkillLevel(PLAYER_SKILL_TYPE uSkillType)
 
@ CHARACTER_EXPRESSION_POISONED
 
bool HasItemEquipped(ITEM_EQUIP_TYPE uEquipIndex)
 
void SetAsleep(GameTime time)
 
void SetDiseaseWeak(GameTime time)
 
int HasSkill(unsigned int uSkillType)
 
@ CHARACTER_EXPRESSION_24
 
@ PLAYER_BUFF_HAMMERHANDS
 
int GetBuyingPrice(unsigned int uRealValue, float price_multiplier)
 
@ PLAYER_SKILL_ARMSMASTER
 
int CreateItemInInventory2(unsigned int index, ItemGen *Src)
 
void SetDiseaseMedium(GameTime time)
 
@ CHARACTER_EXPRESSION_21
 
PlayerSpellbookChapter pBodySpellbook
 
void SetVariable(enum VariableType var, signed int a3)
 
bool IsPlayerHealableByTemple()
 
unsigned __int8 uQuickSpell
 
unsigned __int16 skillSpirit
 
unsigned __int16 skillMace
 
int PlayerCreation_GetUnspentAttributePointCount()
 
bool ProfessionOrGuildFlagsCorrect(unsigned int uClass, int a3)
 
PlayerEquipment pEquipment
 
void SetEradicated(GameTime time)
 
@ CHARACTER_EXPRESSION_20
 
@ PLAYER_BUFF_PRESERVATION
 
@ CHARACTER_EXPRESSION_DRUNK
 
void SetPoisonWeak(GameTime time)
 
@ CHARACTER_EXPRESSION_FEAR
 
unsigned int GetActualAge()
 
int GetPriceSell(ItemGen itemx, float price_multiplier)
 
std::array< SpellBuff, 24 > pPlayerBuffs
 
bool CanFitItem(unsigned int uSlot, unsigned int uItemID)
 
unsigned __int16 skillPerception
 
int GetConditionDaysPassed(unsigned int uCondition)
 
void DecreaseAttribute(int eAttribute)
 
ItemGen pEquippedItems[12]
 
int CycleCharacter(bool backwards)
 
@ PLAYER_CLASS_GREAT_DRUID
 
unsigned int GetStatColor(int uStat)
 
static void _42ECB5_PlayerAttacksActor()
 
PLAYER_SKILL_TYPE GetSkillIdxByOrder(signed int order)
 
NZIArray< struct Player *, 5 > pPlayers
 
enum PlayerSpeech PlayerSpeechID
 
unsigned __int16 skillFire
 
PlayerSpellbookChapter pFireSpellbook
 
void SetSkillByEvent(unsigned __int16 Player::*skillToSet, unsigned __int16 skillValue)