Index: class.doc ================================================================== --- class.doc +++ class.doc @@ -1845,11 +1845,13 @@ bit22 * Prevents movement regardless of Height, but may still allow sliding. bit23 * - Reserved for future. + If this bit is set, then do not consider any further objects at the + new location of the shoved object after successfully shoving, and + instead restart the movement immediately. bit24 * Allows sliding to the left regardless of Height; the other attributes still need to be correct (unless bit26 is set). The game engine sets this bit if the Climb/Height is OK for moving. Index: exec.c ================================================================== --- exec.c +++ exec.c @@ -886,10 +886,11 @@ if(!(hit&0x44) && (oE->shovable&(1<inertia>=oE->weight && !(oE->oflags&OF_VISUALONLY)) { oE->inertia=o->inertia; if(move_dir(obj,objE,dir)) { if(!(oE->oflags&OF_DESTROYED)) o->inertia=oE->inertia; hit|=0x8000; + if(hit&0x800000) goto restart; } } if(hit&0x400) goto fail; objE=obj_below(objE); }