SYNOPSIS void set_this_object(object object_to_pretend_to_be); DESCRIPTION This is a privileged function, only to be used in the master object or in the simul_efun object. It changes the result of this_object() in the using function, and the result of previous_object() in functions called in other objects by call_other(). Its effect will remain till there is a return of an external function call, or another call of set_this_object(). While executing code in the master object's program or the primary simul_efun object's program, set_this_object() is granted even if this_object() is altered by set_this_object(). This does not apply to functions inherited from other programs. Use it with extreme care to avoid inconsistencies. After a call of set_this_object(), some LPC-constructs might behave in an odd manner, or even crash the system. In particular, using global variables or calling local functions (except by call_other) is illegal. With the current implementation, global variables can be accessed, but this is not guaranteed to work in subsequent versions. Allowed are call_other, map functions, access of local variables (which might hold array pointers to a global array), simple arithmetic and the assignment operators. BUG After set_this_object(), references to global variables and local function should be actively caught and rejected. SEE ALSO this_object(E), set_this_player(E)