OSDN Git Service

[feature] *_info の std::vector 化
[hengbandforosx/hengbandosx.git] / src / object / tval-types.h
1 /*
2  * The values for the "tval" field of various objects.
3  *
4  * This value is the primary means by which items are sorted in the
5  * player inventory_list, followed by "sval" and "cost".
6  *
7  * Note that a "BOW" with tval = 19 and sval S = 10*N+P takes a missile
8  * weapon with tval = 16+N, and does (xP) damage when so combined.  This
9  * fact is not actually used in the source, but it kind of interesting.
10  *
11  * Note that as of 2.7.8, the "item flags" apply to all items, though
12  * only armor and weapons and a few other items use any of these flags.
13  */
14
15 #pragma once
16
17 enum tval_type {
18     TV_NONE = 0,
19     TV_SKELETON = 1, /* Skeletons ('s'), not specified */
20     TV_BOTTLE = 2, /* Empty bottles ('!') */
21     TV_JUNK = 3, /* Sticks, Pottery, etc ('~') */
22     TV_WHISTLE = 4, /* Whistle ('~') */
23     TV_SPIKE = 5, /* Spikes ('~') */
24     TV_CHEST = 7, /* Chests ('&') */
25     TV_FIGURINE = 8, /* Magical figurines */
26     TV_STATUE = 9, /* Statue, what a silly object... */
27     TV_CORPSE = 10, /* Corpses and Skeletons, specific */
28     TV_CAPTURE = 11, /* Monster ball */
29     TV_NO_AMMO = 15, /* Ammo for crimson */
30     TV_SHOT = 16, /* Ammo for slings */
31     TV_ARROW = 17, /* Ammo for bows */
32     TV_BOLT = 18, /* Ammo for x-bows */
33     TV_BOW = 19, /* Slings/Bows/Xbows */
34     TV_DIGGING = 20, /* Shovels/Picks */
35     TV_HAFTED = 21, /* Priest Weapons */
36     TV_POLEARM = 22, /* Axes and Pikes */
37     TV_SWORD = 23, /* Edged Weapons */
38     TV_BOOTS = 30, /* Boots */
39     TV_GLOVES = 31, /* Gloves */
40     TV_HELM = 32, /* Helms */
41     TV_CROWN = 33, /* Crowns */
42     TV_SHIELD = 34, /* Shields */
43     TV_CLOAK = 35, /* Cloaks */
44     TV_SOFT_ARMOR = 36, /* Soft Armor */
45     TV_HARD_ARMOR = 37, /* Hard Armor */
46     TV_DRAG_ARMOR = 38, /* Dragon Scale Mail */
47     TV_LITE = 39, /* Lites (including Specials) */
48     TV_AMULET = 40, /* Amulets (including Specials) */
49     TV_RING = 45, /* Rings (including Specials) */
50     TV_CARD = 50,
51     TV_STAFF = 55,
52     TV_WAND = 65,
53     TV_ROD = 66,
54     TV_PARCHMENT = 69,
55     TV_SCROLL = 70,
56     TV_POTION = 75,
57     TV_FLASK = 77,
58     TV_FOOD = 80,
59     TV_LIFE_BOOK = 90,
60     TV_SORCERY_BOOK = 91,
61     TV_NATURE_BOOK = 92,
62     TV_CHAOS_BOOK = 93,
63     TV_DEATH_BOOK = 94,
64     TV_TRUMP_BOOK = 95,
65     TV_ARCANE_BOOK = 96,
66     TV_CRAFT_BOOK = 97,
67     TV_DEMON_BOOK = 98,
68     TV_CRUSADE_BOOK = 99,
69     TV_MUSIC_BOOK = 105,
70     TV_HISSATSU_BOOK = 106,
71     TV_HEX_BOOK = 107,
72     TV_GOLD = 127, /* Gold can only be picked up by players */
73 };
74
75 #define TV_EQUIP_BEGIN TV_SHOT
76 #define TV_EQUIP_END TV_CARD
77 #define TV_MISSILE_BEGIN TV_SHOT
78 #define TV_MISSILE_END TV_BOLT
79 #define TV_WEARABLE_BEGIN TV_BOW
80 #define TV_WEARABLE_END TV_CARD
81 #define TV_WEAPON_BEGIN TV_BOW
82 #define TV_WEAPON_END TV_SWORD
83 #define TV_ARMOR_BEGIN TV_BOOTS
84 #define TV_ARMOR_END TV_DRAG_ARMOR