… | |
… | |
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 | |
… | |
… | |
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 |