summaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/config/features/dungeon/DungeonConfig.java
blob: ec2bc0c4b0f913fca25ebf3edb19db30afcaab79 (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
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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
package at.hannibal2.skyhanni.config.features.dungeon;

import at.hannibal2.skyhanni.config.FeatureToggle;
import at.hannibal2.skyhanni.config.core.config.Position;
import com.google.gson.annotations.Expose;
import io.github.notenoughupdates.moulconfig.annotations.Accordion;
import io.github.notenoughupdates.moulconfig.annotations.ConfigEditorBoolean;
import io.github.notenoughupdates.moulconfig.annotations.ConfigLink;
import io.github.notenoughupdates.moulconfig.annotations.ConfigOption;

public class DungeonConfig {

    @Expose
    @ConfigOption(name = "Clicked Blocks", desc = "Highlight levers, chests, and Wither Essence when clicked in Dungeons.")
    @Accordion
    public HighlightClickedBlocksConfig clickedBlocks = new HighlightClickedBlocksConfig();

    @Expose
    @ConfigOption(name = "Secret Chime", desc = "Play a sound effect when levers, chests, and wither essence are clicked in dungeons.")
    @Accordion
    public SecretChimeConfig secretChime = new SecretChimeConfig();

    @Expose
    @ConfigOption(name = "Milestones Display", desc = "Show the current milestone in Dungeons.")
    @ConfigEditorBoolean
    @FeatureToggle
    public boolean showMilestonesDisplay = false;

    @Expose
    @ConfigLink(owner = DungeonConfig.class, field = "showMilestonesDisplay")
    public Position showMileStonesDisplayPos = new Position(10, 10, false, true);

    @Expose
    @ConfigOption(name = "Death Counter Display", desc = "Display the total amount of deaths in the current Dungeon.")
    @ConfigEditorBoolean
    @FeatureToggle
    public boolean deathCounterDisplay = false;

    @Expose
    @ConfigLink(owner = DungeonConfig.class, field = "deathCounterDisplay")
    public Position deathCounterPos = new Position(10, 10, false, true);

    @Expose
    @ConfigOption(name = "Clean End", desc = "")
    @Accordion
    public CleanEndConfig cleanEnd = new CleanEndConfig();

    @Expose
    @ConfigOption(name = "Boss Damage Splash", desc = "Hide damage splashes while inside the boss room (fixes a Skytils feature).")
    @ConfigEditorBoolean
    @FeatureToggle
    public boolean damageSplashBoss = false;

    @Expose
    @ConfigOption(name = "Highlight Deathmites", desc = "Highlight Deathmites in Dungeons in red color.")
    @ConfigEditorBoolean
    @FeatureToggle
    public boolean highlightDeathmites = true;

    @Expose
    @ConfigOption(name = "Highlight Teammates", desc = "Highlight Dungeon teammates with a glowing outline.")
    @ConfigEditorBoolean
    @FeatureToggle
    public boolean highlightTeammates = true;

    @Expose
    @ConfigOption(name = "Architect Notifier",
        desc = "Notifies you to use the Architect in Dungeons when a puzzle is failed.\n" +
            "§cOnly works when having enough §5Architect First Drafts §cin the sack.")
    @ConfigEditorBoolean
    @FeatureToggle
    public boolean architectNotifier = true;

    @Expose
    @ConfigOption(name = "Object Highlighter", desc = "Highlights various things in Dungeons.")
    @Accordion
    public ObjectHighlighterConfig objectHighlighter = new ObjectHighlighterConfig();

    @Expose
    @ConfigOption(name = "Object Hider", desc = "Hide various things in Dungeons.")
    @Accordion
    public ObjectHiderConfig objectHider = new ObjectHiderConfig();

    @Expose
    @ConfigOption(name = "Message Filter", desc = "")
    @Accordion
    public MessageFilterConfig messageFilter = new MessageFilterConfig();

    @Expose
    @ConfigOption(name = "Dungeon Copilot", desc = "")
    @Accordion
    public DungeonCopilotConfig dungeonCopilot = new DungeonCopilotConfig();

    @Expose
    @ConfigOption(name = "Party Finder", desc = "")
    @Accordion
    public PartyFinderConfig partyFinder = new PartyFinderConfig();

    @Expose
    @ConfigOption(name = "Tab List", desc = "")
    @Accordion
    public TabListConfig tabList = new TabListConfig();

    @Expose
    @ConfigOption(name = "Livid Finder", desc = "")
    @Accordion
    public LividFinderConfig lividFinder = new LividFinderConfig();


    @Expose
    @ConfigOption(name = "Terracotta Phase", desc = "")
    @Accordion
    public TerracottaPhaseConfig terracottaPhase = new TerracottaPhaseConfig();

    @Expose
    @ConfigOption(name = "Moving Skeleton Skulls", desc = "Highlight Skeleton Skulls when combining into an " +
        "orange Skeletor (not useful when combined with feature Hide Skeleton Skull).")
    @ConfigEditorBoolean
    @FeatureToggle
    public boolean highlightSkeletonSkull = true;

    @Expose
    @ConfigOption(name = "Chests Config", desc = "")
    @Accordion
    public DungeonChestConfig chest = new DungeonChestConfig();

    @Expose
    @ConfigOption(name = "Croesus Chest", desc = "Add a visual highlight to the Croesus inventory that " +
        "shows unopened chests.") // TODO move( , "dungeon.croesusUnopenedChestTracker" ,"dungeon.chest.showUnopened" )
    @ConfigEditorBoolean
    @FeatureToggle
    public boolean croesusUnopenedChestTracker = true;

    @Expose
    @ConfigOption(name = "SA Jump Notification", desc = "Notifies you when a Shadow Assassin is about " +
        "to jump on you.")
    @ConfigEditorBoolean
    @FeatureToggle
    public boolean shadowAssassinJumpNotifier = false;

    @Expose
    @ConfigOption(name = "Dungeon Races Guide", desc = "")
    @Accordion
    public DungeonsRaceGuideConfig dungeonsRaceGuide = new DungeonsRaceGuideConfig();
}