Everyman (#40)(an instance of generic player made by Hacker)     ... He never even got to go to Disneyland. Everyman owns VERB SOURCE CODE: eval:
"eval(code)";
"Evaluate code with $no_one's permissions (so you won't damage anything).";
"If code does not begin with a semicolon, set this = caller (in the code to be evaluated)
and return the value of the first `line' of code. This means that subsequent lines
will not be evaluated at all.";
"If code begins with a semicolon, set this = caller and let the code decide for itself
when to return a value. This is how to do multi-line evals.";
set_task_perms(this);
exp = args[1];
if (exp[1] != ";")
return eval(tostr("this=", caller, "; return ", exp, ";"));
else
return eval(tostr("this=", caller, ";", exp, ";"));
endif
.
moveto: return 0; . eval_d:
":eval_d(code)";
"exactly like :eval except that the d flag is unset";
"Evaluate code with $no_one's permissions (so you won't damage anything).";
"If code does not begin with a semicolon, set this = caller (in the code to be evaluated)
and return the value of the first `line' of code. This means that subsequent lines
will not be evaluated at all.";
"If code begins with a semicolon, set this = caller and let the code decide for itself
when to return a value. This is how to do multi-line evals.";
set_task_perms(this);
exp = args[1];
if (exp[1] != ";")
return $code_utils:eval_d(tostr("this=", caller, "; return ", exp, ";"));
else
return $code_utils:eval_d(tostr("this=", caller, ";", exp, ";"));
endif
.
call_verb: "call_verb(object, verb name, args)"; "Call verb with $no_one's permissions (so you won't damage anything)."; "One could do this with $no_one:eval, but ick."; set_task_perms(this); return args[1]:(args[2])(@args[3]); . PROPERTY DATA: |