generic natural weapon #50181
Aliases: generic natural weapon, natweap, generic, natural, weapon
9 verbs · 25 properties · 0 children
Verbs
| Verb | Spec | Flags | Definer | Lines |
|---|---|---|---|---|
dam | this none this | | #50181 | 10 |
used | this none this | | #50181 | 11 |
attack pen pierce | this none this | | #50181 | 3 |
notify_parry notify_clang | this none this | | #50181 | 3 |
announce_parry | this none this | rx | #50181 | 6 |
is_wooden | this none this | rx | #50181 | 1 |
announce_swing | this none this | rx | #50181 | 12 |
glued | this none this | | #50181 | 2 |
may_wield | this none this | | #50181 | 2 |
Properties
| Property | Definer | Flags | Owner | Value |
|---|---|---|---|---|
dodgable | #50181 | | — | not readable (E_PERM) |
parryable | #50181 | | — | not readable (E_PERM) |
slowness | #50181 | | — | not readable (E_PERM) |
parry | #50181 | | — | not readable (E_PERM) |
attack | #50181 | | — | not readable (E_PERM) |
pen | #50181 | | — | not readable (E_PERM) |
dam | #50181 | | — | not readable (E_PERM) |
skill | #50181 | | — | not readable (E_PERM) |
hands | #50181 | | — | 0 |
pierce | #50181 | | — | 0 |
max_str_bonus | #50181 | | — | not readable (E_PERM) |
disarmable | #50181 | | — | 0 |
natural | #50181 | | — | 1 |
can_degrade | #50181 | | — | not readable (E_PERM) |
track_usage | #50181 | | — | not readable (E_PERM) |
worth | #50181 | | — | -1 |
keep_at_death | #50181 | | — | 1 |
condition | #50181 | | — | E_NONE |
odrop_failed_msg | #50181 | | — | "%<tries> to drop %t but fails!" |
odrop_succeeded_msg | #50181 | | — | "%<drops> %t." |
otake_succeeded_msg | #50181 | | — | "%<picks> up %t." |
key | #50181 | | — | not readable (E_PERM) |
aliases | #50181 | | — | {"generic natural weapon", "natweap", "generic", "natural", "weapon"} |
description | #50181 | | — | "A generic implement of destruction." |
object_size | #50181 | | — | {6766, 1141286561} |
Ancestry
Ancestors (nearest first): #82 generic weapon → #517 Generic LRPG Thing
Children: none
Call graph
Source
dam
Referenced by
none
Source
1":dam(by,targ) => Damage adjusted for wielder's size."; 2if (valid(doll = $local.rpg:get_doll(by = args[1]))) 3 size = (doll.size > 0) ? doll.size | 1; 4 dam = (this.dam > 0) ? this.dam | 1; 5 "Still fooling with equations here. Whatcha like?"; 6 return (size > 10) ? dam + random((size / 10) * dam) | (dam / (10 / size)); 7else 8 "if the doll isn't valid, who cares?"; 9 return 0; 10endif
used
Referenced by
none
Source
1"Remove this later if we make natural weapons designed for players to wield, but right now they shouldn't even have them."; 2{by, targ} = args; 3if (is_player(by) && (!(this in `$local.rpg:get_doll(by).natural_weapons ! E_INVIND => {}'))) 4 by:tell("You suddenly become acutely aware that ", this.name, " was not meant to be wielded by your kind. The appendage digs painfully into your flesh."); 5 by:room_announce(by:title(), " screams, \"OH MY GOD get this ", this.name, " off of me!!!\""); 6 return E_PERM; 7else 8 return pass(by, targ); 9endif 10"Quinn 10-AUG-93 0227-ET: Added."; 11"Profane 8-DEC-96 1119PST -- put this verb back in action and put in exception for those damn razor claws";
attack pen pierce
Referenced by
none
Source
1"Modified verb for natural weapon to disregard .condition of weapon, since natural weapons shouldn't degrade anyway. Saves ticks too, woo-woo!"; 2return this.(verb); 3"Profane 2-17-95 23:21EST - Added.";
notify_parry notify_clang
Referenced by
none
Source
1"Since natural weapons shouldn't degrade, put in this tick-saving return over the one on #82."; 2return; 3"Profane 2-18-95 00:50EST - Added.";
announce_parry
Referenced by
none
Source
1":announce_parry(attacker, defender, location-string, weapon)"; 2"Announce that `defender' has used this weapon to parry an attack by `attacker' with `weapon' aimed at `location-string'."; 3who = args[2]; 4who:tell(("You parry with your " + this.name) + "."); 5who.location:announce_all_but({who}, ((((who.name + " parries with ") + who.pp) + " ") + this.name) + "."); 6"Profane 2-18-95 00:55EST Added (removed degrade check from #82)";
is_wooden
Referenced by
none
Source
1return 0;
announce_swing
Referenced by
none
Source
1"Swiped from naginata (79903):announce_swing by THX1138 (105941) Sat Mar 8 14:25:48 1997 PST"; 2"modified, bent, and spindled by Bartlebooth 3/8/97"; 3":announce_swing(attacker, target)"; 4"Announce that `attacker' has swung at `target' with this weapon."; 5{who, target} = args; 6swing = this.swing_list ? this.swing_list[x = random($)] | this.swing; 7oswing = this.oswing_list ? this.oswing_list[x] | this.oswing; 8who:tell("You ", swing, " your ", weapon = this.name, " at ", tname = target.name, "."); 9target:tell(string = tostr(who.name, " ", oswing, " ", who.pp, " ", weapon, " at "), "you."); 10$local.rpg:rpg_announce_all_but(who.location, {who, target}, string, tname, "."); 11"Originaly used .swing and .oswing for lists, but that broke code on monsters"; 12"that expect these to be strings, not lists. So much for trying to be clever.";
glued
Referenced by
none
Source
1{who} = args; 2return !(valid(who) && (who.owner in $local.rpg.gms));
may_wield
Referenced by
none
Source
1{who} = args; 2return who.owner in $local.rpg.gms;