Switch to edit mode.
Name(s): p_freeze p_thaw p_extend p_solidify p_subsidise p_petrify1: if (caller_perms() != this.owner && !caller_perms().wizard)
2: raise(E_PERM)
3: endif
4: act = verb[3..length(verb)]
5: targ = args[1]
6: length(args) == 1 && (args = {@args, 0})
7: if (targ:isa($accountable) && verb != "p_freeze")
8: c = 0
9: for object in (targ.owned_objects)
10: suspend(0)
11: callers()[1][2][1..2] == "p_" || ((c = c + 1) && this:(verb)(object, 1))
12: endfor
13: c && $msg:mtell("mass", act, c)
14: else
15: if (act == "petrify")
16: targ.subsidised = 1
17: t = 0
18: elseif (act == "solidify")
19: t = 0
20: elseif (act == "subsidise")
21: targ.subsidised = 1
22: elseif (act == "thaw")
23: t = time() + $quota:ttl()
24: targ.subsidised = 0
25: elseif (act == "extend")
26: if (targ.best_before)
27: t = targ.best_before + $quota:ttl()
28: else
29: act = "not_much"
30: t = 0
31: endif
32: endif
33: $building_utils:set_best_before(targ, t)
34: args[2] || $msg:mtell(act, targ, $string_utils:from_seconds(targ.best_before - time()))
35: endif
36: "Last modified by whiz (#3135) on Tue Feb 12 17:31:23 2002 MST."
37: "This verb previously owned by whiz (#3135), and chowned to $slacker upon dewizarding (Sat Aug 17 14:50:03 2002 MDT)."
38: "Last modified by Dax (#789) on Sat Aug 17 14:50:03 2002 MDT."