8b3 @verb #51:"invoke(old)" this none this rxdo #60 @program #51:"invoke(old)" this none this "Copied from Generic_Editor (#51):invoke by Hacker (#38) Mar 20 08:21:20 1997" ":invoke(...)" "to find out what arguments this verb expects," "see this editor's parse_invoke verb." new = args[1] if (!(caller in {this, player}) && !$perm_utils:controls(caller_perms(), player)) "...non-editor/non-player verb trying to send someone to the editor..." return E_PERM endif if ((who = this:loaded(player)) && this:changed(who)) if (!new) what = this:working_on(who) player:tell(what, "|1") if (this:suck_in(player, what)) player:tell("You are working on ", this:working_on(who)) endif return elseif (player.location == this) player:tell("You are still working on ", this:working_on(who)) if (msg = this:previous_session_msg()) player:tell(msg) endif return endif "... we're not in the editor and we're about to start something new," "... but there's still this pending session..." player:tell("You were working on ", this:working_on(who)) if (!$command_utils:yes_or_no("Do you wish to delete that session?")) what = this:working_on(player in this.active) player:tell(what, "|2") if (this:suck_in(player, what)) player:tell("Continuing with ", this:working_on(player in this.active)) if (msg = this:previous_session_msg()) player:tell(msg) endif endif return endif "... note session number may have changed => don't trust `who'" this:kill_session(player in this.active) endif spec = this:parse_invoke(@args) if (typeof(spec) == $LIST) player:tell(what, "|3") what = this:isa(#50) ? tostr(spec[1], ":", spec[2]) | (this:isa(#49) ? tostr(spec[1][1], ".", spec[1][2]) | (this:isa(#48) ? $string_utils:title_list(spec[1]) | argstr)) if (player:edit_option("local") && $object_utils:has_verb(this, "local_editing_info") && (info = this:local_editing_info(@spec))) this:invoke_local_editor(@info) elseif (this:suck_in(player, what)) this:init_session(player in this.active, @spec) endif endif "Last modified by Dax (#789) on Tue May 3 13:45:02 2005 MDT." . 0