generic living creature #154

Parent #107Owner #361Flags read, fertileSource hellcore/hellcore.db

Aliases: generic living creature

4 verbs · 89 properties · 2 children

Verbs

VerbSpecFlagsDefinerLines
popmonthis none thisrxd#15455
feednone out of/from inside/from thisrxd#15415
floatsthis none thisrxd#1549
scamthis none nonerxd#1541

Properties

PropertyDefinerFlagsOwnerValue
hands#107rc#361<clear>
wielding#107rc#361<clear>
health#107rc#36120
unarmed_weapon#107rc#361<clear>
size#107rc#361<clear>
posture#107rc#361<clear>
gender#107rc#361<clear>
respawn#107rc#361<clear>
corpse#107rc#361<clear>
has_proper_name#107rc#361<clear>
die_msg#107rc#361<clear>
body_parts#107rc#361<clear>
wearing#107rc#361<clear>
armor#107rc#361<clear>
last_swing_message#107rc#361<clear>
health_max#107rc#361<clear>
fighting#107rc#361{}
last_dodge_time#107rc#361<clear>
following#107rc#361<clear>
icon#107rc#361<clear>
say_msg#107rc#361<clear>
say_to_msg#107rc#361<clear>
afterlife#107rc#361<clear>
get_msg#107rc#361<clear>
drop_msg#107rc#361<clear>
blood#107rc#361{}
squeals#107rc#361<clear>
prc#107rc#361<clear>
ppc#107rc#361<clear>
poc#107rc#361<clear>
psc#107rc#361<clear>
pr#107rc#361<clear>
pp#107rc#361<clear>
po#107rc#361<clear>
ps#107rc#361<clear>
pq#107rc#361<clear>
pqc#107rc#361<clear>
brief#107rc#361<clear>
knockout#107rc#361<clear>
knockout_msg#107rc#361<clear>
body#107rc#361#-1
wake_msg#107rc#361<clear>
owake_msg#107rc#361<clear>
oknockout_msg#107rc#361<clear>
friends#107rc#361<clear>
home#107rc#361<clear>
respawn_msg#107rc#361<clear>
move_action#107rc#361<clear>
heart#107rc#361-1
last_heartbeat#107rc#3611086426779
dead#107rc#361<clear>
_tohit_next#107rc#361<clear>
last_words_msg#107rc#361<clear>
attacked#107rc#361<clear>
opens_doors#107rc#361<clear>
movable_by_explosion#107rc#361<clear>
obscured#107rc#361<clear>
obscured_desc_msg#107rc#361<clear>
cooldowns#107rc#361<clear>
combat_rounds#107rc#361<clear>
encumbrance#107rc#361<clear>
respawn_handler#107rc#361<clear>
distant_form_msg#107rc#361<clear>
block_msg#107rc#361<clear>
attack_on_block#107rc#361<clear>
last_stunned#107rc#361<clear>
nude_descs#107rc#361<clear>
skills#107rc#361<clear>
explode_msg#107rc#361<clear>
death_listeners#107rc#361<clear>
queue#92r#361<clear>
preemptible#92r#361<clear>
executing#92r#361{}
process_queue#92r#361<clear>
help_msg#92rc#361<clear>
last_action#92r#361<clear>
article#92rc#361<clear>
last_last_action#92rc#361<clear>
action_count#92rc#361<clear>
aliases#1rc#361{"generic living creature"}
description#1rc#361<clear>
object_size#1r#29{8679, 1298433880}
hidden_verbs#1rc#361<clear>
phelp_msg#1rc#361<clear>
weight#1rc#361<clear>
owner_verbs#1rc#361<clear>
plural_name#1rc#361<clear>
client_image#1rc#361<clear>
listening#1rc#361<clear>

Ancestry

Ancestors (nearest first): #107 generic creature#92 generic actor#1 root

Children: #100 generic RPG player, #106 generic NPC

Call graph

calls n154_0 #154:popmon n107_12 #107:wearing_on n154_0->n107_12 n1_66 #1:announce_action_text n154_0->n1_66 n1_39 #1:dnamec n154_0->n1_39 n103_2 #103:junk n154_0->n103_2 n107_6 #107:take_damage n154_0->n107_6 n20_34 #20:pronoun_sub n154_0->n20_34 n154_1 #154:feed n107_43 #107:tell n154_1->n107_43 n107_64 #107:_allows n154_1->n107_64 n107_9 #107:dname n154_1->n107_9 n92_2 #92:queue_action n154_1->n92_2 n154_3 #154:scam n154_3->n107_43 n154_3->n107_9

Source

popmon

Spec this none thisFlags rxdOwner #361Definer #154

Referenced by

Source

1"Copied from Obvious (#45302):popmon Tue Sep 12 11:31:26 2006 PDT";
2"Copied from generic programmer (#58):popmon by Dej (#45097) Tue Sep 12 10:27:12 2006 PDT";
3surprise = args[1];
4facelist = this:wearing_on(#16379);
5drink = #-1;
6if (facelist)
7mon = facelist[1];
8if (mon.name == "monocle")
9for w in (this.wielding)
10if (is_a(w, #1133))
11drink = w;
12endif
13endfor
14fork (1)
15if (surprise == -1)
16this:aat(this:dnamec(), "'s ", mon.name, " spins in place.");
17return;
18endif
19if (surprise == 4)
20this:aat(this:dnamec(), "'s ", mon.name, " shatters!");
21$rpg:junk(mon);
22this:take_damage($damages.stabbing, 1, $bodyparts.face);
23return;
24endif
25if (surprise == 1)
26this:aat(this:dnamec(), "'s ", mon.name, " pops out!");
27this.wearing = setremove(this.wearing, mon);
28if (burninators = player.location:occupants(#113546))
29b = burninators[random($)];
30this:aat(mon:dnamec(), " ricochets off of the ", b.name, ".");
31b:print_flag();
32endif
33if (valid(drink))
34mon:moveto(drink);
35this:aat(mon:dnamec(), " splashes into ", this.name, "'s ", drink.name, ".");
36else
37mon:moveto(this.location);
38endif
39else
40exits = this.location:exits();
41exit = exits[random($)];
42if (valid(dest = exit:throws_to(mon, this)))
43this:aat(this:dnamec(), "'s ", mon.name, " pops out and flies off to the ", exit.name, "!");
44dest:announce_all($su:ps(exit.otherside.throw_through_msg, this, mon, exit.otherside));
45this.wearing = setremove(this.wearing, mon);
46mon:moveto(dest);
47else
48this:aat(this:dnamec(), "'s ", mon.name, " pops out and flies halfway across the room!");
49this.wearing = setremove(this.wearing, mon);
50mon:moveto(this.location);
51endif
52endif
53endfork
54endif
55endif

feed

Spec none out of/from inside/from thisFlags rxdOwner #361Definer #154

Referenced by

none

Source

1if (`player.location.no_combat ! ANY => 0')
2player:tell("For whatever reason, this just doesn't seem like the place for it.");
3return;
4endif
5if (!#69007:doses_for(player))
6player:tell("You don't really feel like drinking ", this.name, "'s blood. Yuck.");
7elseif (player == this)
8player:tell("You twist around, trying to bite your own neck. You can't seem to do it.");
9elseif (!is_a(this.bloodstain, #3611))
10player:tell(this.name, " doesn't have any blood to suck.");
11elseif (!this:_allows("suck", player))
12player:tell("You don't think ", this:dname(), " is going to let you drink ", this.pp, " blood. Maybe if you ask nicely?");
13else
14player:queue_action($actions.feedfrom, {this}, 1, "feed from " + this.name);
15endif

floats

Spec this none thisFlags rxdOwner #361Definer #154

Referenced by

none

Source

1"Copied from generic creature (#109):floats by Gilmore (#98) Sat Jun 27 05:16:29 2009 CDT";
2for x in (this.wearing)
3if (is_a(x, #4568))
4return 1;
5endif
6endfor
7if (this.executing && (this.executing[1] == $actions.climb))
8return 1;
9endif

scam

Spec this none noneFlags rxdOwner #361Definer #154

Referenced by

none

Source

1player:tell("You don't think ", this:dname(), " will fall for it.");