World of Might and Magic  0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
Items.h
См. документацию.
1 #pragma once
2 
3 #include <array>
4 #include <map>
5 
6 #include "Engine/Engine.h"
7 #include "Engine/Time.h"
8 #include "Engine/NZIArray.h"
9 
10 enum DAMAGE_TYPE : unsigned int {
11  DMGT_FIRE = 0,
13  DMGT_COLD = 2,
18  DMGT_MIND = 7,
19  DMGT_BODY = 8,
21  DMGT_DARK = 10
22 };
23 
24 /* 338 */
25 enum ITEM_FLAGS : unsigned int {
27  ITEM_BROKEN = 0x2,
34  ITEM_STOLEN = 0x100,
35  ITEM_HARDENED = 0x200,
36 };
37 
38 enum ITEM_ENCHANTMENT : unsigned int {
40 
41  ITEM_ENCHANTMENT_OF_COLD = 4, // Adds 3-4 points of cold damage
42  ITEM_ENCHANTMENT_OF_FROST = 5, // Adds 6-8 points of cold damage
43  ITEM_ENCHANTMENT_OF_ICE = 6, // Adds 9-12 points of cold damage
44  ITEM_ENCHANTMENT_OF_SPARKS = 7, // Adds 2-5 points of electrical damage
45  ITEM_ENCHANTMENT_OF_LIGHTNING = 8, // Adds 4-10 points of electrical damage
46  ITEM_ENCHANTMENT_OF_THUNDERBOLTS = 9, // Adds 6-15 points of electrical damage
47  ITEM_ENCHANTMENT_OF_FIRE = 10, // Adds 1-6 points of fire damage
48  ITEM_ENCHANTMENT_OF_FLAME = 11, // Adds 2-12 points of fire damage
49  ITEM_ENCHANTMENT_OF_INFERNOS = 12, // Adds 3-18 points of fire damage
50  ITEM_ENCHANTMENT_OF_POISON = 13, // Adds 5 points of body damage
51  ITEM_ENCHANTMENT_OF_VENOM = 14, // Adds 8 points of body damage
52  ITEM_ENCHANTMENT_OF_ACID = 15, // Adds 12 points of body damage
53  ITEM_ENCHANTMENT_VAMPIRIC = 16, // 20% of damage dealt given to wielder
54  ITEM_ENCHANTMENT_OF_RECOVERY = 17, // Increases rate of Recovery
55 
56  ITEM_ENCHANTMENT_OF_FORCE = 24, // Increases Knockback
57 
59  ITEM_ENCHANTMENT_OF_DARKNESS = 41, // Vampiric and Swift
60 
62  46, // Adds 10-20 points of fire damage and +25 Might
63 };
64 
70 };
71 
72 /* 330 */
73 enum ITEM_TYPE {
74  ITEM_NULL = 0,
77  ITEM_AXE_1 = 23,
88  ITEM_92 = 92,
90  ITEM_BOOTS_1 = 115,
94  ITEM_160 = 160,
95  ITEM_161 = 161,
96  ITEM_162 = 162,
112  ITEM_SULFUR = 212,
113  ITEM_GARNET = 213,
153  ITEM_ARTIFACT_PUCK = 500, // 0x1F4,
158  ITEM_ARTIFACT_YORUBA = 505, // 1F9
161  ITEM_ARTIFACT_GIBBET = 508, // 1FA
162  ITEM_ARTIFACT_CHARELE = 509, // 1FA
173  ITEM_RELIC_KELEBRIM = 520, // 208
178  ITEM_RELIC_TWILIGHT = 525, // 20D
184  ITEM_ARTIFACT_ELFBANE = 531, // 212
186  ITEM_ELVEN_CHAINMAIL = 533, // 215
198  ITEM_RARE_GHOST_RING = 545, // 220
199  ITEM_RARE_FAERIE_RING = 546, // 220
200  ITEM_RARE_SUN_CLOAK = 547, // 223
201  ITEM_RARE_MOON_CLOAK = 548, // 224
202  ITEM_RARE_ZOKKARS_AXE = 549, // 224
210 
212 
213  ITEM_LUTE = 632,
216 
218 
220 
223 };
224 
225 /* 331 */
244  EQIUP_ANY = 16,
247  EQUIP_GEM = 19,
249 };
250 
251 struct Player;
252 
253 typedef struct CEnchantment {
254  CEnchantment(int bonus, unsigned __int16 Player::*skillPtr = nullptr)
255  : statPtr(skillPtr), statBonus(bonus) {}
256 
259 } CEnchantment;
260 
261 /* 64 */
262 #pragma pack(push, 1)
263 struct ItemGen { // 0x24
264  static void AddToMap(
265  std::map<int, std::map<CHARACTER_ATTRIBUTE_TYPE, CEnchantment *> *> &maptoadd,
266  int enchId, CHARACTER_ATTRIBUTE_TYPE attrId, int bonusValue = 0,
267  uint16_t Player::*skillPtr = nullptr);
268 
269  static std::map<int, std::map<CHARACTER_ATTRIBUTE_TYPE, CEnchantment *> *> regularBonusMap;
270  static std::map<int, std::map<CHARACTER_ATTRIBUTE_TYPE, CEnchantment *> *> specialBonusMap;
271  static std::map<int, std::map<CHARACTER_ATTRIBUTE_TYPE, CEnchantment *> *> artifactBonusMap;
272 
273  static void PopulateSpecialBonusMap();
274  static void PopulateRegularBonusMap();
275  static void PopulateArtifactBonusMap();
276  static void ClearItemBonusMaps();
277 
278  inline void ResetEnchantAnimation() { uAttributes &= 0xFFFFFF0F; }
279  inline bool ItemEnchanted() const {
280  return (uAttributes & ITEM_ENCHANT_ANIMATION) != 0;
281  }
282  inline bool AuraEffectRed() const {
284  }
285  inline bool AuraEffectBlue() const {
287  }
288  inline bool AuraEffectGreen() const {
290  }
291  inline bool AuraEffectPurple() const {
292  return (uAttributes & ITEM_ENCHANT_ANIMATION) ==
294  }
295 
297  CHARACTER_ATTRIBUTE_TYPE attrToGet,
298  int *additiveBonus,
299  int *halfSkillBonus);
301  int *bonusSum);
303 
304  inline bool IsBroken() { return (uAttributes & ITEM_BROKEN) != 0; }
305  inline void SetBroken() { uAttributes |= ITEM_BROKEN; }
306  inline bool IsIdentified() { return (uAttributes & ITEM_IDENTIFIED) != 0; }
308  inline bool IsStolen() { return (uAttributes & ITEM_STOLEN) != 0; }
309  inline void SetStolen() { uAttributes |= ITEM_STOLEN; }
310 
311  bool GenerateArtifact();
312  unsigned int GetValue();
315  void UpdateTempBonus(GameTime time);
316  void Reset();
317  int _439DF3_get_additional_damage(DAMAGE_TYPE *a2, bool *vampiyr);
318 
320  unsigned char GetPlayerSkillType();
321  char *GetIconName();
322  unsigned __int8 GetDamageDice();
323  unsigned __int8 GetDamageRoll();
324  unsigned __int8 GetDamageMod();
325  bool MerchandiseTest(int _2da_idx);
326  int uItemID; // 0
330  special_enchantment; // 25 +5 levels //0c
331  // 16 Drain Hit Points from target.
332  // 35 Increases chance of disarming.
333  // 39 Double damage vs Demons.
334  // 40 Double damage vs Dragons
335  // 45 +5 Speed and Accuracy
336  // 56 +5 Might and Endurance.
337  // 57 +5 Intellect and Personality.
338  // 58 Increased Value.
339  // 60 +3 Unarmed and Dodging skills
340  // 61 +3 Stealing and Disarm skills.
341  // 59 Increased Weapon speed.
342  // 63 Double Damage vs. Elves.
343  // 64 Double Damage vs. Undead.
344  // 67 Adds 5 points of Body damage and +2 Disarm
345  // skill. 68 Adds 6-8 points of Cold damage and
346  // +5 Armor Class. 71 Prevents drowning damage.
347  // 72 Prevents falling damage.
348  int uNumCharges; // 10
349  unsigned int uAttributes; // 14
350  unsigned __int8 uBodyAnchor; // 18
351  char uMaxCharges; // 19
352  char uHolderPlayer; // 1A
353  char field_1B; // 1B
354  GameTime expirte_time; // unsigned __int64 uExpireTime; //1C
355 };
356 #pragma pack(pop)
357 
358 /* 175 */
359 #pragma pack(push, 1)
360 struct ItemDesc { // 30h
361  // Item # |Pic File|Name|Value|Equip Stat|Skill Group|Mod1|Mod2|material|
364  char *pIconName; // 0 4
365  char *pName; // 4 8
366  char *pUnidentifiedName; // 8 c
367  char *pDescription; // 0c 10
368  unsigned int uValue; // 10 14
369  unsigned __int16 uSpriteID; // 14 18
370  __int16 field_1A; // 16
371  signed __int16 uEquipX; // 18 1c
372  signed __int16 uEquipY; // 1a 1e
374  unsigned __int8 uSkillType; // 1d 21
375  unsigned __int8 uDamageDice; // 1e 22
376  unsigned __int8 uDamageRoll; // 1f 23
377  unsigned __int8 uDamageMod; // 20 24
378  unsigned __int8 uMaterial; // 21 25
379  char _additional_value; // 22 26
380  char _bonus_type; // 23 27
381  char _bonus_strength; // 24 28
382  char field_25; // 25 29
383  char field_26; // 26 2A
384  char field_27; // 27 2b
385  union {
386  unsigned __int8 uChanceByTreasureLvl[6];
387  struct {
388  unsigned __int8 uChanceByTreasureLvl1; // 28 2c
389  unsigned __int8 uChanceByTreasureLvl2; // 29 2d
390  unsigned __int8 uChanceByTreasureLvl3; // 2A 2e
391  unsigned __int8 uChanceByTreasureLvl4; // 2B 2f
392  unsigned __int8 uChanceByTreasureLvl5; // 2C 30
393  unsigned __int8 uChanceByTreasureLvl6; // 2D 32
394  };
395  };
396  unsigned char uItemID_Rep_St; // 2e 32
397  char field_2f;
398 };
399 #pragma pack(pop)
400 
401 /* 177 */
402 #pragma pack(push, 1)
403 struct ItemEnchantment { // Bonus|Sta|Of
404  // Name|Arm|Shld|Helm|Belt|Cape|Gaunt|Boot|Ring|Amul
405  char *pBonusStat;
406  char *pOfName;
407  /* union{
408  struct {
409  unsigned char to_arm;
410  unsigned char to_shld;
411  unsigned char to_helm;
412  unsigned char to_belt;
413  unsigned char to_cape;
414  unsigned char to_gaunt;
415  unsigned char to_boot;
416  unsigned char to_ring;
417  unsigned char to_amul;
418  }; */
419  unsigned char to_item[12];
420  // };
421 };
422 #pragma pack(pop)
423 
424 /* 178 */
425 #pragma pack(push, 1)
426 struct ItemSpecialEnchantment { // 1Ch
427  // Bonus Stat|Name
428  // Add|W1|W2|Miss|Arm|Shld|Helm|Belt|Cape|Gaunt|Boot|Ring|Amul|Value|Lvl|Description
429  // fo special Bonuses and values
430 
431  char *pBonusStatement; // 0
432  char *pNameAdd; // 4
433  char to_item_apply[12]; // 8
434  int iValue; // 14
435  int iTreasureLevel; // 18
436 };
437 #pragma pack(pop)
438 
439 #pragma pack(push, 1)
440 struct BonusRange {
441  unsigned int minR;
442  unsigned int maxR;
443 };
444 #pragma pack(pop)
445 
446 /* 176 */
447 #pragma pack(push, 1)
448 struct ItemsTable {
449  void Initialize();
450  void LoadPotions();
451  void LoadPotionNotes();
452  void GenerateItem(int treasure_level, unsigned int uTreasureType,
453  ItemGen *pItem);
454  void SetSpecialBonus(ItemGen *pItem);
455  bool IsMaterialSpecial(ItemGen *pItem);
456  bool IsMaterialNonCommon(ItemGen *pItem);
457  void Release();
458 
463  char field_9FC4[5000];
464  char field_B348[5000];
465  char field_C6D0[5000];
466  char field_DA58[5000];
467  char field_EDE0[384];
468  unsigned __int16 potion_data[50][50]; // 77B2h*2=EF64h -102ECh
469  unsigned __int16 potion_note[50][50]; // 8176h*2=102ECh -11674h
470  char *pItemsTXT_Raw; // 11674h
472  char *pStdItemsTXT_Raw; // 1167Ch
473  char *pSpcItemsTXT_Raw; // 11680h
474  unsigned int uChanceByTreasureLvlSumm[6]; // 11684
475  unsigned int uBonusChanceStandart[6]; // 1169c
476  unsigned int uBonusChanceSpecial[6]; // 116B4
477  unsigned int uBonusChanceWpSpecial[6]; // 116cc -116e4
478  unsigned int pEnchantmentsSumm[9]; // 116E4h -11708h
479  BonusRange bonus_ranges[6]; // 45C2h*4 =11708h
480  unsigned int pSpecialEnchantmentsSumm[24]; // 11738h
481  unsigned int pSpecialEnchantments_count; // 11798h
486 };
487 #pragma pack(pop)
488 
489 extern std::array<const char, 5> uItemsAmountPerShopType;
491 
492 extern struct ItemsTable *pItemsTable;
493 
494 /*
495 +10 to all Resistances. 1
496  +10 to all Seven Statistics. 2
497  Explosive Impact! 3
498  Adds 3-4 points of Cold damage. 4
499  Adds 6-8 points of Cold damage. 5
500  Adds 9-12 points of Cold damage. 6
501  Adds 2-5 points of Electrical damage. 7
502  Adds 4-10 points of Electrical damage. 8
503  Adds 6-15 points of Electrical damage. 9
504  Adds 1-6 points of Fire damage. 10
505  Adds 2-12 points of Fire damage. 11
506  Adds 3-18 points of Fire damage. 12
507  Adds 5 points of Body damage. 13
508  Adds 8 points of Body damage. 14
509  Adds 12 points of Body damage. 15
510  Drain Hit Points from target. 16
511  Increases rate of Recovery. 17
512  Wearer resistant to Diseases. 18
513  Wearer resistant to Insanity. 19
514  Wearer resistant to Paralysis. 20
515  Wearer resistant to Poison. 21
516  Wearer resistant to Sleep. 22
517  Wearer resistant to Stone. 23
518  Increased Knockback. 24
519  +5 Level. 25
520  Increases effect of all Air spells. 26
521  Increases effect of all Body spells. 27
522  Increases effect of all Dark spells. 28
523  Increases effect of all Earth spells. 29
524  Increases effect of all Fire spells. 30
525  Increases effect of all Light spells. 31
526  Increases effect of all Mind spells. 32
527  Increases effect of all Spirit spells. 33
528  Increases effect of all Water spells. 34
529  Increases chance of Disarming. 35
530  Half damage from all missile attacks. 36
531  Regenerate Hit points over time. 37
532  Regenerate Spell points over time. 38
533  Double damage vs Demons. 39
534  Double damage vs Dragons 40
535  Drain Hit Points from target and Increased Weapon speed. 41
536  +1 to Seven Stats, HP, SP, Armor, Resistances. 42
537  +10 to Endurance, Armor, Hit points. 43
538  +10 Hit points and Regenerate Hit points over time. 44
539  +5 Speed and Accuracy. 45
540  Adds 10-20 points of Fire damage and +25 Might. 46
541  +10 Spell points and Regenerate Spell points over time. 47
542  +15 Endurance and +5 Armor. 48
543  +10 Intellect and Luck. 49
544  +30 Fire Resistance and Regenerate Hit points over time. 50
545  +10 Spell points, Speed, Intellect. 51
546  +10 Endurance and Accuracy. 52
547  +10 Might and Personality. 53
548  +15 Endurance and Regenerate Hit points over time. 54
549  +15 Luck and Regenerate Spell points over time. 55
550  +5 Might and Endurance. 56
551  +5 Intellect and Personality. 57
552  Increased Value. 58
553  Increased Weapon speed. 59
554  +3 Unarmed and Dodging skills. 60
555  +3 Stealing and Disarm skills. 61
556  +3 ID Item and ID Monster skills. 62
557  Double Damage vs. Elves. 63
558  Double Damage vs. Undead. 64
559  Double Damage vs. Titans. 65
560  Regenerate Spell points and Hit points over time. 66
561  Adds 5 points of Body damage and +2 Disarm skill. 67
562  Adds 6-8 points of Cold damage and +5 Armor Class. 68
563  +20 Air Resistance and Shielding. 69
564  +10 Water Resistance and +2 Alchemy skill. 70
565  Prevents damage from drowning. 71
566  Prevents damage from falling. 72
567 */
568 
569 /* 391 */
570 #pragma pack(push, 1)
571 struct SummonedItem {
572  //----- (00493F79) --------------------------------------------------------
573  void Initialize(GameTime duration) {
574  this->field_0_expire_second = duration.GetSecondsFraction();
575  this->field_4_expire_minute = duration.GetMinutesFraction();
576  this->field_8_expire_hour = duration.GetHoursOfDay();
577  this->field_10_expire_week = duration.GetWeeksOfMonth();
578  this->field_C_expire_day = duration.GetDaysOfMonth();
579  this->field_14_exprie_month = duration.GetMonths();
580  this->field_18_expire_year = duration.GetYears() + game_starting_year;
581  }
582 
590 };
591 #pragma pack(pop)
592 
593 int GetItemTextureFilename(char *pOut, signed int item_id, int index,
594  int shoulder);
ITEM_ARTIFACT_CORSAIR
@ ITEM_ARTIFACT_CORSAIR
Definition: Items.h:156
ITEM_SPELLBOOK_BODY_FIRST_AID
@ ITEM_SPELLBOOK_BODY_FIRST_AID
Definition: Items.h:147
GetItemTextureFilename
int GetItemTextureFilename(char *pOut, signed int item_id, int index, int shoulder)
Definition: Items.cpp:1538
uint16_t
unsigned __int16 uint16_t
Definition: SDL_config.h:37
ITEM_160
@ ITEM_160
Definition: Items.h:94
ITEM_POTION_HARDEN_ITEM
@ ITEM_POTION_HARDEN_ITEM
Definition: Items.h:129
EQUIP_HELMET
@ EQUIP_HELMET
Definition: Items.h:232
ItemsTable::IsMaterialNonCommon
bool IsMaterialNonCommon(ItemGen *pItem)
Definition: Items.cpp:487
ItemGen::uHolderPlayer
char uHolderPlayer
Definition: Items.h:352
ItemEnchantment
Definition: Items.h:403
ItemsTable::bonus_ranges
BonusRange bonus_ranges[6]
Definition: Items.h:479
ItemDesc::_bonus_type
char _bonus_type
Definition: Items.h:380
ITEM_ARTIFACT_LEAGUE_BOOTS
@ ITEM_ARTIFACT_LEAGUE_BOOTS
Definition: Items.h:165
Player
Definition: Player.h:401
ITEM_MATERIAL
ITEM_MATERIAL
Definition: Items.h:65
ITEM_AURA_EFFECT_GREEN
@ ITEM_AURA_EFFECT_GREEN
Definition: Items.h:31
DMGT_PHISYCAL
@ DMGT_PHISYCAL
Definition: Items.h:15
ITEM_RARE_LADY_CARMINES_DAGGER
@ ITEM_RARE_LADY_CARMINES_DAGGER
Definition: Items.h:193
uItemsAmountPerShopType
std::array< const char, 5 > uItemsAmountPerShopType
Definition: UIHouses.cpp:341
ItemGen::GetDamageMod
unsigned __int8 GetDamageMod()
Definition: Items.cpp:1533
ITEM_RARE_SUN_CLOAK
@ ITEM_RARE_SUN_CLOAK
Definition: Items.h:200
ITEM_ARTEFACT_ULLYSES
@ ITEM_ARTEFACT_ULLYSES
Definition: Items.h:163
CEnchantment
Definition: Items.h:253
DMGT_DARK
@ DMGT_DARK
Definition: Items.h:21
ItemDesc::field_25
char field_25
Definition: Items.h:382
ITEM_OBSIDIAN
@ ITEM_OBSIDIAN
Definition: Items.h:116
ITEM_POPPYSNAPS
@ ITEM_POPPYSNAPS
Definition: Items.h:110
ITEM_ENCHANTMENT_OF_ICE
@ ITEM_ENCHANTMENT_OF_ICE
Definition: Items.h:43
ITEM_RELIC_HARECS_LEATHER
@ ITEM_RELIC_HARECS_LEATHER
Definition: Items.h:169
ITEM_PLATE_1
@ ITEM_PLATE_1
Definition: Items.h:86
ITEM_DRAGON_EYE
@ ITEM_DRAGON_EYE
Definition: Items.h:104
EQUIP_CLOAK
@ EQUIP_CLOAK
Definition: Items.h:234
ITEM_TYPE
ITEM_TYPE
Definition: Items.h:73
ITEM_POTION_CATALYST
@ ITEM_POTION_CATALYST
Definition: Items.h:121
EQUIP_BELT
@ EQUIP_BELT
Definition: Items.h:233
ItemsTable::pRndItemsTXT_Raw
char * pRndItemsTXT_Raw
Definition: Items.h:471
ItemsTable::uBonusChanceStandart
unsigned int uBonusChanceStandart[6]
Definition: Items.h:475
CEnchantment::statBonus
int statBonus
Definition: Items.h:258
ITEM_TEMPLE_IN_A_BOTTLE
@ ITEM_TEMPLE_IN_A_BOTTLE
Definition: Items.h:219
ItemDesc::uValue
unsigned int uValue
Definition: Items.h:368
ITEM_RARE_VAMPIRES_CAPE
@ ITEM_RARE_VAMPIRES_CAPE
Definition: Items.h:203
ItemsTable::SetSpecialBonus
void SetSpecialBonus(ItemGen *pItem)
Definition: Items.cpp:472
ItemDesc::uEquipType
ITEM_EQUIP_TYPE uEquipType
Definition: Items.h:373
ITEM_ENCHANT_ANIMATION
@ ITEM_ENCHANT_ANIMATION
Definition: Items.h:33
ItemGen::GetItemEquipType
ITEM_EQUIP_TYPE GetItemEquipType()
Definition: Items.cpp:1504
MATERIAL_ARTEFACT
@ MATERIAL_ARTEFACT
Definition: Items.h:67
ItemGen::SetIdentified
void SetIdentified()
Definition: Items.h:307
ptr_50C9A4_ItemToEnchant
ItemGen * ptr_50C9A4_ItemToEnchant
Definition: Items.cpp:35
ITEM_ARTIFACT_YORUBA
@ ITEM_ARTIFACT_YORUBA
Definition: Items.h:158
DMGT_FIRE
@ DMGT_FIRE
Definition: Items.h:11
EQUIP_BOOK
@ EQUIP_BOOK
Definition: Items.h:243
EQUIP_SHIELD
@ EQUIP_SHIELD
Definition: Items.h:231
ITEM_LICH_JAR_EMPTY
@ ITEM_LICH_JAR_EMPTY
Definition: Items.h:208
ItemsTable::field_1179E
char field_1179E
Definition: Items.h:484
ITEM_ENCHANTMENT_OF_FLAME
@ ITEM_ENCHANTMENT_OF_FLAME
Definition: Items.h:48
ItemGen::field_1B
char field_1B
Definition: Items.h:353
ItemsTable::field_C6D0
char field_C6D0[5000]
Definition: Items.h:465
ItemDesc::uDamageRoll
unsigned __int8 uDamageRoll
Definition: Items.h:376
ITEM_RARE_PERFECT_BOW
@ ITEM_RARE_PERFECT_BOW
Definition: Items.h:195
EQUIP_REAGENT
@ EQUIP_REAGENT
Definition: Items.h:240
ITEM_RARE_CLANKERS_AMULET
@ ITEM_RARE_CLANKERS_AMULET
Definition: Items.h:190
SummonedItem::field_4_expire_minute
int field_4_expire_minute
Definition: Items.h:584
ITEM_RARE_MOON_CLOAK
@ ITEM_RARE_MOON_CLOAK
Definition: Items.h:201
ITEM_HARDENED
@ ITEM_HARDENED
Definition: Items.h:35
GameTime::GetDaysOfMonth
int GetDaysOfMonth() const
Definition: Time.h:41
DMGT_SPIRIT
@ DMGT_SPIRIT
Definition: Items.h:17
ITEM_MERCURY
@ ITEM_MERCURY
Definition: Items.h:118
ITEM_RED_APPLE
@ ITEM_RED_APPLE
Definition: Items.h:211
ITEM_FLAGS
ITEM_FLAGS
Definition: Items.h:25
ITEM_FAERIE_PIPES
@ ITEM_FAERIE_PIPES
Definition: Items.h:214
EQIUP_ANY
@ EQIUP_ANY
Definition: Items.h:244
game_starting_year
int game_starting_year
Definition: mm7_data.cpp:193
ITEM_RELIC_PHYNAXIAN_CROWN
@ ITEM_RELIC_PHYNAXIAN_CROWN
Definition: Items.h:176
NZIArray< ItemDesc, 800 >
ITEM_RELIC_JUSTICE
@ ITEM_RELIC_JUSTICE
Definition: Items.h:180
ITEM_POTION_HASTE
@ ITEM_POTION_HASTE
Definition: Items.h:127
ItemsTable::LoadPotions
void LoadPotions()
Definition: Items.cpp:494
ITEM_ENCHANTMENT_OF_THUNDERBOLTS
@ ITEM_ENCHANTMENT_OF_THUNDERBOLTS
Definition: Items.h:46
ITEM_ENCHANTMENT_OF_POISON
@ ITEM_ENCHANTMENT_OF_POISON
Definition: Items.h:50
ItemGen::_439DF3_get_additional_damage
int _439DF3_get_additional_damage(DAMAGE_TYPE *a2, bool *vampiyr)
Definition: Items.cpp:42
EQUIP_MESSAGE_SCROLL
@ EQUIP_MESSAGE_SCROLL
Definition: Items.h:245
EQUIP_GOLD
@ EQUIP_GOLD
Definition: Items.h:246
ItemsTable::field_1179F
char field_1179F
Definition: Items.h:485
ITEM_POTION_BODY_RESISTANE
@ ITEM_POTION_BODY_RESISTANE
Definition: Items.h:135
ITEM_EQUIP_TYPE
ITEM_EQUIP_TYPE
Definition: Items.h:226
ITEM_FORGE_GAUNTLETS
@ ITEM_FORGE_GAUNTLETS
Definition: Items.h:187
ITEM_POTION_SWIFT_POTION
@ ITEM_POTION_SWIFT_POTION
Definition: Items.h:134
ITEM_GAUNTLETS_1
@ ITEM_GAUNTLETS_1
Definition: Items.h:89
ITEM_LONGSWORD_1
@ ITEM_LONGSWORD_1
Definition: Items.h:75
ITEM_RECIPE_REJUVENATION
@ ITEM_RECIPE_REJUVENATION
Definition: Items.h:221
ItemsTable::potion_note
unsigned __int16 potion_note[50][50]
Definition: Items.h:469
ItemDesc::field_2f
char field_2f
Definition: Items.h:397
ItemGen::AddToMap
static void AddToMap(std::map< int, std::map< CHARACTER_ATTRIBUTE_TYPE, CEnchantment * > * > &maptoadd, int enchId, CHARACTER_ATTRIBUTE_TYPE attrId, int bonusValue=0, uint16_t Player::*skillPtr=nullptr)
Definition: Items.cpp:1019
ItemDesc::field_27
char field_27
Definition: Items.h:384
ITEM_RARE_PERFECT_BOW_FIXED
@ ITEM_RARE_PERFECT_BOW_FIXED
Definition: Items.h:196
ItemGen::PopulateSpecialBonusMap
static void PopulateSpecialBonusMap()
Definition: Items.cpp:1036
ITEM_RARE_GROGNARDS_CUTLASS
@ ITEM_RARE_GROGNARDS_CUTLASS
Definition: Items.h:205
GameTime::GetYears
int GetYears() const
Definition: Time.h:35
ITEM_RELIC_AMUCK
@ ITEM_RELIC_AMUCK
Definition: Items.h:171
ItemGen::Reset
void Reset()
Definition: Items.cpp:133
ItemGen::regularBonusMap
static std::map< int, std::map< CHARACTER_ATTRIBUTE_TYPE, CEnchantment * > * > regularBonusMap
Definition: Items.h:269
ITEM_ARTIFACT_MINDS_EYE
@ ITEM_ARTIFACT_MINDS_EYE
Definition: Items.h:185
index
GLuint index
Definition: SDL_opengl_glext.h:663
ITEM_POTION_CURE_DISEASE
@ ITEM_POTION_CURE_DISEASE
Definition: Items.h:125
SummonedItem::field_0_expire_second
int field_0_expire_second
Definition: Items.h:583
ITEM_RARE_FAERIE_RING
@ ITEM_RARE_FAERIE_RING
Definition: Items.h:199
ITEM_LEATHER_1
@ ITEM_LEATHER_1
Definition: Items.h:84
ITEM_SPELLBOOK_FIRE_STRIKE
@ ITEM_SPELLBOOK_FIRE_STRIKE
Definition: Items.h:140
ItemGen::ItemEnchanted
bool ItemEnchanted() const
Definition: Items.h:279
ItemDesc::pIconName
char * pIconName
Definition: Items.h:364
ITEM_HORSESHOE
@ ITEM_HORSESHOE
Definition: Items.h:217
ItemDesc::uItemID_Rep_St
unsigned char uItemID_Rep_St
Definition: Items.h:396
Engine.h
ItemGen::uEnchantmentType
int uEnchantmentType
Definition: Items.h:327
ITEM_POTION_MAGIC_POTION
@ ITEM_POTION_MAGIC_POTION
Definition: Items.h:123
ITEM_ARTIFACT_GHOULSBANE
@ ITEM_ARTIFACT_GHOULSBANE
Definition: Items.h:160
ITEM_SPELLBOOK_TORCHLIGHT
@ ITEM_SPELLBOOK_TORCHLIGHT
Definition: Items.h:139
ITEM_SPELLBOOK_AIR_FEATHER_FALL
@ ITEM_SPELLBOOK_AIR_FEATHER_FALL
Definition: Items.h:141
ITEM_RELIC_MASH
@ ITEM_RELIC_MASH
Definition: Items.h:167
EQUIP_SPELL_SCROLL
@ EQUIP_SPELL_SCROLL
Definition: Items.h:242
ITEM_STOLEN
@ ITEM_STOLEN
Definition: Items.h:34
ItemsTable::field_B348
char field_B348[5000]
Definition: Items.h:464
ITEM_ARTIFACT_GIBBET
@ ITEM_ARTIFACT_GIBBET
Definition: Items.h:161
GameTime::GetMinutesFraction
int GetMinutesFraction() const
Definition: Time.h:38
ITEM_LUTE
@ ITEM_LUTE
Definition: Items.h:213
BonusRange::maxR
unsigned int maxR
Definition: Items.h:442
ITEM_METEORITE_FRAGMENT
@ ITEM_METEORITE_FRAGMENT
Definition: Items.h:106
ITEM_PHIMA_ROOT
@ ITEM_PHIMA_ROOT
Definition: Items.h:105
ITEM_POTION_RECHARGE_ITEM
@ ITEM_POTION_RECHARGE_ITEM
Definition: Items.h:128
ITEM_SPELLBOOK_LIGHT_LIGHT_BOLT
@ ITEM_SPELLBOOK_LIGHT_LIGHT_BOLT
Definition: Items.h:150
GameTime::GetSecondsFraction
int GetSecondsFraction() const
Definition: Time.h:37
SummonedItem::Initialize
void Initialize(GameTime duration)
Definition: Items.h:573
ItemGen::uAttributes
unsigned int uAttributes
Definition: Items.h:349
ITEM_ELVISH_TOADSTOOL
@ ITEM_ELVISH_TOADSTOOL
Definition: Items.h:109
ITEM_WAND_STUN
@ ITEM_WAND_STUN
Definition: Items.h:92
ItemDesc::uDamageDice
unsigned __int8 uDamageDice
Definition: Items.h:375
ItemGen::special_enchantment
ITEM_ENCHANTMENT special_enchantment
Definition: Items.h:330
ITEM_ENCHANTMENT_OF_VENOM
@ ITEM_ENCHANTMENT_OF_VENOM
Definition: Items.h:51
ItemsTable::pStdItemsTXT_Raw
char * pStdItemsTXT_Raw
Definition: Items.h:472
ItemGen::uMaxCharges
char uMaxCharges
Definition: Items.h:351
ItemDesc::uChanceByTreasureLvl3
unsigned __int8 uChanceByTreasureLvl3
Definition: Items.h:390
ITEM_ENCHANTMENT_OF_ACID
@ ITEM_ENCHANTMENT_OF_ACID
Definition: Items.h:52
ITEM_BOOTS_1
@ ITEM_BOOTS_1
Definition: Items.h:90
ItemsTable::field_1179D
char field_1179D
Definition: Items.h:483
DMGT_MAGICAL
@ DMGT_MAGICAL
Definition: Items.h:16
DAMAGE_TYPE
DAMAGE_TYPE
Definition: Items.h:10
ItemsTable::field_1179C
char field_1179C
Definition: Items.h:482
ITEM_POTION_SLAYING_POTION
@ ITEM_POTION_SLAYING_POTION
Definition: Items.h:137
ItemGen::AuraEffectRed
bool AuraEffectRed() const
Definition: Items.h:282
ItemEnchantment::pBonusStat
char * pBonusStat
Definition: Items.h:405
ITEM_162
@ ITEM_162
Definition: Items.h:96
ITEM_POTION_CURE_WEAKNESS
@ ITEM_POTION_CURE_WEAKNESS
Definition: Items.h:124
EQUIP_GEM
@ EQUIP_GEM
Definition: Items.h:247
SummonedItem::field_18_expire_year
int field_18_expire_year
Definition: Items.h:589
NZIArray.h
ITEM_POTION_STONE_TO_FLESH
@ ITEM_POTION_STONE_TO_FLESH
Definition: Items.h:136
EQUIP_ARMOUR
@ EQUIP_ARMOUR
Definition: Items.h:230
ItemGen::GetDisplayName
String GetDisplayName()
Definition: Items.cpp:610
ITEM_ENCHANTMENT_OF_RECOVERY
@ ITEM_ENCHANTMENT_OF_RECOVERY
Definition: Items.h:54
ITEM_ARTIFACT_LADYS_ESCORT
@ ITEM_ARTIFACT_LADYS_ESCORT
Definition: Items.h:189
ITEM_MOONSTONE
@ ITEM_MOONSTONE
Definition: Items.h:108
ITEM_ARTIFACT_HERMES_SANDALS
@ ITEM_ARTIFACT_HERMES_SANDALS
Definition: Items.h:182
ITEM_TEMP_BONUS
@ ITEM_TEMP_BONUS
Definition: Items.h:28
ITEM_TROLL_BLOOD
@ ITEM_TROLL_BLOOD
Definition: Items.h:102
EQUIP_SINGLE_HANDED
@ EQUIP_SINGLE_HANDED
Definition: Items.h:227
ITEM_WETSUIT
@ ITEM_WETSUIT
Definition: Items.h:207
ItemDesc::pDescription
char * pDescription
Definition: Items.h:367
ITEM_CROSSBOW_1
@ ITEM_CROSSBOW_1
Definition: Items.h:79
ItemDesc::uChanceByTreasureLvl2
unsigned __int8 uChanceByTreasureLvl2
Definition: Items.h:389
ITEM_SPELLBOOK_LIGHT_SUN_BURST
@ ITEM_SPELLBOOK_LIGHT_SUN_BURST
Definition: Items.h:151
ITEM_RELIC_TWILIGHT
@ ITEM_RELIC_TWILIGHT
Definition: Items.h:178
ItemsTable::GenerateItem
void GenerateItem(int treasure_level, unsigned int uTreasureType, ItemGen *pItem)
Definition: Items.cpp:680
ITEM_ARTIFACT_IRON_FEATHER
@ ITEM_ARTIFACT_IRON_FEATHER
Definition: Items.h:154
ITEM_ENCHANTMENT_40
@ ITEM_ENCHANTMENT_40
Definition: Items.h:58
ITEM_GOLD_LARGE
@ ITEM_GOLD_LARGE
Definition: Items.h:99
CEnchantment
struct CEnchantment CEnchantment
MATERIAL_SPECIAL
@ MATERIAL_SPECIAL
Definition: Items.h:69
ITEM_RARE_ZOKKARS_AXE
@ ITEM_RARE_ZOKKARS_AXE
Definition: Items.h:202
BonusRange::minR
unsigned int minR
Definition: Items.h:441
ITEM_ARTIFACT_HEROS_BELT
@ ITEM_ARTIFACT_HEROS_BELT
Definition: Items.h:188
ItemGen::GetIconName
char * GetIconName()
Definition: Items.cpp:1521
ItemGen::uItemID
int uItemID
Definition: Items.h:326
ItemDesc::uChanceByTreasureLvl
unsigned __int8 uChanceByTreasureLvl[6]
Definition: Items.h:386
CHARACTER_ATTRIBUTE_TYPE
CHARACTER_ATTRIBUTE_TYPE
Definition: Engine.h:520
ITEM_FAE_DUST
@ ITEM_FAE_DUST
Definition: Items.h:111
ITEM_GENIE_LAMP
@ ITEM_GENIE_LAMP
Definition: Items.h:209
DMGT_COLD
@ DMGT_COLD
Definition: Items.h:13
EQUIP_BOW
@ EQUIP_BOW
Definition: Items.h:229
ItemDesc::uEquipX
signed __int16 uEquipX
Definition: Items.h:371
ITEM_MACE_1
@ ITEM_MACE_1
Definition: Items.h:80
ITEM_RILIC_TITANS_BELT
@ ITEM_RILIC_TITANS_BELT
Definition: Items.h:177
ItemGen::GetPlayerSkillType
unsigned char GetPlayerSkillType()
Definition: Items.cpp:1512
ITEM_RELIC_ANIA_SELVING
@ ITEM_RELIC_ANIA_SELVING
Definition: Items.h:179
ITEM_SPELLBOOK_WATER_POISON_SPRAY
@ ITEM_SPELLBOOK_WATER_POISON_SPRAY
Definition: Items.h:142
ItemGen::AuraEffectPurple
bool AuraEffectPurple() const
Definition: Items.h:291
ItemGen::PopulateRegularBonusMap
static void PopulateRegularBonusMap()
Definition: Items.cpp:1198
ITEM_LASER_RIFLE
@ ITEM_LASER_RIFLE
Definition: Items.h:83
ItemGen::uBodyAnchor
unsigned __int8 uBodyAnchor
Definition: Items.h:350
ItemGen::expirte_time
GameTime expirte_time
Definition: Items.h:354
SummonedItem::field_C_expire_day
int field_C_expire_day
Definition: Items.h:586
ItemGen::GetDamageDice
unsigned __int8 GetDamageDice()
Definition: Items.cpp:1525
DMGT_LIGHT
@ DMGT_LIGHT
Definition: Items.h:20
ITEM_SPELLBOOK_EARTH_SLOW
@ ITEM_SPELLBOOK_EARTH_SLOW
Definition: Items.h:143
ITEM_BLASTER
@ ITEM_BLASTER
Definition: Items.h:82
ItemGen::GetDamageRoll
unsigned __int8 GetDamageRoll()
Definition: Items.cpp:1529
ItemDesc
Definition: Items.h:360
ITEM_POTION_ACCURACY_BOOST
@ ITEM_POTION_ACCURACY_BOOST
Definition: Items.h:132
SummonedItem::field_14_exprie_month
int field_14_exprie_month
Definition: Items.h:588
ITEM_OOZE_ENDOPLASM_VIAL
@ ITEM_OOZE_ENDOPLASM_VIAL
Definition: Items.h:117
MATERIAL_COMMON
@ MATERIAL_COMMON
Definition: Items.h:66
ITEM_POTION_CURE_WOUNDS
@ ITEM_POTION_CURE_WOUNDS
Definition: Items.h:122
ItemDesc::uDamageMod
unsigned __int8 uDamageMod
Definition: Items.h:377
ITEM_GARNET
@ ITEM_GARNET
Definition: Items.h:113
GameTime::GetHoursOfDay
int GetHoursOfDay() const
Definition: Time.h:39
ItemDesc::uChanceByTreasureLvl5
unsigned __int8 uChanceByTreasureLvl5
Definition: Items.h:392
EQUIP_POTION
@ EQUIP_POTION
Definition: Items.h:241
ITEM_STAFF_1
@ ITEM_STAFF_1
Definition: Items.h:81
ITEM_AURA_EFFECT_PURPLE
@ ITEM_AURA_EFFECT_PURPLE
Definition: Items.h:32
ItemGen::GetItemBonusSpecialEnchantment
void GetItemBonusSpecialEnchantment(Player *owner, CHARACTER_ATTRIBUTE_TYPE attrToGet, int *additiveBonus, int *halfSkillBonus)
Definition: Items.cpp:1448
ITEM_ENCHANTMENT_OF_FIRE
@ ITEM_ENCHANTMENT_OF_FIRE
Definition: Items.h:47
EQUIP_NONE
@ EQUIP_NONE
Definition: Items.h:248
BonusRange
Definition: Items.h:440
ITEM_POTION_FLAMING_POTION
@ ITEM_POTION_FLAMING_POTION
Definition: Items.h:133
ItemDesc::uMaterial
unsigned __int8 uMaterial
Definition: Items.h:378
ITEM_GOLD_SMALL
@ ITEM_GOLD_SMALL
Definition: Items.h:97
ItemsTable::Release
void Release()
Definition: Items.cpp:157
ITEM_ENCHANTMENT_OF_INFERNOS
@ ITEM_ENCHANTMENT_OF_INFERNOS
Definition: Items.h:49
ItemsTable::IsMaterialSpecial
bool IsMaterialSpecial(ItemGen *pItem)
Definition: Items.cpp:482
ITEM_RARE_MINOTAURS_AXE
@ ITEM_RARE_MINOTAURS_AXE
Definition: Items.h:204
ItemDesc::_additional_value
char _additional_value
Definition: Items.h:379
ITEM_ARTIFACT_CLOAK_OF_THE_SHEEP
@ ITEM_ARTIFACT_CLOAK_OF_THE_SHEEP
Definition: Items.h:183
ITEM_MUSHROOM
@ ITEM_MUSHROOM
Definition: Items.h:115
ITEM_ENCHANTMENT_OF_DRAGON
@ ITEM_ENCHANTMENT_OF_DRAGON
Definition: Items.h:61
ItemGen::ClearItemBonusMaps
static void ClearItemBonusMaps()
ItemsTable::pSpecialEnchantments_count
unsigned int pSpecialEnchantments_count
Definition: Items.h:481
ItemDesc::uChanceByTreasureLvl4
unsigned __int8 uChanceByTreasureLvl4
Definition: Items.h:391
SummonedItem
Definition: Items.h:571
ITEM_ENCHANTMENT
ITEM_ENCHANTMENT
Definition: Items.h:38
ItemsTable::field_9FC4
char field_9FC4[5000]
Definition: Items.h:463
ItemGen::IsIdentified
bool IsIdentified()
Definition: Items.h:306
ITEM_RELIC_KELEBRIM
@ ITEM_RELIC_KELEBRIM
Definition: Items.h:173
ItemDesc::field_26
char field_26
Definition: Items.h:383
EQUIP_AMULET
@ EQUIP_AMULET
Definition: Items.h:238
ITEM_AURA_EFFECT_RED
@ ITEM_AURA_EFFECT_RED
Definition: Items.h:29
ItemSpecialEnchantment
Definition: Items.h:426
ITEM_ENCHANTMENT_VAMPIRIC
@ ITEM_ENCHANTMENT_VAMPIRIC
Definition: Items.h:53
ITEM_RELIC_OLD_NICK
@ ITEM_RELIC_OLD_NICK
Definition: Items.h:170
GameTime::GetWeeksOfMonth
int GetWeeksOfMonth() const
Definition: Time.h:42
ITEM_ENCHANTMENT_OF_LIGHTNING
@ ITEM_ENCHANTMENT_OF_LIGHTNING
Definition: Items.h:45
DMGT_ELECTR
@ DMGT_ELECTR
Definition: Items.h:12
ItemGen::SetBroken
void SetBroken()
Definition: Items.h:305
DMGT_BODY
@ DMGT_BODY
Definition: Items.h:19
ItemGen::GetIdentifiedName
String GetIdentifiedName()
Definition: Items.cpp:619
ITEM_DAGGER_1
@ ITEM_DAGGER_1
Definition: Items.h:76
ItemsTable::uChanceByTreasureLvlSumm
unsigned int uChanceByTreasureLvlSumm[6]
Definition: Items.h:474
ItemsTable::field_EDE0
char field_EDE0[384]
Definition: Items.h:467
ITEM_POTION_AWAKEN
@ ITEM_POTION_AWAKEN
Definition: Items.h:126
ITEM_WAND_INCENERATION
@ ITEM_WAND_INCENERATION
Definition: Items.h:93
ItemSpecialEnchantment::iTreasureLevel
int iTreasureLevel
Definition: Items.h:435
ItemGen::IsBroken
bool IsBroken()
Definition: Items.h:304
ItemGen::ResetEnchantAnimation
void ResetEnchantAnimation()
Definition: Items.h:278
ItemsTable::pSpecialEnchantments
ItemSpecialEnchantment pSpecialEnchantments[72]
Definition: Items.h:462
ITEM_SULFUR
@ ITEM_SULFUR
Definition: Items.h:112
ItemsTable::pSpcItemsTXT_Raw
char * pSpcItemsTXT_Raw
Definition: Items.h:473
EQUIP_TWO_HANDED
@ EQUIP_TWO_HANDED
Definition: Items.h:228
ItemGen::SetStolen
void SetStolen()
Definition: Items.h:309
ITEM_SPELLBOOK_BODY_BREAK_POISON
@ ITEM_SPELLBOOK_BODY_BREAK_POISON
Definition: Items.h:149
ITEM_SPELLBOOK_MIND_MIND_BLAST
@ ITEM_SPELLBOOK_MIND_MIND_BLAST
Definition: Items.h:146
SummonedItem::field_8_expire_hour
int field_8_expire_hour
Definition: Items.h:585
ItemGen::uNumCharges
int uNumCharges
Definition: Items.h:348
ItemSpecialEnchantment::pNameAdd
char * pNameAdd
Definition: Items.h:432
ITEM_HARPY_FEATHER
@ ITEM_HARPY_FEATHER
Definition: Items.h:107
uint8_t
unsigned __int8 uint8_t
Definition: SDL_config.h:35
ItemDesc::uChanceByTreasureLvl1
unsigned __int8 uChanceByTreasureLvl1
Definition: Items.h:388
ItemDesc::pName
char * pName
Definition: Items.h:365
ItemGen::IsRegularEnchanmentForAttribute
bool IsRegularEnchanmentForAttribute(CHARACTER_ATTRIBUTE_TYPE attrToGet)
Definition: Items.cpp:1493
ITEM_ARTIFACT_WALLACE
@ ITEM_ARTIFACT_WALLACE
Definition: Items.h:155
ITEM_AURA_EFFECT_BLUE
@ ITEM_AURA_EFFECT_BLUE
Definition: Items.h:30
pItemsTable
struct ItemsTable * pItemsTable
Definition: Items.cpp:37
ItemGen::specialBonusMap
static std::map< int, std::map< CHARACTER_ATTRIBUTE_TYPE, CEnchantment * > * > specialBonusMap
Definition: Items.h:270
ITEM_RELIC_MEKORIGS_HAMMER
@ ITEM_RELIC_MEKORIGS_HAMMER
Definition: Items.h:181
ItemsTable::Initialize
void Initialize()
Definition: Items.cpp:181
ItemGen::AuraEffectBlue
bool AuraEffectBlue() const
Definition: Items.h:285
ItemsTable
Definition: Items.h:448
ITEM_ELVEN_CHAINMAIL
@ ITEM_ELVEN_CHAINMAIL
Definition: Items.h:186
ITEM_NULL
@ ITEM_NULL
Definition: Items.h:74
ItemGen::IsStolen
bool IsStolen()
Definition: Items.h:308
ItemsTable::pSpecialEnchantmentsSumm
unsigned int pSpecialEnchantmentsSumm[24]
Definition: Items.h:480
ITEM_RELIC_SCHOLARS_CAP
@ ITEM_RELIC_SCHOLARS_CAP
Definition: Items.h:175
ItemDesc::uEquipY
signed __int16 uEquipY
Definition: Items.h:372
ITEM_IDENTIFIED
@ ITEM_IDENTIFIED
Definition: Items.h:26
ITEM_ENCHANTMENT_OF_DARKNESS
@ ITEM_ENCHANTMENT_OF_DARKNESS
Definition: Items.h:59
ITEM_161
@ ITEM_161
Definition: Items.h:95
ITEM_RARE_SHADOWS_MASK
@ ITEM_RARE_SHADOWS_MASK
Definition: Items.h:197
ItemDesc::uSpriteID
unsigned __int16 uSpriteID
Definition: Items.h:369
GameTime::GetMonths
int GetMonths() const
Definition: Time.h:34
ITEM_ENCHANTMENT_OF_FROST
@ ITEM_ENCHANTMENT_OF_FROST
Definition: Items.h:42
ITEM_BROKEN
@ ITEM_BROKEN
Definition: Items.h:27
ItemGen::GetItemBonusArtifact
void GetItemBonusArtifact(Player *owner, CHARACTER_ATTRIBUTE_TYPE attrToGet, int *bonusSum)
Definition: Items.cpp:1474
EQUIP_WAND
@ EQUIP_WAND
Definition: Items.h:239
ITEM_POTION_BOTTLE
@ ITEM_POTION_BOTTLE
Definition: Items.h:120
ITEM_RARE_GHOST_RING
@ ITEM_RARE_GHOST_RING
Definition: Items.h:198
ITEM_SPELLBOOK_BODY_HEAL
@ ITEM_SPELLBOOK_BODY_HEAL
Definition: Items.h:148
ItemGen::AuraEffectGreen
bool AuraEffectGreen() const
Definition: Items.h:288
ItemDesc::field_1A
__int16 field_1A
Definition: Items.h:370
ItemsTable::pEnchantments
ItemEnchantment pEnchantments[24]
Definition: Items.h:461
ITEM_SPEAR_1
@ ITEM_SPEAR_1
Definition: Items.h:78
EQUIP_GAUNTLETS
@ EQUIP_GAUNTLETS
Definition: Items.h:235
ItemGen::GenerateArtifact
bool GenerateArtifact()
Definition: Items.cpp:978
ITEM_WAND_FIRE
@ ITEM_WAND_FIRE
Definition: Items.h:91
ItemEnchantment::to_item
unsigned char to_item[12]
Definition: Items.h:419
ITEM_ENCHANTMENT_OF_SPARKS
@ ITEM_ENCHANTMENT_OF_SPARKS
Definition: Items.h:44
ItemSpecialEnchantment::pBonusStatement
char * pBonusStatement
Definition: Items.h:431
EQUIP_RING
@ EQUIP_RING
Definition: Items.h:237
ItemEnchantment::pOfName
char * pOfName
Definition: Items.h:406
ItemGen::PopulateArtifactBonusMap
static void PopulateArtifactBonusMap()
Definition: Items.cpp:1272
CEnchantment::statPtr
uint16_t Player::* statPtr
Definition: Items.h:257
ITEM_POTION_CURE_INSANITY
@ ITEM_POTION_CURE_INSANITY
Definition: Items.h:130
ITEM_RARE_VILLAINS_BLADE
@ ITEM_RARE_VILLAINS_BLADE
Definition: Items.h:194
ItemDesc::uChanceByTreasureLvl6
unsigned __int8 uChanceByTreasureLvl6
Definition: Items.h:393
ItemSpecialEnchantment::iValue
int iValue
Definition: Items.h:434
ItemGen::UpdateTempBonus
void UpdateTempBonus(GameTime time)
Definition: Items.cpp:146
ITEM_POTION_REJUVENATION
@ ITEM_POTION_REJUVENATION
Definition: Items.h:138
SummonedItem::field_10_expire_week
int field_10_expire_week
Definition: Items.h:587
ITEM_ARTIFACT_ELFBANE
@ ITEM_ARTIFACT_ELFBANE
Definition: Items.h:184
ITEM_ARTIFACT_SPLITTER
@ ITEM_ARTIFACT_SPLITTER
Definition: Items.h:159
ITEM_ENCHANTMENT_OF_FORCE
@ ITEM_ENCHANTMENT_OF_FORCE
Definition: Items.h:56
ITEM_RECIPE_BODY_RESISTANCE
@ ITEM_RECIPE_BODY_RESISTANCE
Definition: Items.h:222
ITEM_RELIC_GLORY_SHIELD
@ ITEM_RELIC_GLORY_SHIELD
Definition: Items.h:172
DMGT_EARTH
@ DMGT_EARTH
Definition: Items.h:14
ItemGen
Definition: Items.h:263
ItemGen::GetValue
unsigned int GetValue()
Definition: Items.cpp:588
ITEM_ARTEFACT_HANDS_OF_THE_MASTER
@ ITEM_ARTEFACT_HANDS_OF_THE_MASTER
Definition: Items.h:164
ITEM_LICH_JAR_FULL
@ ITEM_LICH_JAR_FULL
Definition: Items.h:206
ITEM_ENCHANTMENT_NULL
@ ITEM_ENCHANTMENT_NULL
Definition: Items.h:39
ITEM_RELIC_ETHRICS_STAFF
@ ITEM_RELIC_ETHRICS_STAFF
Definition: Items.h:168
ITEM_POTION_MIGHT_BOOST
@ ITEM_POTION_MIGHT_BOOST
Definition: Items.h:131
ItemsTable::field_DA58
char field_DA58[5000]
Definition: Items.h:466
ItemDesc::uSkillType
unsigned __int8 uSkillType
Definition: Items.h:374
ITEM_ARTIFACT_RULERS_RING
@ ITEM_ARTIFACT_RULERS_RING
Definition: Items.h:166
ItemDesc::pUnidentifiedName
char * pUnidentifiedName
Definition: Items.h:366
ItemDesc::_bonus_strength
char _bonus_strength
Definition: Items.h:381
ItemGen::m_enchantmentStrength
int m_enchantmentStrength
Definition: Items.h:328
ITEM_CHAINMAIL_1
@ ITEM_CHAINMAIL_1
Definition: Items.h:85
ITEM_REAGENT_CRUSHED_ROSE_PETALS
@ ITEM_REAGENT_CRUSHED_ROSE_PETALS
Definition: Items.h:101
ITEM_RARE_MEDUSAS_MIRROR
@ ITEM_RARE_MEDUSAS_MIRROR
Definition: Items.h:192
ITEM_SPELLBOOK_SPIRIT_BLESS
@ ITEM_SPELLBOOK_SPIRIT_BLESS
Definition: Items.h:144
ItemsTable::potion_data
unsigned __int16 potion_data[50][50]
Definition: Items.h:468
ITEM_RELIC_TALEDONS_HELM
@ ITEM_RELIC_TALEDONS_HELM
Definition: Items.h:174
ITEM_RARE_LIETENANTS_CUTLASS
@ ITEM_RARE_LIETENANTS_CUTLASS
Definition: Items.h:191
ITEM_SPELLBOOK_MIND_REMOVE_FEAR
@ ITEM_SPELLBOOK_MIND_REMOVE_FEAR
Definition: Items.h:145
ItemsTable::pEnchantmentsSumm
unsigned int pEnchantmentsSumm[9]
Definition: Items.h:478
ItemsTable::uBonusChanceWpSpecial
unsigned int uBonusChanceWpSpecial[6]
Definition: Items.h:477
ITEM_ENCHANTMENT_OF_COLD
@ ITEM_ENCHANTMENT_OF_COLD
Definition: Items.h:41
ITEM_SPELLBOOK_LIGHT_DIVINE_INTERVENTION
@ ITEM_SPELLBOOK_LIGHT_DIVINE_INTERVENTION
Definition: Items.h:152
EQUIP_BOOTS
@ EQUIP_BOOTS
Definition: Items.h:236
String
std::string String
Definition: Strings.h:10
ItemsTable::LoadPotionNotes
void LoadPotionNotes()
Definition: Items.cpp:541
ITEM_DEVIL_ICHOR
@ ITEM_DEVIL_ICHOR
Definition: Items.h:114
ItemsTable::uBonusChanceSpecial
unsigned int uBonusChanceSpecial[6]
Definition: Items.h:476
ITEM_ARTIFACT_GOVERNORS_ARMOR
@ ITEM_ARTIFACT_GOVERNORS_ARMOR
Definition: Items.h:157
ItemsTable::pItemsTXT_Raw
char * pItemsTXT_Raw
Definition: Items.h:470
ITEM_92
@ ITEM_92
Definition: Items.h:88
GameTime
Definition: Time.h:14
CEnchantment::CEnchantment
CEnchantment(int bonus, unsigned __int16 Player::*skillPtr=nullptr)
Definition: Items.h:254
ItemGen::artifactBonusMap
static std::map< int, std::map< CHARACTER_ATTRIBUTE_TYPE, CEnchantment * > * > artifactBonusMap
Definition: Items.h:271
ItemsTable::uAllItemsCount
int uAllItemsCount
Definition: Items.h:459
ITEM_REAGENT_WIDOWSWEEP_BERRIES
@ ITEM_REAGENT_WIDOWSWEEP_BERRIES
Definition: Items.h:100
ITEM_GOLD_MEDIUM
@ ITEM_GOLD_MEDIUM
Definition: Items.h:98
ITEM_BUCKLER_1
@ ITEM_BUCKLER_1
Definition: Items.h:87
ITEM_REAGENT_PHILOSOPHERS_STONE
@ ITEM_REAGENT_PHILOSOPHERS_STONE
Definition: Items.h:119
ITEM_TROLL_RUBY
@ ITEM_TROLL_RUBY
Definition: Items.h:103
ItemsTable::pItems
NZIArray< ItemDesc, 800 > pItems
Definition: Items.h:460
DMGT_MIND
@ DMGT_MIND
Definition: Items.h:18
ITEM_AXE_1
@ ITEM_AXE_1
Definition: Items.h:77
ITEM_ARTIFACT_CHARELE
@ ITEM_ARTIFACT_CHARELE
Definition: Items.h:162
ITEM_GRYPHONHEARTS_TRUMPET
@ ITEM_GRYPHONHEARTS_TRUMPET
Definition: Items.h:215
MATERIAL_RELIC
@ MATERIAL_RELIC
Definition: Items.h:68
ItemGen::MerchandiseTest
bool MerchandiseTest(int _2da_idx)
Definition: Items.cpp:1626
Time.h
ItemSpecialEnchantment::to_item_apply
char to_item_apply[12]
Definition: Items.h:433
ITEM_ARTIFACT_PUCK
@ ITEM_ARTIFACT_PUCK
Definition: Items.h:153