summaryrefslogtreecommitdiffstats
path: root/crawl-ref/settings/autopickup_exceptions.txt
blob: f8801db010aed6d7d5b4cde94018882c41ae3407 (plain) (blame)
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
ae := autopickup_exceptions

#### inclusions ###

# curare is always dangerous on the floor
ae = <curare-tipped


### exclusions ###

# Don't autopickup in the Abyss
< do
local old_ch_autopickup = ch_autopickup or function() return true end
function ch_autopickup(it)
    return you.where() ~= "Abyss" and old_ch_autopickup(it)
end
end >

# universally bad options and scrolls
ae = potions? of (confusion|degeneration|poison|strong poison)
ae = potions? of (slowing|paralysis|decay|water)
ae = scrolls? of (paper|torment|immolation|curse weapon)
ae = scrolls? of (curse armour|random uselessness|noise|fog)

# Excluding amulets as you only need one of each. Also for some rings.
# There is some (intended) overlap with pickup.lua, which also exludes
# the ring of hunger, for example.
ae = amulet of (inaccuracy|gourmand|controlled flight|warding)
ae = amulet of (resist mutation|resist slow|clarity|rage)
ae = ring of (see invisible|levitation|poison resistance|hunger)
ae = ring of (fire|ice|sustenance|invisibility)
ae = ring of (magical power|regeneration)

: if you.race() == "Mummy" or you.race() == "Ghoul" then
ae = ring of life protection
: end

: if you.race() == "Mummy" then
ae = potion
ae = food
: end

: if you.race() ~= "Vampire" then
ae = potion.*blood
: end

: if you.race() == "Kenku" then
ae = potions? of levitation
: end

: if you.god() == "Trog" then
ae = wizardry
ae = staff
: end

### armour exclusions ###

: if you.race() == "Centaur" then
ae = boots
: else
ae = centaur barding
: end

: if you.race() == "Naga" then
ae = boots
: else
ae = naga barding
: end

: if you.race() == "Ogre" or you.race() == "Ogre-Mage"
:    or you.race() == "Troll" or you.race() == "Spriggan"
:    or you.race() == "Draconian"
: then
ae = boots
ae = gloves
ae = helmet
ae = armour .* (mail|leather)
: end

: if you.race() == "Spriggan" then
ae = shield
: end

: if you.race() == "Ghoul" then
ae = gloves
: end

: if you.race() == "Kenku" then
ae = boots
ae = helmet
: end