summaryrefslogtreecommitdiff
path: root/lib/mods/theme/scpt/powers.lua
blob: 90d69ac7902f4d8b597bdae9e5c79a9c2cf74a79 (plain)
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
-- Various 'U' powers

-- Invisibility power, for the mouse mimic shape
POWER_INVISIBILITY = add_power
{
	["name"] =      "invisibility",
	["desc"] =      "You are able melt into the shadows to become invisible.",
	["desc_get"] =  "You suddenly become able to melt into the shadows.",
	["desc_lose"] = "You lose your shadow-melting ability.",
	["level"] =     30,
	["cost"] =      10,
	["stat"] =      A_DEX,
	["fail"] =      20,
	["power"] =     function()
			set_invis(20 + randint(30), 30)
	end,
}

-- Web power, for the spider mimic shape
POWER_WEB = add_power
{
	["name"] =      "web",
	["desc"] =      "You are able throw a thick and very resistant spider web.",
	["desc_get"] =  "You suddenly become able to weave webs.",
	["desc_lose"] = "You lose your web-weaving capability.",
	["level"] =     25,
	["cost"] =      30,
	["stat"] =      A_DEX,
	["fail"] =      20,
	["power"] =     function()
			-- Warning, beware of f_info changes .. I hate to do that ..
			grow_things(16, 1 + (player.lev / 10))
	end,
}

-- Activating/stopping space-continuum
-- When stopped it will induce constant mana loss
POWER_COR_SPACE_TIME = add_power
{
	["name"] =      "control space/time continuum",
	["desc"] =      "You are able to control the space/time continuum.",
	["desc_get"] =  "You become able to control the space/time continuum.",
	["desc_lose"] = "You are no more able to control the space/time continuum.",
	["level"] =     1,
	["cost"] =      10,
	["stat"] =      A_WIS,
	["fail"] =      10,
	["power"] =     function()
		if player.corrupt_anti_teleport_stopped == TRUE then
			player.corrupt_anti_teleport_stopped = FALSE
			msg_print("You stop controlling your corruption.")
			player.update = bor(player.update, PU_BONUS)
		else
			player.corrupt_anti_teleport_stopped = TRUE
			msg_print("You start controlling your corruption, teleportation works once more.")
			player.update = bor(player.update, PU_BONUS)
		end
	end,
}