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.12 by elmex, Wed Dec 20 12:13:48 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}, 163 {LIGHT_SOURCE, "light source", "light sources", 0, 0},
180 {MISC_OBJECT, "bric-a-brac", "bric-a-brac", 0, 0}, 164 {MISC_OBJECT, "bric-a-brac", "bric-a-brac", 0, 0},
181 {MONSTER, "monster", "monsters", 0, 0}, 165 {MONSTER, "monster", "monsters", 0, 0},
182 {SPAWN_GENERATOR, "monster generator", "monster generators", 0, 0}, 166 {SPAWN_GENERATOR, "monster generator", "monster generators", 0, 0},
183 {LAMP, "lamp", "lamps", 0, 0}, 167 {LAMP, "lamp", "lamps", 0, 0},
681 665
682 use_buf++; 666 use_buf++;
683 use_buf %= 5; 667 use_buf %= 5;
684 668
685#ifdef NEW_MATERIAL_CODE 669#ifdef NEW_MATERIAL_CODE
686 if ((IS_ARMOR (op) || IS_WEAPON (op)) && op->materialname) 670 if ((op->is_armor () || op->is_weapon ()) && op->materialname)
687 { 671 {
688 mt = name_to_material (op->materialname); 672 mt = name_to_material (op->materialname);
689 if (mt) 673 if (mt)
690 { 674 {
691 safe_strcat (buf[use_buf], mt->description, &len, HUGE_BUF); 675 safe_strcat (buf[use_buf], mt->description, &len, HUGE_BUF);
788 return "(null)"; 772 return "(null)";
789 773
790 if (!op->nrof && !op->weight && !op->title && !is_magical (op)) 774 if (!op->nrof && !op->weight && !op->title && !is_magical (op))
791 return op->name; /* To speed things up (or make things slower?) */ 775 return op->name; /* To speed things up (or make things slower?) */
792 776
793 if ((IS_ARMOR (op) || IS_WEAPON (op)) && op->materialname) 777 if ((op->is_armor () || op->is_weapon ()) && op->materialname)
794 mt = name_to_material (op->materialname); 778 mt = name_to_material (op->materialname);
795 779
796#ifdef NEW_MATERIAL_CODE 780#ifdef NEW_MATERIAL_CODE
797 if ((IS_ARMOR (op) || IS_WEAPON (op)) && op->materialname && mt && 781 if ((op->is_armor () || op->is_weapon ()) && op->materialname && mt &&
798 op->arch->clone.materialname != mt->name && !(op->material & M_SPECIAL)) 782 op->arch->clone.materialname != mt->name && !(op->material & M_SPECIAL))
799 { 783 {
800 strcpy (buf, mt->description); 784 strcpy (buf, mt->description);
801 len = strlen (buf); 785 len = strlen (buf);
802 safe_strcat (buf, " ", &len, MAX_BUF); 786 safe_strcat (buf, " ", &len, MAX_BUF);
1515 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);
1516#endif 1500#endif
1517 return 0; 1501 return 0;
1518} 1502}
1519 1503
1520
1521/* 1504/*
1522 * Supposed to fix face-values as well here, but later. 1505 * Supposed to fix face-values as well here, but later.
1523 */ 1506 */
1524
1525void 1507void
1526identify (object *op) 1508identify (object *op)
1527{ 1509{
1528 object *pl; 1510 object *pl;
1529 1511
1551 /* 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 */
1552 if (op->map) 1534 if (op->map)
1553 update_object (op, UP_OBJ_FACE); 1535 update_object (op, UP_OBJ_FACE);
1554 else 1536 else
1555 { 1537 {
1556 pl = is_player_inv (op->env); 1538 pl = op->in_player ();
1557 if (pl) 1539 if (pl)
1558 /* 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
1559 * it all. 1541 * it all.
1560 */ 1542 */
1561 esrv_send_item (pl, op); 1543 esrv_send_item (pl, op);
1562 } 1544 }
1563} 1545}
1546

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines