new object $social: $user_interfaces; var $has_commands local = \ #[["bow", [["bow", "*", "bow <object>", 'social_cmd, #[[1, ['object, []]]]]]]]; var $has_commands remote = #[]; var $has_commands shortcuts = #[]; var $root created_on = 838260513; var $root flags = ['variables, 'methods, 'code, 'command_cache, 'core]; var $root inited = 1; var $root managed = [$social]; var $root manager = $social; var $user_interfaces links = 1; protected method .social_cmd() { arg cmdstr, cmd, @who; var vars, i, n; (> .perms(caller(), 'command) <); vars = #[["$actor", this()], ["actor", .name()]]; n = 0; for i in (who) { if ((| i.name() |)) { vars = (vars.add(n ? ("$victim_" + n) : "$victim", i)).add(n ? ("victim_" + n) : "victim", i.name()); n++; } } (.location()).announce(.eval_message(cmd, vars)); };