furnace #367
Aliases: furnace
8 verbs · 72 properties · 0 children
Verbs
| Verb | Spec | Flags | Definer | Lines |
|---|---|---|---|---|
look_self | this none this | rxd | #367 | 2 |
watch_tell | this none this | rxd | #367 | 20 |
open | this none none | rxd | #367 | 8 |
close | this none none | rxd | #367 | 4 |
view watch | this none none | rxd | #367 | 19 |
heartbeat | this none this | rxd | #367 | 5 |
alert | this none this | rxd | #367 | 18 |
new_player | this none this | rxd | #367 | 7 |
Properties
| Property | Definer | Flags | Owner | Value |
|---|---|---|---|---|
fail_view_msg | #367 | rc | #361 | "You stare into the viewport on the furnace door -- agh, it's bright! You can't see any details, only the fierce yellow-white of the blaze, before you're forced to look away." |
ofail_view_msg | #367 | rc | #361 | "%N looks into the furnace viewport. The heat and light prove too much for %o, and %s looks away after a few seconds." |
view_msg | #367 | rc | #361 | "You step up to the furnace and stare in through the viewport." |
oview_msg | #367 | rc | #361 | "%N steps up to the furnace viewport and begins watching the fire within." |
endview_msg | #367 | rc | #361 | "You step back from the furnace." |
oendview_msg | #367 | rc | #361 | "%N steps back from staring into the furnace's viewport. %P eyes glow faintly red for a few moments afterward." |
obj_create_msg | #367 | rc | #361 | "In the furnace, [item] forms out of the glowing carbon." |
obj_burn_msg | #367 | rc | #361 | "In the furnace, [item] drops out of a pipe and vaporizes in the heat." |
flushing | #367 | rc | #361 | 0 |
viewer | #367 | rc | #361 | #-1 |
capacity | #54 | rc | #361 | <clear> |
weight_reduction | #54 | rc | #361 | <clear> |
opaque | #54 | rc | #361 | <clear> |
dark | #54 | rc | #361 | <clear> |
close_msg | #54 | rc | #361 | <clear> |
open_msg | #54 | rc | #361 | <clear> |
remove_msg | #54 | rc | #361 | <clear> |
put_msg | #54 | rc | #361 | <clear> |
empty_msg | #54 | rc | #361 | <clear> |
contents_msg | #54 | rc | #361 | <clear> |
open_fail_msg | #54 | rc | #361 | <clear> |
put_fail_msg | #54 | rc | #361 | <clear> |
closed_msg | #54 | rc | #361 | <clear> |
closable | #54 | rc | #361 | <clear> |
open | #54 | rwc | #361 | 0 |
get_from_msg | #54 | rc | #361 | <clear> |
max_objects | #54 | rc | #361 | <clear> |
spill_on_break | #54 | rc | #361 | <clear> |
peek_msg | #54 | rc | #361 | <clear> |
clean_start_msg | #54 | rc | #361 | <clear> |
oclean_start_msg | #54 | rc | #361 | <clear> |
clean_finish_msg | #54 | rc | #361 | <clear> |
oclean_finish_msg | #54 | rc | #361 | <clear> |
break_msg | #255 | rc | #361 | <clear> |
repair_difficulty | #255 | rc | #361 | <clear> |
junk_on_break | #255 | rc | #361 | <clear> |
rename_on_break | #255 | rc | #361 | <clear> |
smashable | #255 | rc | #361 | <clear> |
repairable | #255 | rc | #361 | <clear> |
armor | #255 | rc | #361 | <clear> |
held_break_msg | #255 | rc | #361 | <clear> |
oheld_break_msg | #255 | rc | #361 | <clear> |
handed | #5 | rc | #361 | <clear> |
wield_msg | #5 | rc | #361 | <clear> |
unwield_msg | #5 | rc | #361 | <clear> |
size | #5 | rc | #361 | <clear> |
look_place_msg | #5 | rc | #361 | "The furnace rages with heat and rumble and flickering red." |
value | #5 | rc | #361 | <clear> |
get_msg | #5 | rc | #361 | <clear> |
drop_msg | #5 | rc | #361 | <clear> |
get_fail_msg | #5 | rc | #361 | <clear> |
junk_ok | #5 | rc | #361 | <clear> |
floats | #5 | rc | #361 | <clear> |
long_name_msg | #5 | rc | #361 | <clear> |
article | #5 | rc | #361 | <clear> |
setup_list | #5 | rc | #361 | <clear> |
health | #5 | rc | #361 | <clear> |
health_max | #5 | rc | #361 | <clear> |
min_skill | #5 | rc | #361 | <clear> |
skill | #5 | rc | #361 | <clear> |
recipe_for | #5 | rc | #361 | <clear> |
carried_msg | #5 | rc | #361 | <clear> |
aliases | #1 | rc | #361 | {"furnace"} |
description | #1 | rc | #361 | <clear> |
object_size | #1 | r | #29 | {0, 0} |
hidden_verbs | #1 | rc | #361 | <clear> |
phelp_msg | #1 | rc | #361 | <clear> |
weight | #1 | rc | #361 | <clear> |
owner_verbs | #1 | rc | #361 | <clear> |
plural_name | #1 | rc | #361 | <clear> |
client_image | #1 | rc | #361 | <clear> |
listening | #1 | rc | #361 | <clear> |
Ancestry
Ancestors (nearest first): #54 generic container → #255 generic smashable thing → #5 generic thing → #1 root
Children: none
Call graph
Source
look_self
Referenced by
none
Source
1pass(@args); 2player:tell("You can see about ", $su:gn(length($recycler.contents)), " pieces of coal burning inside.");
watch_tell
Referenced by
none
Source
1if (this.open) 2{sign, itemname, parent, ?location} = args; 3bold = is_a(parent, $actor) ? $ansi.bold_on | ""; 4if (!is_a(parent, $decal)) 5itemname = ($su:a_or_an(itemname) + " ") + itemname; 6endif 7if (is_a(parent, $weather) && (parent(parent) == $weather)) 8itemname = itemname + " sky"; 9endif 10if (sign == "+") 11this.location:announce_all($ansi.yellow, bold, $su:subst(this.obj_create_msg, {{"[item]", itemname}}), $ansi.reset); 12else 13this.location:announce_all($ansi.red, bold, $su:subst(this.obj_burn_msg, {{"[item]", itemname}}), $ansi.reset); 14endif 15endif 16if (random(100) < 10) 17if (!this.location:occupants($player)) 18this:close(); 19endif 20endif
open
Referenced by
none
Source
1if (this.viewer) 2player:tell("You'll have to get ", this.viewer.name, " to step back from the viewport first."); 3return; 4endif 5pass(@args); 6if (this.open) 7$recycler.watchers = setadd($recycler.watchers, this); 8endif
close
Referenced by
- #367:watch_tell line 18:
this:close
Source
1pass(@args); 2if (!this.open) 3$recycler.watchers = setremove($recycler.watchers, this); 4endif
view watch
Referenced by
none
Source
1if (this.open) 2player:tell("You can already see inside, the door is open!"); 3return; 4elseif (this.viewer) 5player:tell("You can't do that, ", this.viewed.name, " beat you to it."); 6return; 7elseif (!player.programmer) 8player:tell(this.fail_view_msg); 9this.location:announce_all_but({player}, $su:ps(this.ofail_view_msg)); 10this:area():god_check(player, this); 11return; 12endif 13this.viewer = player; 14player:tell(this.view_msg); 15this.location:announce_all_but({player}, $su:ps(this.oview_msg)); 16$recycler:do_player_watch(player); 17player:tell(this.endview_msg); 18this.location:announce_all_but({player}, $su:ps(this.oendview_msg)); 19this.viewer = #-1;
heartbeat
Referenced by
none
Source
1return; 2if (length($recycler.contents) < 5) 3this.location:broadcast_noise("From %dir you hear a %vol computer voice: WARNING! BOILER COAL CRITICAL!", 7); 4this.location:announce_all("A loud computer voice erupts from the furnace: WARNING! BOILER COAL CRITICAL!"); 5endif
alert
Referenced by
none
Source
1l = args[1]; 2if (l > 100) 3m1 = "The boiler room rumbles, and a blast of heat belches from the furnace, nearly knocking you down."; 4m2 = "A %vol rumble and a blast of heat wash over you from %dir."; 5vol = 9; 6elseif (l > 50) 7m1 = "The boiler shudders, and a wave of heat thrums from the furnace."; 8m2 = "From %dir you hear a %vol rumble and a wave of heat."; 9vol = 5; 10else 11m1 = "The boiler shivers with a low rumble."; 12m2 = ""; 13vol = 0; 14endif 15this.location:announce_all(m1); 16if (vol) 17this.location:broadcast_noise(m2, vol); 18endif
new_player
Referenced by
- #4:req*uest line 15:
$furnace:new_player
Source
1m1 = tostr("From ", this:dname(), ", a baby screams, then fades into the distance."); 2m2 = "You hear a %vol baby's cry from %dir."; 3vol = 6; 4this.location:announce_all(m1); 5fork (0) 6this.location:broadcast_noise(m2, vol); 7endfork