Index: TODO ================================================================== --- TODO +++ TODO @@ -23,11 +23,10 @@ * Manual scroll option * Bookmarks * Message trace menu to enable/disable * Bugs * Figure out why the $SeekerCloser class doesn't seem to work properly - * Level 232 of SUPERHRO puzzle set (the Lava shouldn't expand? why?) * Animation stopping unexpectedly (until a key is pushed) * ObjLF.Volume+ObjRF.Volume+obj.Volume if ObjLF and/or ObjRF doesn't exist? * Display solution comments/timestamp * VCR mode * Command-line switch for batch export levels Index: class.doc ================================================================== --- class.doc +++ class.doc @@ -3027,10 +3027,13 @@ * The way that the trigger phase works is different. * In the ARRIVED and DEPARTED messages, Arg1 is always zero. * Diagonal shoving is not possible. + +* The JumpTo instruction has an additional effect that rarely matters, +having to do with the timing of ARRIVED, DEPARTED, and MOVED messages. === Level table definition === The following blocks are allowed in a level table definition: Index: exec.c ================================================================== --- exec.c +++ exec.c @@ -1652,10 +1652,14 @@ int xx,yy; if(n==VOIDLINK) return 0; xx=objects[n]->x; yy=objects[n]->y; if(!move_to(from,n,x,y)) return 0; + if(classes[objects[n]->class]->cflags&CF_COMPATIBLE) { + objects[n]->arrived2=objects[n]->departed2=0; + objects[n]->oflags&=~OF_MOVED2; + } send_message(VOIDLINK,n,MSG_JUMPED,NVALUE(xx),NVALUE(yy),OVALUE(from)); return 1; } static int defer_move(Uint32 obj,Uint32 dir,Uint8 plus) {