Jafaar (#458)

(an instance of Useful Utilitarian PC made by Jafaar)

     Tall, dark, sinister, with a beard falling from his chin in demented angles, Jafaar eyes you warily, before assuming a submissive demeanor and humbling himself before you. "My only wish is to serve," he drones. You sense, however, that this magician, this wizard (if you will), is more than he seems.

Go to location of this object, The Body Bag.


Jafaar owns Jafaar


VERB SOURCE CODE:

focus:
"focus on ";
"  Sets  as the present focus of your attention.";
if (caller != this)
    player:tell("You can't use ", this:title(), "'s ", verb, " command!");
    return E_PERM;
endif
iobj = player:my_match_object(iobjstr);
if ($command_utils:object_match_failed(iobj, iobjstr))
    return;
endif
if (typeof(result = this:set_focused(iobj)) == ERR)
    player:tell(tostr(result));
else
    player:tell("You are now focusing on ", $string_utils:nn(iobj), ".");
endif
.



my_match_object:
return (args[1] == "it") ? this.focused | pass(@args);
.


set_focused:
if ((caller == this) || $perm_utils:controls(caller_perms(), this))
    if (typeof(o = args[1]) != OBJ)
        return E_TYPE;
    else
        this.focused = o;
        return 1;
    endif
else
    return E_PERM;
endif
.


my_huh:
set_task_perms(caller_perms());
return pass(@args) || this:focusing_huh(@args);
.


focusing_huh:
if (typeof(set_task_perms(caller_perms())) == ERR)
    return E_PERM;
endif
vrb = args[1];
pass = args[2];
.



PROPERTY DATA:
      focused