… | |
… | |
99 | {POTION, "potion", "potions", SK_ALCHEMY, 0}, |
99 | {POTION, "potion", "potions", SK_ALCHEMY, 0}, |
100 | {FOOD, "food", "food", SK_WOODSMAN, 0}, |
100 | {FOOD, "food", "food", SK_WOODSMAN, 0}, |
101 | {POISON, "poison", "poisons", SK_ALCHEMY, 0}, |
101 | {POISON, "poison", "poisons", SK_ALCHEMY, 0}, |
102 | {BOOK, "book", "books", SK_LITERACY, 0}, |
102 | {BOOK, "book", "books", SK_LITERACY, 0}, |
103 | {CLOCK, "clock", "clocks", 0, 0}, |
103 | {CLOCK, "clock", "clocks", 0, 0}, |
104 | {LIGHTNING, "lightning", "lightning", 0, 0}, |
|
|
105 | {ARROW, "arrow", "arrows", SK_BOWYER, 0}, |
104 | {ARROW, "arrow", "arrows", SK_BOWYER, 0}, |
106 | {BOW, "bow", "bows", SK_BOWYER, 0}, |
105 | {BOW, "bow", "bows", SK_BOWYER, 0}, |
107 | {WEAPON, "weapon", "weapons", SK_SMITHERY, 0}, |
106 | {WEAPON, "weapon", "weapons", SK_SMITHERY, 0}, |
108 | {ARMOUR, "armour", "armour", SK_SMITHERY, 0}, |
107 | {ARMOUR, "armour", "armour", SK_SMITHERY, 0}, |
109 | {PEDESTAL, "pedestal", "pedestals", 0, 0}, |
108 | {PEDESTAL, "pedestal", "pedestals", 0, 0}, |
… | |
… | |
129 | {AMULET, "amulet", "amulets", SK_JEWELER, 0}, |
128 | {AMULET, "amulet", "amulets", SK_JEWELER, 0}, |
130 | {PLAYERMOVER, "player mover", "player movers", 0, 0}, |
129 | {PLAYERMOVER, "player mover", "player movers", 0, 0}, |
131 | {TELEPORTER, "teleporter", "teleporters", 0, 0}, |
130 | {TELEPORTER, "teleporter", "teleporters", 0, 0}, |
132 | {CREATOR, "creator", "creators", 0, 0}, |
131 | {CREATOR, "creator", "creators", 0, 0}, |
133 | {SKILL, "skill", "skills", 0, 0}, |
132 | {SKILL, "skill", "skills", 0, 0}, |
134 | {EXPERIENCE, "experience", "experience", 0, 0}, |
|
|
135 | {EARTHWALL, "earthwall", "earthwalls", 0, 0}, |
133 | {EARTHWALL, "earthwall", "earthwalls", 0, 0}, |
136 | {GOLEM, "golem", "golems", 0, 0}, |
134 | {GOLEM, "golem", "golems", 0, 0}, |
137 | {THROWN_OBJ, "projectile", "projectiles", 0, 0}, |
135 | {THROWN_OBJ, "projectile", "projectiles", 0, 0}, |
138 | {BLINDNESS, "blindness", "blindness", 0, 0}, |
136 | {BLINDNESS, "blindness", "blindness", 0, 0}, |
139 | {GOD, "god", "gods", 0, 0}, |
137 | {GOD, "god", "gods", 0, 0}, |
… | |
… | |
159 | {FLOOR, "floor", "floors", 0, 0}, |
157 | {FLOOR, "floor", "floors", 0, 0}, |
160 | {FLESH, "flesh", "flesh", SK_WOODSMAN, 0}, |
158 | {FLESH, "flesh", "flesh", SK_WOODSMAN, 0}, |
161 | {INORGANIC, "inorganic", "inorganics", SK_ALCHEMY, 0}, |
159 | {INORGANIC, "inorganic", "inorganics", SK_ALCHEMY, 0}, |
162 | {SKILL_TOOL, "skill tool", "skill tools", 0, 0}, |
160 | {SKILL_TOOL, "skill tool", "skill tools", 0, 0}, |
163 | {LIGHTER, "lighter", "lighters", 0, 0}, |
161 | {LIGHTER, "lighter", "lighters", 0, 0}, |
164 | {TRAP_PART, "trap part", "trap parts", 0, 0}, |
162 | {BUILDABLE_WALL, "buildable wall", "buildable walls", 0, 0}, |
165 | {WALL, "wall", "walls", 0, 0}, |
|
|
166 | {LIGHT_SOURCE, "light source", "light sources", 0, 0}, |
163 | {LIGHT_SOURCE, "light source", "light sources", 0, 0}, |
167 | {MISC_OBJECT, "bric-a-brac", "bric-a-brac", 0, 0}, |
164 | {MISC_OBJECT, "bric-a-brac", "bric-a-brac", 0, 0}, |
168 | {MONSTER, "monster", "monsters", 0, 0}, |
165 | {MONSTER, "monster", "monsters", 0, 0}, |
169 | {SPAWN_GENERATOR, "monster generator", "monster generators", 0, 0}, |
166 | {SPAWN_GENERATOR, "monster generator", "monster generators", 0, 0}, |
170 | {LAMP, "lamp", "lamps", 0, 0}, |
167 | {LAMP, "lamp", "lamps", 0, 0}, |
… | |
… | |
668 | |
665 | |
669 | use_buf++; |
666 | use_buf++; |
670 | use_buf %= 5; |
667 | use_buf %= 5; |
671 | |
668 | |
672 | #ifdef NEW_MATERIAL_CODE |
669 | #ifdef NEW_MATERIAL_CODE |
673 | if ((IS_ARMOR (op) || IS_WEAPON (op)) && op->materialname) |
670 | if ((op->is_armor () || op->is_weapon ()) && op->materialname) |
674 | { |
671 | { |
675 | mt = name_to_material (op->materialname); |
672 | mt = name_to_material (op->materialname); |
676 | if (mt) |
673 | if (mt) |
677 | { |
674 | { |
678 | safe_strcat (buf[use_buf], mt->description, &len, HUGE_BUF); |
675 | safe_strcat (buf[use_buf], mt->description, &len, HUGE_BUF); |
… | |
… | |
775 | return "(null)"; |
772 | return "(null)"; |
776 | |
773 | |
777 | if (!op->nrof && !op->weight && !op->title && !is_magical (op)) |
774 | if (!op->nrof && !op->weight && !op->title && !is_magical (op)) |
778 | return op->name; /* To speed things up (or make things slower?) */ |
775 | return op->name; /* To speed things up (or make things slower?) */ |
779 | |
776 | |
780 | if ((IS_ARMOR (op) || IS_WEAPON (op)) && op->materialname) |
777 | if ((op->is_armor () || op->is_weapon ()) && op->materialname) |
781 | mt = name_to_material (op->materialname); |
778 | mt = name_to_material (op->materialname); |
782 | |
779 | |
783 | #ifdef NEW_MATERIAL_CODE |
780 | #ifdef NEW_MATERIAL_CODE |
784 | if ((IS_ARMOR (op) || IS_WEAPON (op)) && op->materialname && mt && |
781 | if ((op->is_armor () || op->is_weapon ()) && op->materialname && mt && |
785 | op->arch->clone.materialname != mt->name && !(op->material & M_SPECIAL)) |
782 | op->arch->clone.materialname != mt->name && !(op->material & M_SPECIAL)) |
786 | { |
783 | { |
787 | strcpy (buf, mt->description); |
784 | strcpy (buf, mt->description); |
788 | len = strlen (buf); |
785 | len = strlen (buf); |
789 | safe_strcat (buf, " ", &len, MAX_BUF); |
786 | safe_strcat (buf, " ", &len, MAX_BUF); |
… | |
… | |
1502 | LOG (llevDebug, "need_identify: %s does not need to be id'd\n", op->name); |
1499 | LOG (llevDebug, "need_identify: %s does not need to be id'd\n", op->name); |
1503 | #endif |
1500 | #endif |
1504 | return 0; |
1501 | return 0; |
1505 | } |
1502 | } |
1506 | |
1503 | |
1507 | |
|
|
1508 | /* |
1504 | /* |
1509 | * Supposed to fix face-values as well here, but later. |
1505 | * Supposed to fix face-values as well here, but later. |
1510 | */ |
1506 | */ |
1511 | |
|
|
1512 | void |
1507 | void |
1513 | identify (object *op) |
1508 | identify (object *op) |
1514 | { |
1509 | { |
1515 | object *pl; |
1510 | object *pl; |
1516 | |
1511 | |
… | |
… | |
1538 | /* If the object is on a map, make sure we update its face */ |
1533 | /* If the object is on a map, make sure we update its face */ |
1539 | if (op->map) |
1534 | if (op->map) |
1540 | update_object (op, UP_OBJ_FACE); |
1535 | update_object (op, UP_OBJ_FACE); |
1541 | else |
1536 | else |
1542 | { |
1537 | { |
1543 | pl = is_player_inv (op->env); |
1538 | pl = op->in_player (); |
1544 | if (pl) |
1539 | if (pl) |
1545 | /* A lot of the values can change from an update - might as well send |
1540 | /* A lot of the values can change from an update - might as well send |
1546 | * it all. |
1541 | * it all. |
1547 | */ |
1542 | */ |
1548 | esrv_send_item (pl, op); |
1543 | esrv_send_item (pl, op); |
1549 | } |
1544 | } |
1550 | } |
1545 | } |
|
|
1546 | |