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

Comparing deliantra/server/common/object.C (file contents):
Revision 1.69 by root, Mon Dec 18 03:00:02 2006 UTC vs.
Revision 1.71 by elmex, Tue Dec 19 13:41:45 2006 UTC

1136 { 1136 {
1137 CLEAR_FLAG (this, FLAG_APPLIED); 1137 CLEAR_FLAG (this, FLAG_APPLIED);
1138 tmp->container = 0; 1138 tmp->container = 0;
1139 } 1139 }
1140 1140
1141 tmp->contr->socket->update_look = 1; 1141 tmp->contr->socket->floorbox_update ();
1142 } 1142 }
1143 1143
1144 /* See if player moving off should effect something */ 1144 /* See if player moving off should effect something */
1145 if (check_walk_off 1145 if (check_walk_off
1146 && ((move_type & tmp->move_off) 1146 && ((move_type & tmp->move_off)
1147 && (move_type & ~tmp->move_off & ~tmp->move_block) == 0)) 1147 && (move_type & ~tmp->move_off & ~tmp->move_block) == 0))
1148 { 1148 {
1149 move_apply (tmp, this, 0); 1149 move_apply (tmp, this, 0, false);
1150 1150
1151 if (destroyed ()) 1151 if (destroyed ())
1152 LOG (llevError, "BUG: remove_ob(): name %s, destroyed leaving object\n", tmp->debug_desc ()); 1152 LOG (llevError, "BUG: remove_ob(): name %s, destroyed leaving object\n", tmp->debug_desc ());
1153 } 1153 }
1154 1154
1483 * it, so save a few ticks and start from there. 1483 * it, so save a few ticks and start from there.
1484 */ 1484 */
1485 if (!(flag & INS_MAP_LOAD)) 1485 if (!(flag & INS_MAP_LOAD))
1486 for (tmp = floor ? floor : GET_MAP_OB (op->map, op->x, op->y); tmp != NULL; tmp = tmp->above) 1486 for (tmp = floor ? floor : GET_MAP_OB (op->map, op->x, op->y); tmp != NULL; tmp = tmp->above)
1487 if (tmp->type == PLAYER) 1487 if (tmp->type == PLAYER)
1488 tmp->contr->socket->update_look = 1; 1488 tmp->contr->socket->floorbox_update ();
1489 1489
1490 /* If this object glows, it may affect lighting conditions that are 1490 /* If this object glows, it may affect lighting conditions that are
1491 * visible to others on this map. But update_all_los is really 1491 * visible to others on this map. But update_all_los is really
1492 * an inefficient way to do this, as it means los for all players 1492 * an inefficient way to do this, as it means los for all players
1493 * on the map will get recalculated. The players could very well 1493 * on the map will get recalculated. The players could very well
1501 1501
1502 /* updates flags (blocked, alive, no magic, etc) for this map space */ 1502 /* updates flags (blocked, alive, no magic, etc) for this map space */
1503 update_object (op, UP_OBJ_INSERT); 1503 update_object (op, UP_OBJ_INSERT);
1504 1504
1505 /* Don't know if moving this to the end will break anything. However, 1505 /* Don't know if moving this to the end will break anything. However,
1506 * we want to have update_look set above before calling this. 1506 * we want to have floorbox_update called before calling this.
1507 * 1507 *
1508 * check_move_on() must be after this because code called from 1508 * check_move_on() must be after this because code called from
1509 * check_move_on() depends on correct map flags (so functions like 1509 * check_move_on() depends on correct map flags (so functions like
1510 * blocked() and wall() work properly), and these flags are updated by 1510 * blocked() and wall() work properly), and these flags are updated by
1511 * update_object(). 1511 * update_object().
1918 1918
1919 /* Basically same logic as above, except now for actual apply. */ 1919 /* Basically same logic as above, except now for actual apply. */
1920 if ((!op->move_type && tmp->move_on & MOVE_WALK) || 1920 if ((!op->move_type && tmp->move_on & MOVE_WALK) ||
1921 ((op->move_type & tmp->move_on) && (op->move_type & ~tmp->move_on & ~tmp->move_block) == 0)) 1921 ((op->move_type & tmp->move_on) && (op->move_type & ~tmp->move_on & ~tmp->move_block) == 0))
1922 { 1922 {
1923 move_apply (tmp, op, originator); 1923 move_apply (tmp, op, originator, true);
1924 1924
1925 if (op->destroyed ()) 1925 if (op->destroyed ())
1926 return 1; 1926 return 1;
1927 1927
1928 /* what the person/creature stepped onto has moved the object 1928 /* what the person/creature stepped onto has moved the object

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines