! Swap.h ! created june 04 by she's long gone ! from a suggestion by andrew plotkin ! ! please send all feedback to she's long gone ! ( w4y795b02@sneakemail.com ) ! ! this file is public domain. ! it will 'swap' two objects, ! moving each to the other's parent. ! note that unless the 'flag' variable is ! non-zero, a swapped object will ! be removed if the other has no parent. ! ! #Include after "Parser". [ Swap a b flag pa pb; pa = parent(a); pb = parent(b); if (pa) { move b to pa; if (b == player) location = pa; } else if (~~flag) remove b; if (pb) { move a to pb; if (a == player) location = pb; } else if (~~flag) remove a; #ifdef DEBUG; print " (", (The) a, " and ", (the) b, " have been swapped.) "; #endif; ];