Generic Booth #140

Parent #118Owner #36Flags read, fertileSource RPG Core/rpgcore-patched.db

Aliases: Generic Booth, booth

13 verbs · 70 properties · 0 children

Verbs

VerbSpecFlagsDefinerLines
l*ookany any anyrxd#14010
look_selfthis none thisrxd#1408
o*ut e*xit leavenone none nonerxd#14010
goany any anyrd#1404
yellany any anyrd#1408
tellthis none thisrxd#1406
@exdescribethis none nonerd#1407
dr*op th*rowthis none nonerxd#14013
g*et t*akethis none nonerxd#1408
enterthis none nonerd#1408
@listenthis at/to anyrd#14019
@clear @windowthis at/to anyrd#14019
init_for_corethis none thisrxd#14019

Properties

PropertyDefinerFlagsOwnerValue
listen#140r#21
exterior_description#140rc#36"You see the outside of a portable room."
clear#140r#21
arrive_msg#140rc#36"%N %<appears> from %l."
depart_msg#140rc#36"%N %<leaves> for "
not_my_tell#140r#21
x_loc#140r#21
y_loc#140r#21
virtual_exit_task#118r#2<clear>
defaulting_exit_oleave_msg#118rc#36<clear>
blessed_entrances#118rc#36<clear>
virtual_exits#118rc#36{}
give_short_alias#118rc#36<clear>
virtual_exit_to_use#118r#2<clear>
lit_from_outside#118rc#36<clear>
bot_locked#104rc#36<clear>
fakes#104r#36<clear>
retail#104rc#360
seat#104r#36<clear>
pool#104r#36<clear>
seat_desc#104r#36<clear>
pool_desc#104r#36<clear>
sit_phrase#104rc#36<clear>
stand_phrase#104rc#36<clear>
swim_phrase#104rc#36<clear>
dry_phrase#104rc#36<clear>
push_phrase#104rc#36<clear>
seat_aliai#104r#36<clear>
pool_aliai#104r#36<clear>
seat_contents#104r#36<clear>
pool_contents#104r#36<clear>
seat_max#104r#36<clear>
pool_max#104r#36<clear>
details#104rc#36<clear>
temp_detail_index#104rc#36<clear>
temp_detail_desc#104rc#36<clear>
outdoors#104r#36<clear>
attack_queue#104r#2<clear>
battle_on#104r#2<clear>
stop_msg#104rc#36<clear>
remove_msg#104rc#36<clear>
dump_msg#104rc#36<clear>
dump_loc#104rc#36<clear>
sanctuary#104rc#36<clear>
ansi_title#104r#36<clear>
dark_desc#104rc#36<clear>
title_style#104rc#36<clear>
build_help#104rc#36
list of 5{"\"@clear @window <on/off>\" - toggles a simple window to the outside. It does not create a window object that can be opened or closed, but does makes the walls opaque or transparent.", "", "@exdescribe <room> - enters an editor to describe the exterior.", "", "\"@listen <on/off>\" - set room to be able to listen through the walls."}
battle_task#104r#2<clear>
dig_level#104rc#36<clear>
holes#104r#2<clear>
help_msg#104rc#36{"yell <string> - screams <string> to the outside."}
who_location_msg#3rc#36<clear>
free_home#3rc#36<clear>
victim_ejection_msg#3rc#36<clear>
ejection_msg#3rc#36<clear>
oejection_msg#3rc#36<clear>
residents#3rc#36<clear>
free_entry#3rc#36<clear>
entrances#3c#36<clear>
blessed_object#3rc#36<clear>
blessed_task#3rc#36<clear>
exits#3c#36<clear>
dark#3rc#36<clear>
ctype#3rc#36<clear>
key#1c#360
aliases#1rc#36{"Generic Booth", "booth"}
description#1rc#36<clear>
object_size#1r#36{10821, -1090650497}
html#1rc#36<clear>

Ancestry

Ancestors (nearest first): #118 virtual exit room#104 RPG room#3 generic room#1 Root Class

Children: none

Call graph

calls n140_0 #140:l*ook n6_18 #6:tell n140_0->n6_18 n104_42 #104:title n140_0->n104_42 n104_4 #104:l*ook n140_0->n104_4 n140_1 #140:look_self n140_1->n6_18 n104_43 #104:look_self n140_1->n104_43 n6_79 #6:tell_lines n140_1->n6_79 n140_2 #140:o*ut n140_2->n6_18 n140_2->n104_42 n35_1 #35:say_action n140_2->n35_1 n20_34 #20:pronoun_sub n140_2->n20_34 n6_73 #6:moveto n140_2->n6_73 n140_3 #140:go n3_25 #3:e n140_3->n3_25 n3_14 #3:go n140_3->n3_14 n140_4 #140:yell n140_4->n6_18 n140_4->n104_42 n6_9 #6:titlec n140_4->n6_9 n3_4 #3:announce n140_4->n3_4 n140_5 #140:tell n1_12 #1:tell n140_5->n1_12 n3_16 #3:announce_all n140_5->n3_16 n140_6 #140:@exdescribe n140_6->n6_18 n140_6->n104_42 n56_3 #56:read_lines n140_6->n56_3 n140_7 #140:dr*op n140_7->n6_18 n140_7->n104_42 n140_7->n35_1 n3_33 #3:moveto n140_7->n3_33 n140_8 #140:g*et n140_8->n6_18 n140_8->n104_42 n140_8->n35_1 n140_8->n3_33 n140_9 #140:enter n140_9->n6_18 n140_9->n104_42 n140_9->n35_1 n140_9->n20_34 n140_9->n6_73 n140_9->n3_4 n140_10 #140:@listen n140_10->n6_18 n140_10->n104_42 n1_4 #1:titlec n140_10->n1_4 n140_11 #140:@clear n140_11->n6_18 n140_11->n104_42 n140_11->n1_4 n140_12 #140:init_for_core n118_19 #118:init_for_core n140_12->n118_19

Source

l*ook

Spec any any anyFlags rxdOwner #2Definer #140

Referenced by

none

Source

1if ((dobjstr == "out") || (dobjstr == "outside"))
2if (((player.location == this) && (!prepstr)) && this.clear)
3player:tell("Outside ", this:title(), ":");
4this.location:look_self();
5else
6player:tell("You cannot see outside ", this:title(), ".");
7endif
8else
9pass(@args);
10endif

look_self

Spec this none thisFlags rxdOwner #2Definer #140

Referenced by

none

Source

1if (player.location == this)
2return pass(@args);
3endif
4player:tell_lines(this.exterior_description);
5if (this.clear)
6player:tell("On the inside you can see:");
7return pass(@args);
8endif

o*ut e*xit leave

Spec none none noneFlags rxdOwner #2Definer #140

Referenced by

none

Source

1if (player.location != this)
2return player:tell("You're not in ", this:title(), "!!");
3endif
4$you:say_action(tostr(this.depart_msg, this.location:title(), "."));
5this.not_my_tell = 0;
6this.location:announce($string_utils:pronoun_sub(this.arrive_msg, player));
7player:moveto(this.location);
8this.not_my_tell = 1;
9player.x_loc = this.x_loc;
10player.y_loc = this.y_loc;

go

Spec any any anyFlags rdOwner #2Definer #140

Referenced by

none

Source

1if (((!args) || (dobjstr == "out")) || (iobjstr == "out"))
2return this:out();
3endif
4pass(@args);

yell

Spec any any anyFlags rdOwner #2Definer #140

Referenced by

none

Source

1if (player.location != this)
2return player:tell("You're not there.");
3endif
4this.not_my_tell = 0;
5this.location:announce_all(player:titlec(), " yells: **", argstr, "**  from ", this:title(), ".");
6this.not_my_tell = 1;
7this:announce(player:titlec(), " yells: **", argstr, "**");
8player:tell("You yell: **", argstr, "**");

tell

Spec this none thisFlags rxdOwner #2Definer #140

Referenced by

none

Source

1if (this.listen == 0)
2return pass(@args);
3endif
4if (this.not_my_tell)
5this:announce_all("[Outside] ", @args);
6endif

@exdescribe

Spec this none noneFlags rdOwner #2Definer #140

Referenced by

none

Source

1if ((player != this.owner) && (!player.wizard))
2return player:tell("You don't own ", this:title(), "!");
3endif
4player:tell("Please enter ", this:title(), "'s exterior description: ");
5x = $command_utils:read_lines();
6this.exterior_description = x;
7player:tell("Exterior description has been set.");

dr*op th*row

Spec this none noneFlags rxdOwner #2Definer #140

Referenced by

none

Source

1set_task_perms(callers() ? caller_perms() | player);
2if (this.location != player)
3player:tell("You don't have that.");
4elseif (!player.location:acceptable(this))
5player:tell("You can't drop that here.");
6else
7this:moveto(player.location);
8if (this.location == player.location)
9$you:say_action(tostr("%N %<drops> ", this:title(), "."));
10else
11player:tell("You can't seem to drop that here.");
12endif
13endif

g*et t*ake

Spec this none noneFlags rxdOwner #2Definer #140

Referenced by

none

Source

1if (this.location != player.location)
2player:tell("You don't see that here.");
3elseif (((player == this.owner) || (player == this.location.owner)) || player.wizard)
4this:moveto(player);
5$you:say_action(tostr("%N %<takes> ", this:title(), "."));
6else
7player:tell("You can't move that.");
8endif

enter

Spec this none noneFlags rdOwner #2Definer #140

Referenced by

none

Source

1if (player.location != this.location)
2return player:tell("You're not in ", this.location:title(), "!!");
3endif
4$you:say_action(tostr(this.depart_msg, this:title(), "."));
5this.not_my_tell = 0;
6this:announce($string_utils:pronoun_sub(this.arrive_msg, player));
7player:moveto(this);
8this.not_my_tell = 1;

@listen

Spec this at/to anyFlags rdOwner #2Definer #140

Referenced by

none

Source

1if ((player == this.owner) || player.wizard)
2if (iobjstr == "on")
3if (this.listen == 1)
4return player:Tell(this:titlec(), " is already in listening mode.");
5endif
6player:tell(this:titlec(), " is now listening to it's location.");
7this.listen = 1;
8elseif (iobjstr == "off")
9if (this.listen == 0)
10return player:tell(this:titlec(), " is not currently listening.");
11endif
12player:tell(this:titlec(), " is no longer listening to its location.");
13this.listen = 0;
14else
15player:tell(this.listen ? "Listening is on." | "Listening is off.");
16endif
17else
18player:tell("Only the owner can change the listening status of ", this:title(), ".");
19endif

@clear @window

Spec this at/to anyFlags rdOwner #2Definer #140

Referenced by

none

Source

1if ((player == this.owner) || player.wizard)
2if (iobjstr == "on")
3if (this.clear == 1)
4return player:tell(this:titlec(), " is already clear.");
5endif
6player:tell(this:titlec(), " is no longer opaque.");
7this.clear = 1;
8elseif (iobjstr == "off")
9if (this.clear == 0)
10return player:tell(this:titlec(), " currently has no window.");
11endif
12player:tell(this:titlec(), " is now opaque.");
13this.clear = 0;
14else
15player:tell(this.clear ? "Room clear." | "Room opaque.");
16endif
17else
18player:tell("Only the owner can change the opacity of ", this:title(), ".");
19endif

init_for_core

Spec this none thisFlags rxdOwner #2Definer #140

Referenced by

none

Source

1if (caller_perms().wizard)
2if (this == $booth)
3this.listen = 1;
4this.exterior_description = "You see the outside of a portable room.";
5this.clear = 1;
6this.arrive_msg = "%N %<appears> from %l.";
7this.depart_msg = "%N %<leaves> for ";
8this.not_my_tell = 1;
9this.x_loc = 1;
10this.y_loc = 1;
11else
12for p in (properties($booth))
13if ((!p) in {"build_help", "help_msg"})
14clear_property(this, p);
15endif
16endfor
17endif
18return pass(@args);
19endif