Book of Death #154
Aliases: Book of Death, enchantbook
3 verbs · 20 properties · 0 children
Verbs
| Verb | Spec | Flags | Definer | Lines |
|---|---|---|---|---|
title | this none this | rxd | #154 | 1 |
ca*st | this on top of/on/onto/upon any | rxd | #154 | 74 |
ca*st | this on top of/on/onto/upon any | rxd | #154 | 0 |
Properties
| Property | Definer | Flags | Owner | Value |
|---|---|---|---|---|
spellcounter | #154 | rc | #2 | 10 |
drop_failed_msg | #5 | rc | #2 | <clear> |
drop_succeeded_msg | #5 | rc | #2 | <clear> |
odrop_failed_msg | #5 | rc | #2 | <clear> |
odrop_succeeded_msg | #5 | rc | #2 | <clear> |
otake_succeeded_msg | #5 | rc | #2 | <clear> |
otake_failed_msg | #5 | rc | #2 | <clear> |
take_succeeded_msg | #5 | rc | #2 | <clear> |
take_failed_msg | #5 | rc | #2 | <clear> |
value_base | #102 | r | #2 | 500.0 |
damage_base | #102 | r | #2 | <clear> |
x_loc | #102 | r | #36 | <clear> |
y_loc | #102 | r | #36 | <clear> |
ansi_title | #102 | r | #36 | <clear> |
obvious | #102 | r | #36 | <clear> |
build_help | #102 | rc | #2 | <clear> |
key | #1 | c | #2 | 0 |
aliases | #1 | rc | #2 | {"Book of Death", "enchantbook"} |
description | #1 | rc | #2 | "[green]You see a book bound in leather with magical text.[normal] [Spell: Death]" |
object_size | #1 | r | #36 | {0, 0} |
Ancestry
Ancestors (nearest first): #5 generic thing → #102 subthing → #1 Root Class
Children: none
Call graph
Source
title
Referenced by
- #154:ca*st line 2:
this:title - #154:ca*st line 67:
this:title
Source
1return tostr("[yellow]", this.name, "[normal]");
ca*st
Referenced by
none
Source
1if ((this in player.contents) && (player.stats_current[2][3] >= 16.0)) 2player:tell("You prepare to cast ", this:title(), "[normal]..."); 3elseif (player.stats_current[2][3] < 16.0) 4player:tell("You do not have a high enough INT ability! This spell requires at least 16.0."); 5return; 6else 7player:tell("You are not carrying that."); 8return; 9endif 10target = $string_utils:match_object(iobjstr, player.location); 11if (!valid(target)) 12player:tell("The target is invalid."); 13return; 14endif 15if ((((iobjstr == "me") || (iobjstr == "self")) || (iobjstr == "myself")) || (target == player)) 16player:tell("You cannot cast this spell on yourself!"); 17return; 18endif 19if (target in players()) 20player:tell(target:title(), " is a player and cannot be the target of this spell!"); 21return; 22endif 23if ($object_utils:has_property(target, "magic_immunity")) 24if (target.magic_immunity) 25player:tell(target:title(), " is immune to magic!"); 26return; 27endif 28endif 29if (((target in player.location.contents) && $object_utils:has_property(target, "alive")) && $object_utils:has_property(target, "alert")) 30player:tell("You cast [yellow]Death[normal] on ", target:title(), "!"); 31player.location:announce(player:title(), " casts [yellow]Death[normal] on ", target:title(), "!"); 32player:tell("Intense energy builds around you..."); 33suspend(3); 34if (target.alive) 35player.location:announce_all("A mass of dark energy jolts at ", target:title(), "!"); 36target:die(); 37player:tell("You have defeated ", target:title(), "!"); 38player.experience = player.experience + toobj(target).exp; 39player:tell("You gain [cyan]", tostr(target.exp), "[normal] experience points!"); 40endif 41newlevel = player.level + 1; 42if ((player.experience >= ($server_options.level_info[newlevel][2] + 1)) && (newlevel < $server_options.max_player_level)) 43player.level = player.level + 1; 44player:tell(""); 45player:tell("[bold][purple]YOU HAVE REACHED [cyan]LEVEL ", tostr(newlevel), "[purple]![normal]"); 46player.adv_points = player.adv_points + $server_options.level_info[player.level][3]; 47player:tell("[purple]You have received ", $server_options.level_info[player.level][3], " Advancement Points!"); 48player.stats_current == player.stats; 49player:tell(""); 50endif 51player:tell("You collect [bold][yellow]", target.money[1][2], "[normal] Gold!"); 52player.money = {{"gold", player.money[1][2] + target.money[1][2]}}; 53dropstr = ""; 54if (target.contents == {}) 55drop = "nothing"; 56else 57drop = $string_utils:title_list(target.contents); 58for i in (target.contents) 59move(i, target.location); 60endfor 61endif 62player:tell(target:title(), " drops ", drop, "."); 63player.killcount = player.killcount + 1; 64if (!this.f) 65this.spellcounter = this.spellcounter - 1; 66if (!this.spellcounter) 67player:tell("The ", this:title(), " crumbles into dust!"); 68$recycler:_recycle(this); 69endif 70endif 71else 72player:tell("No effect."); 73player:tell("The target must be a living being."); 74endif
ca*st
Referenced by
none
Source
No program (verb defined but unprogrammed).