ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/common/item.C
(Generate patch)

Comparing deliantra/server/common/item.C (file contents):
Revision 1.6 by root, Thu Sep 14 22:33:58 2006 UTC vs.
Revision 1.13 by elmex, Wed Dec 20 13:07:12 2006 UTC

46 * may be better. 46 * may be better.
47 * Basically, for the use/nonuse, the code does something like: 47 * Basically, for the use/nonuse, the code does something like:
48 * "This item goes %s\n", with the use/nonuse values filling in the %s 48 * "This item goes %s\n", with the use/nonuse values filling in the %s
49 */ 49 */
50Body_Locations body_locations[NUM_BODY_LOCATIONS] = { 50Body_Locations body_locations[NUM_BODY_LOCATIONS] = {
51 {"body_range", "in your range slot", "in a human's range slot"} 51 {"body_range", "in your range slot", "in a human's range slot"},
52 ,
53 {"body_arm", "on your arm", "on a human's arm"} 52 {"body_arm", "on your arm", "on a human's arm"},
54 ,
55 {"body_torso", "on your body", "on a human's torso"} 53 {"body_torso", "on your body", "on a human's torso"},
56 ,
57 {"body_head", "on your head", "on a human's head"} 54 {"body_head", "on your head", "on a human's head"},
58 ,
59 {"body_neck", "around your neck", "around a humans neck"} 55 {"body_neck", "around your neck", "around a humans neck"},
60 ,
61 {"body_skill", "in your skill slot", "in a human's skill slot"} 56 {"body_skill", "in your skill slot", "in a human's skill slot"},
62 ,
63 {"body_finger", "on your finger", "on a human's finger"} 57 {"body_finger", "on your finger", "on a human's finger"} ,
64 ,
65 {"body_shoulder", "around your shoulders", "around a human's shoulders"} 58 {"body_shoulder", "around your shoulders", "around a human's shoulders"},
66 ,
67 {"body_foot", "on your feet", "on a human's feet"} 59 {"body_foot", "on your feet", "on a human's feet"},
68 ,
69 {"body_hand", "on your hands", "on a human's hands"} 60 {"body_hand", "on your hands", "on a human's hands"},
70 ,
71 {"body_wrist", "around your wrists", "around a human's wrist"} 61 {"body_wrist", "around your wrists", "around a human's wrist"},
72 ,
73 {"body_waist", "around your waist", "around a human's waist"} 62 {"body_waist", "around your waist", "around a human's waist"},
74 ,
75
76/*{"body_dragon_torso", "your body", "a dragon's body"} */ 63/*{"body_dragon_torso", "your body", "a dragon's body"} */
77}; 64};
78 65
79static char numbers[21][20] = { 66static char numbers[21][20] = {
80 "no", "", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", 67 "no", "", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten",
112 {POTION, "potion", "potions", SK_ALCHEMY, 0}, 99 {POTION, "potion", "potions", SK_ALCHEMY, 0},
113 {FOOD, "food", "food", SK_WOODSMAN, 0}, 100 {FOOD, "food", "food", SK_WOODSMAN, 0},
114 {POISON, "poison", "poisons", SK_ALCHEMY, 0}, 101 {POISON, "poison", "poisons", SK_ALCHEMY, 0},
115 {BOOK, "book", "books", SK_LITERACY, 0}, 102 {BOOK, "book", "books", SK_LITERACY, 0},
116 {CLOCK, "clock", "clocks", 0, 0}, 103 {CLOCK, "clock", "clocks", 0, 0},
117 {LIGHTNING, "lightning", "lightning", 0, 0},
118 {ARROW, "arrow", "arrows", SK_BOWYER, 0}, 104 {ARROW, "arrow", "arrows", SK_BOWYER, 0},
119 {BOW, "bow", "bows", SK_BOWYER, 0}, 105 {BOW, "bow", "bows", SK_BOWYER, 0},
120 {WEAPON, "weapon", "weapons", SK_SMITHERY, 0}, 106 {WEAPON, "weapon", "weapons", SK_SMITHERY, 0},
121 {ARMOUR, "armour", "armour", SK_SMITHERY, 0}, 107 {ARMOUR, "armour", "armour", SK_SMITHERY, 0},
122 {PEDESTAL, "pedestal", "pedestals", 0, 0}, 108 {PEDESTAL, "pedestal", "pedestals", 0, 0},
142 {AMULET, "amulet", "amulets", SK_JEWELER, 0}, 128 {AMULET, "amulet", "amulets", SK_JEWELER, 0},
143 {PLAYERMOVER, "player mover", "player movers", 0, 0}, 129 {PLAYERMOVER, "player mover", "player movers", 0, 0},
144 {TELEPORTER, "teleporter", "teleporters", 0, 0}, 130 {TELEPORTER, "teleporter", "teleporters", 0, 0},
145 {CREATOR, "creator", "creators", 0, 0}, 131 {CREATOR, "creator", "creators", 0, 0},
146 {SKILL, "skill", "skills", 0, 0}, 132 {SKILL, "skill", "skills", 0, 0},
147 {EXPERIENCE, "experience", "experience", 0, 0},
148 {EARTHWALL, "earthwall", "earthwalls", 0, 0}, 133 {EARTHWALL, "earthwall", "earthwalls", 0, 0},
149 {GOLEM, "golem", "golems", 0, 0}, 134 {GOLEM, "golem", "golems", 0, 0},
150 {THROWN_OBJ, "projectile", "projectiles", 0, 0}, 135 {THROWN_OBJ, "projectile", "projectiles", 0, 0},
151 {BLINDNESS, "blindness", "blindness", 0, 0}, 136 {BLINDNESS, "blindness", "blindness", 0, 0},
152 {GOD, "god", "gods", 0, 0}, 137 {GOD, "god", "gods", 0, 0},
172 {FLOOR, "floor", "floors", 0, 0}, 157 {FLOOR, "floor", "floors", 0, 0},
173 {FLESH, "flesh", "flesh", SK_WOODSMAN, 0}, 158 {FLESH, "flesh", "flesh", SK_WOODSMAN, 0},
174 {INORGANIC, "inorganic", "inorganics", SK_ALCHEMY, 0}, 159 {INORGANIC, "inorganic", "inorganics", SK_ALCHEMY, 0},
175 {SKILL_TOOL, "skill tool", "skill tools", 0, 0}, 160 {SKILL_TOOL, "skill tool", "skill tools", 0, 0},
176 {LIGHTER, "lighter", "lighters", 0, 0}, 161 {LIGHTER, "lighter", "lighters", 0, 0},
177 {TRAP_PART, "trap part", "trap parts", 0, 0}, 162 {BUILDABLE_WALL, "buildable wall", "buildable walls", 0, 0},
178 {WALL, "wall", "walls", 0, 0},
179 {LIGHT_SOURCE, "light source", "light sources", 0, 0},
180 {MISC_OBJECT, "bric-a-brac", "bric-a-brac", 0, 0}, 163 {MISC_OBJECT, "bric-a-brac", "bric-a-brac", 0, 0},
181 {MONSTER, "monster", "monsters", 0, 0},
182 {SPAWN_GENERATOR, "monster generator", "monster generators", 0, 0},
183 {LAMP, "lamp", "lamps", 0, 0}, 164 {LAMP, "lamp", "lamps", 0, 0},
184 {DUPLICATOR, "duplicator", "duplicators", 0, 0}, 165 {DUPLICATOR, "duplicator", "duplicators", 0, 0},
185 {TOOL, "tool", "tools", 0, 0}, 166 {TOOL, "tool", "tools", 0, 0},
186 {SPELLBOOK, "spellbook", "spellbooks", SK_LITERACY, 0}, 167 {SPELLBOOK, "spellbook", "spellbooks", SK_LITERACY, 0},
187 {BUILDFAC, "building facility", "building facilities", 0, 0}, 168 {BUILDFAC, "building facility", "building facilities", 0, 0},
681 662
682 use_buf++; 663 use_buf++;
683 use_buf %= 5; 664 use_buf %= 5;
684 665
685#ifdef NEW_MATERIAL_CODE 666#ifdef NEW_MATERIAL_CODE
686 if ((IS_ARMOR (op) || IS_WEAPON (op)) && op->materialname) 667 if ((op->is_armor () || op->is_weapon ()) && op->materialname)
687 { 668 {
688 mt = name_to_material (op->materialname); 669 mt = name_to_material (op->materialname);
689 if (mt) 670 if (mt)
690 { 671 {
691 safe_strcat (buf[use_buf], mt->description, &len, HUGE_BUF); 672 safe_strcat (buf[use_buf], mt->description, &len, HUGE_BUF);
788 return "(null)"; 769 return "(null)";
789 770
790 if (!op->nrof && !op->weight && !op->title && !is_magical (op)) 771 if (!op->nrof && !op->weight && !op->title && !is_magical (op))
791 return op->name; /* To speed things up (or make things slower?) */ 772 return op->name; /* To speed things up (or make things slower?) */
792 773
793 if ((IS_ARMOR (op) || IS_WEAPON (op)) && op->materialname) 774 if ((op->is_armor () || op->is_weapon ()) && op->materialname)
794 mt = name_to_material (op->materialname); 775 mt = name_to_material (op->materialname);
795 776
796#ifdef NEW_MATERIAL_CODE 777#ifdef NEW_MATERIAL_CODE
797 if ((IS_ARMOR (op) || IS_WEAPON (op)) && op->materialname && mt && 778 if ((op->is_armor () || op->is_weapon ()) && op->materialname && mt &&
798 op->arch->clone.materialname != mt->name && !(op->material & M_SPECIAL)) 779 op->arch->clone.materialname != mt->name && !(op->material & M_SPECIAL))
799 { 780 {
800 strcpy (buf, mt->description); 781 strcpy (buf, mt->description);
801 len = strlen (buf); 782 len = strlen (buf);
802 safe_strcat (buf, " ", &len, MAX_BUF); 783 safe_strcat (buf, " ", &len, MAX_BUF);
1515 LOG (llevDebug, "need_identify: %s does not need to be id'd\n", op->name); 1496 LOG (llevDebug, "need_identify: %s does not need to be id'd\n", op->name);
1516#endif 1497#endif
1517 return 0; 1498 return 0;
1518} 1499}
1519 1500
1520
1521/* 1501/*
1522 * Supposed to fix face-values as well here, but later. 1502 * Supposed to fix face-values as well here, but later.
1523 */ 1503 */
1524
1525void 1504void
1526identify (object *op) 1505identify (object *op)
1527{ 1506{
1528 object *pl; 1507 object *pl;
1529 1508
1551 /* If the object is on a map, make sure we update its face */ 1530 /* If the object is on a map, make sure we update its face */
1552 if (op->map) 1531 if (op->map)
1553 update_object (op, UP_OBJ_FACE); 1532 update_object (op, UP_OBJ_FACE);
1554 else 1533 else
1555 { 1534 {
1556 pl = is_player_inv (op->env); 1535 pl = op->in_player ();
1557 if (pl) 1536 if (pl)
1558 /* A lot of the values can change from an update - might as well send 1537 /* A lot of the values can change from an update - might as well send
1559 * it all. 1538 * it all.
1560 */ 1539 */
1561 esrv_send_item (pl, op); 1540 esrv_send_item (pl, op);
1562 } 1541 }
1563} 1542}
1543

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines