-
-
Notifications
You must be signed in to change notification settings - Fork 444
/
Copy pathsummons.dm
75 lines (61 loc) · 2.92 KB
/
summons.dm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
// Ritual spells which affect the station at large
/// How much threat we need to let these rituals happen on dynamic
#define MINIMUM_THREAT_FOR_RITUALS 100
/datum/spellbook_entry/summon/ghosts
name = "Summon Ghosts"
desc = "Spook the crew out by making them see dead people. \
Be warned, ghosts are capricious and occasionally vindicative, \
and some will use their incredibly minor abilities to frustrate you."
cost = 0
/datum/spellbook_entry/summon/ghosts/buy_spell(mob/living/carbon/human/user, obj/item/spellbook/book)
summon_ghosts(user)
playsound(get_turf(user), 'sound/effects/ghost2.ogg', 50, TRUE)
return ..()
/datum/spellbook_entry/summon/guns
name = "Summon Guns"
desc = "Nothing could possibly go wrong with arming a crew of lunatics just itching for an excuse to kill you. \
There is a good chance that they will shoot each other first."
/datum/spellbook_entry/summon/guns/can_be_purchased()
// must be config enabled
return !CONFIG_GET(flag/no_summon_guns)
/datum/spellbook_entry/summon/guns/buy_spell(mob/living/carbon/human/user,obj/item/spellbook/book)
summon_guns(user, 10)
playsound(get_turf(user), 'sound/magic/castsummon.ogg', 50, TRUE)
return ..()
/datum/spellbook_entry/summon/magic
name = "Summon Magic"
desc = "Share the wonders of magic with the crew and show them \
why they aren't to be trusted with it at the same time."
/datum/spellbook_entry/summon/magic/can_be_purchased()
// must be config enabled
return !CONFIG_GET(flag/no_summon_magic)
/datum/spellbook_entry/summon/magic/buy_spell(mob/living/carbon/human/user,obj/item/spellbook/book)
summon_magic(user, 10)
playsound(get_turf(user), 'sound/magic/castsummon.ogg', 50, TRUE)
return ..()
/datum/spellbook_entry/summon/events
name = "Summon Events"
desc = "Give Murphy's law a little push and replace all events with \
special wizard ones that will confound and confuse everyone. \
Multiple castings increase the rate of these events."
cost = 2
limit = 5 // Each purchase can intensify it.
/datum/spellbook_entry/summon/events/can_be_purchased()
// must be config enabled
return !CONFIG_GET(flag/no_summon_events)
/datum/spellbook_entry/summon/events/buy_spell(mob/living/carbon/human/user, obj/item/spellbook/book)
summon_events(user)
playsound(get_turf(user), 'sound/magic/castsummon.ogg', 50, TRUE)
return ..()
/datum/spellbook_entry/summon/curse_of_madness
name = "Curse of Madness"
desc = "Curses the station, warping the minds of everyone inside, causing lasting traumas. Warning: this spell can affect you if not cast from a safe distance."
cost = 4
/datum/spellbook_entry/summon/curse_of_madness/buy_spell(mob/living/carbon/human/user, obj/item/spellbook/book)
var/message = tgui_input_text(user, "Whisper a secret truth to drive your victims to madness", "Whispers of Madness")
if(!message)
return FALSE
curse_of_madness(user, message)
playsound(user, 'sound/magic/mandswap.ogg', 50, TRUE)
return ..()
#undef MINIMUM_THREAT_FOR_RITUALS