Skip to content

Commit 66f5d81

Browse files
committed
Merge branch 'dev'
2 parents ea1822b + f365d1f commit 66f5d81

File tree

94 files changed

+1042
-436
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

94 files changed

+1042
-436
lines changed

CHANGELOG.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,22 @@
11
# SkyHanni - Change Log
22

3+
## Version 0.14
4+
5+
### Features
6+
+ Added /shtrackcollection <item> - This tracks the number of items you collect, but it does not work with sacks.
7+
+ Added Compact Bingo Chat Messages.
8+
+ Added Compact Potion Effect Chat Messages.
9+
+ Added Brewing Stand Overlay.
10+
+ Added minion name display with minion tier.
11+
12+
### Changes
13+
+ Don't render overlays when tab list key is pressed.
14+
+ Do no longer prevent the selling of bazaar items to NPC when on ironman, stranded or bingo mode.
15+
16+
### Fixes
17+
+ Fixed wrong dungeon level colors. (in Party Finder)
18+
+ Fixed error in Sea Creature Guide inventory.
19+
320
## Version 0.13
421

522
### Features

FEATURES.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
- Option to hide the death messages of other players, except for players who are close to the player, inside the dungeon or during a Kuudra fight.
2020
- Scan messages sent by players in all-chat for blacklisted words and greys out the message.
2121
- Chat peeking (holding key to display chat without opening the chat gui)
22+
- Compact Potion Effect Messages
2223

2324
## Dungeon
2425
- Clicked Blocks (Showing the block behind walls AFTER clicked on a chest, wither essence or a lever)
@@ -85,6 +86,7 @@
8586
- A marker to the last opened minion for a couple of seconds (seen through walls)
8687
- Option to hide mob nametags close to minions.
8788
- Minion hopper coins per day display (Using the held coins in the hopper and the last time the hopper was collected to calculate the coins a hopper collects in a day)
89+
- Minion name display with minion tier.
8890

8991
## Bazaar
9092
- Showing colors in the order inventory for outbid or fully bought/sold items.
@@ -137,9 +139,13 @@
137139
+ Highlight marked player names in chat.
138140
+ Mark the own player name.
139141

142+
## Bingo
143+
+ Shortens chat messages about skill level ups, collection gains, new area discoveries, and bestiarity upgrades while on bingo.
144+
140145
## Commands
141146
- /wiki (using hypixel-skyblock.fandom.com instead of Hypixel wiki)
142147
- /shmarkplayer <player> (marking a player with yellow color)
148+
- /shtrackcollection <item> - This tracks the number of items you collect, but it does not work with sacks.
143149
-
144150
## Misc
145151
- Allow to copy, paste, and mark selected text in signs (not visual, but it's working still)
@@ -154,4 +160,5 @@
154160
- Hide armor or just helmet of other player or yourself
155161
- Display the active non-god potion effects.
156162
- Option to hide blaze particles.
157-
- Wishing compass uses amount display.
163+
- Wishing compass uses amount display.
164+
- Brewing Stand Overlay.

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ plugins {
1010
}
1111

1212
group = "at.hannibal2.skyhanni"
13-
version = "0.13"
13+
version = "0.14"
1414

1515
// Toolchains:
1616
java {

src/main/java/at/hannibal2/skyhanni/SkyHanniMod.java

Lines changed: 91 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import at.hannibal2.skyhanni.config.commands.Commands;
66
import at.hannibal2.skyhanni.data.*;
77
import at.hannibal2.skyhanni.data.repo.RepoManager;
8-
import at.hannibal2.skyhanni.features.*;
98
import at.hannibal2.skyhanni.features.anvil.AnvilCombineHelper;
109
import at.hannibal2.skyhanni.features.bazaar.BazaarApi;
1110
import at.hannibal2.skyhanni.features.bazaar.BazaarBestSellMethod;
@@ -30,6 +29,7 @@
3029
import at.hannibal2.skyhanni.features.itemabilities.FireVeilWandParticles;
3130
import at.hannibal2.skyhanni.features.itemabilities.abilitycooldown.ItemAbilityCooldown;
3231
import at.hannibal2.skyhanni.features.minion.MinionFeatures;
32+
import at.hannibal2.skyhanni.features.misc.*;
3333
import at.hannibal2.skyhanni.features.nether.MilleniaAgedBlazeColor;
3434
import at.hannibal2.skyhanni.features.nether.ashfang.*;
3535
import at.hannibal2.skyhanni.features.slayer.EndermanSlayerBeacon;
@@ -62,15 +62,15 @@
6262
public class SkyHanniMod {
6363

6464
public static final String MODID = "skyhanni";
65-
public static final String VERSION = "0.13";
65+
public static final String VERSION = "0.14";
6666

6767
public static Features feature;
6868

6969
public static RepoManager repo;
7070
public static ConfigManager configManager;
7171
private static Logger logger;
7272

73-
public static List<Object> listenerClasses = new ArrayList<>();
73+
public static List<Object> modules = new ArrayList<>();
7474
public static Job globalJob = JobKt.Job(null);
7575
public static CoroutineScope coroutineScope =
7676
CoroutineScopeKt.CoroutineScope(
@@ -84,94 +84,98 @@ public void preInit(FMLPreInitializationEvent event) {
8484

8585
//API and utils
8686
new BazaarApi();
87-
registerEvent(this);
88-
registerEvent(new ChatManager());
89-
registerEvent(new HypixelData());
90-
registerEvent(new DungeonData());
91-
registerEvent(new ScoreboardData());
92-
registerEvent(new ApiKeyGrabber());
93-
registerEvent(new SeaCreatureManager());
94-
registerEvent(new ItemRenderBackground());
95-
registerEvent(new EntityData());
96-
registerEvent(new EntityMovementData());
97-
registerEvent(new ItemClickData());
98-
registerEvent(new MinecraftData());
99-
registerEvent(new SendTitleHelper());
100-
registerEvent(new ItemTipHelper());
87+
loadModule(this);
88+
loadModule(new ChatManager());
89+
loadModule(new HyPixelData());
90+
loadModule(new DungeonData());
91+
loadModule(new ScoreboardData());
92+
loadModule(new ApiDataLoader());
93+
loadModule(new SeaCreatureManager());
94+
loadModule(new ItemRenderBackground());
95+
loadModule(new EntityData());
96+
loadModule(new EntityMovementData());
97+
loadModule(new ItemClickData());
98+
loadModule(new MinecraftData());
99+
loadModule(new SendTitleHelper());
100+
loadModule(new ItemTipHelper());
101101

102102
//features
103-
registerEvent(new BazaarOrderHelper());
104-
registerEvent(new ChatFilter());
105-
registerEvent(new PlayerChatModifier());
106-
registerEvent(new DungeonChatFilter());
107-
registerEvent(new HideNotClickableItems());
108-
registerEvent(new ItemDisplayOverlayFeatures());
109-
registerEvent(new CurrentPetDisplay());
110-
registerEvent(new ExpBottleOnGroundHider());
111-
registerEvent(new DamageIndicatorManager());
112-
registerEvent(new ItemAbilityCooldown());
113-
registerEvent(new DungeonHighlightClickedBlocks());
114-
registerEvent(new DungeonMilestonesDisplay());
115-
registerEvent(new DungeonDeathCounter());
116-
registerEvent(new DungeonCleanEnd());
117-
registerEvent(new DungeonBossMessages());
118-
registerEvent(new DungeonBossHideDamageSplash());
119-
registerEvent(new TrophyFishMessages());
120-
registerEvent(new BazaarBestSellMethod());
121-
registerEvent(new AnvilCombineHelper());
122-
registerEvent(new SeaCreatureMessageShortener());
103+
loadModule(new BazaarOrderHelper());
104+
loadModule(new ChatFilter());
105+
loadModule(new PlayerChatModifier());
106+
loadModule(new DungeonChatFilter());
107+
loadModule(new HideNotClickableItems());
108+
loadModule(new ItemDisplayOverlayFeatures());
109+
loadModule(new CurrentPetDisplay());
110+
loadModule(new ExpBottleOnGroundHider());
111+
loadModule(new DamageIndicatorManager());
112+
loadModule(new ItemAbilityCooldown());
113+
loadModule(new DungeonHighlightClickedBlocks());
114+
loadModule(new DungeonMilestonesDisplay());
115+
loadModule(new DungeonDeathCounter());
116+
loadModule(new DungeonCleanEnd());
117+
loadModule(new DungeonBossMessages());
118+
loadModule(new DungeonBossHideDamageSplash());
119+
loadModule(new TrophyFishMessages());
120+
loadModule(new BazaarBestSellMethod());
121+
loadModule(new AnvilCombineHelper());
122+
loadModule(new SeaCreatureMessageShortener());
123123
// registerEvent(new GriffinBurrowFinder());
124-
registerEvent(new AshfangFreezeCooldown());
125-
registerEvent(new AshfangNextResetCooldown());
126-
registerEvent(new SummoningSoulsName());
127-
registerEvent(new AshfangGravityOrbs());
128-
registerEvent(new AshfangBlazingSouls());
129-
registerEvent(new AshfangBlazes());
130-
registerEvent(new AshfangHideParticles());
131-
registerEvent(new AshfangHideDamageIndicator());
132-
registerEvent(new ItemStars());
133-
registerEvent(new MinionFeatures());
134-
registerEvent(new RealTime());
135-
registerEvent(new RngMeterInventory());
136-
registerEvent(new WikiCommand());
137-
registerEvent(new SummoningMobManager());
138-
registerEvent(new VoidlingExtremistColor());
139-
registerEvent(new MilleniaAgedBlazeColor());
140-
registerEvent(new CorruptedMobHighlight());
141-
registerEvent(new MarkedPlayerManager());
142-
registerEvent(new HighlightSlayerMiniboss());
143-
registerEvent(new PlayerDeathMessages());
144-
registerEvent(new HighlightDungeonDeathmite());
145-
registerEvent(new DungeonHideItems());
146-
registerEvent(new DungeonCopilot());
147-
registerEvent(new EndermanSlayerBeacon());
148-
registerEvent(new FireVeilWandParticles());
149-
registerEvent(new HideMobNames());
150-
registerEvent(new HideDamageSplash());
151-
registerEvent(new ThunderSparksHighlight());
152-
registerEvent(new BlazeSlayerPillar());
153-
registerEvent(new BlazeSlayerDaggerHelper());
154-
registerEvent(new HellionShieldHelper());
155-
registerEvent(new BlazeSlayerFirePitsWarning());
156-
registerEvent(new BlazeSlayerClearView());
157-
registerEvent(new PlayerChatFilter());
158-
registerEvent(new HideArmor());
159-
registerEvent(new SlayerQuestWarning());
160-
registerEvent(new StatsTuning());
161-
registerEvent(new NonGodPotEffectDisplay());
162-
registerEvent(new SoopyGuessBurrow());
163-
registerEvent(new GriffinBurrowHelper());
164-
registerEvent(new GriffinBurrowParticleFinder());
165-
registerEvent(new BurrowWarpHelper());
166-
registerEvent(new HighlightBonzoMasks());
167-
registerEvent(new DungeonLevelColor());
168-
registerEvent(new BazaarCancelledBuyOrderClipboard());
169-
registerEvent(new CroesusUnopenedChestTracker());
124+
loadModule(new AshfangFreezeCooldown());
125+
loadModule(new AshfangNextResetCooldown());
126+
loadModule(new SummoningSoulsName());
127+
loadModule(new AshfangGravityOrbs());
128+
loadModule(new AshfangBlazingSouls());
129+
loadModule(new AshfangBlazes());
130+
loadModule(new AshfangHideParticles());
131+
loadModule(new AshfangHideDamageIndicator());
132+
loadModule(new ItemStars());
133+
loadModule(new MinionFeatures());
134+
loadModule(new RealTime());
135+
loadModule(new RngMeterInventory());
136+
loadModule(new WikiCommand());
137+
loadModule(new SummoningMobManager());
138+
loadModule(new VoidlingExtremistColor());
139+
loadModule(new MilleniaAgedBlazeColor());
140+
loadModule(new CorruptedMobHighlight());
141+
loadModule(new MarkedPlayerManager());
142+
loadModule(new HighlightSlayerMiniboss());
143+
loadModule(new PlayerDeathMessages());
144+
loadModule(new HighlightDungeonDeathmite());
145+
loadModule(new DungeonHideItems());
146+
loadModule(new DungeonCopilot());
147+
loadModule(new EndermanSlayerBeacon());
148+
loadModule(new FireVeilWandParticles());
149+
loadModule(new HideMobNames());
150+
loadModule(new HideDamageSplash());
151+
loadModule(new ThunderSparksHighlight());
152+
loadModule(new BlazeSlayerPillar());
153+
loadModule(new BlazeSlayerDaggerHelper());
154+
loadModule(new HellionShieldHelper());
155+
loadModule(new BlazeSlayerFirePitsWarning());
156+
loadModule(new BlazeSlayerClearView());
157+
loadModule(new PlayerChatFilter());
158+
loadModule(new HideArmor());
159+
loadModule(new SlayerQuestWarning());
160+
loadModule(new StatsTuning());
161+
loadModule(new NonGodPotEffectDisplay());
162+
loadModule(new SoopyGuessBurrow());
163+
loadModule(new GriffinBurrowHelper());
164+
loadModule(new GriffinBurrowParticleFinder());
165+
loadModule(new BurrowWarpHelper());
166+
loadModule(new CollectionCounter());
167+
loadModule(new HighlightBonzoMasks());
168+
loadModule(new DungeonLevelColor());
169+
loadModule(new BazaarCancelledBuyOrderClipboard());
170+
loadModule(new CompactSplashPotionMessage());
171+
loadModule(new CroesusUnopenedChestTracker());
172+
loadModule(new CompactBingoChat());
173+
loadModule(new BrewingStandOverlay());
170174

171175
Commands.INSTANCE.init();
172176

173-
registerEvent(new LorenzTest());
174-
registerEvent(new ButtonOnPause());
177+
loadModule(new LorenzTest());
178+
loadModule(new ButtonOnPause());
175179

176180
configManager = new ConfigManager();
177181
configManager.firstLoad();
@@ -183,14 +187,9 @@ public void preInit(FMLPreInitializationEvent event) {
183187
repo.loadRepoInformation();
184188
}
185189

186-
private void registerEvent(Object object) {
187-
listenerClasses.add(object);
188-
String simpleName = object.getClass().getSimpleName();
189-
consoleLog("SkyHanni registering '" + simpleName + "'");
190-
long start = System.currentTimeMillis();
190+
private void loadModule(Object object) {
191+
modules.add(object);
191192
MinecraftForge.EVENT_BUS.register(object);
192-
long duration = System.currentTimeMillis() - start;
193-
consoleLog("Done after " + duration + " ms!");
194193
}
195194

196195
public static GuiScreen screenToOpen = null;

src/main/java/at/hannibal2/skyhanni/config/Features.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
import at.hannibal2.skyhanni.config.core.config.annotations.Category;
99
import at.hannibal2.skyhanni.config.core.config.gui.GuiPositionEditor;
1010
import at.hannibal2.skyhanni.config.features.*;
11-
import at.hannibal2.skyhanni.features.HideArmor;
12-
import at.hannibal2.skyhanni.features.MarkedPlayerManager;
11+
import at.hannibal2.skyhanni.features.misc.HideArmor;
12+
import at.hannibal2.skyhanni.features.misc.MarkedPlayerManager;
1313
import com.google.gson.annotations.Expose;
1414
import net.minecraft.client.Minecraft;
1515

@@ -37,6 +37,11 @@ public void executeRunnable(String runnableId) {
3737
return;
3838
}
3939

40+
if (runnableId.equals("collectionCounter")) {
41+
editOverlay(activeConfigCategory, 200, 16, misc.collectionCounterPos);
42+
return;
43+
}
44+
4045
if (runnableId.equals("debugPos")) {
4146
editOverlay(activeConfigCategory, 200, 16, dev.debugPos);
4247
return;
@@ -159,6 +164,10 @@ public void executeRunnable(String runnableId) {
159164
@Category(name = "Marked Players", desc = "Players that got marked with /shmarkplayer")
160165
public MarkedPlayers markedPlayers = new MarkedPlayers();
161166

167+
@Expose
168+
@Category(name = "Bingo", desc = "Features for the Bingo mode.")
169+
public Bingo bingo = new Bingo();
170+
162171
@Expose
163172
@Category(name = "Misc", desc = "Settings without a category.")
164173
public Misc misc = new Misc();

src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,9 @@ import at.hannibal2.skyhanni.SkyHanniMod
44
import at.hannibal2.skyhanni.config.ConfigEditor
55
import at.hannibal2.skyhanni.config.commands.SimpleCommand.ProcessCommandRunnable
66
import at.hannibal2.skyhanni.config.core.GuiScreenElementWrapper
7-
import at.hannibal2.skyhanni.features.MarkedPlayerManager
87
import at.hannibal2.skyhanni.features.event.diana.BurrowWarpHelper
8+
import at.hannibal2.skyhanni.features.misc.CollectionCounter
9+
import at.hannibal2.skyhanni.features.misc.MarkedPlayerManager
910
import at.hannibal2.skyhanni.test.LorenzTest
1011
import at.hannibal2.skyhanni.test.command.CopyItemCommand
1112
import at.hannibal2.skyhanni.test.command.CopyNearbyEntitiesCommand
@@ -37,6 +38,7 @@ object Commands {
3738
registerCommand("togglepacketlog") { LorenzTest.togglePacketLog() }
3839
registerCommand("shreloadlisteners") { LorenzTest.reloadListeners() }
3940
registerCommand("shresetburrowwarps") { BurrowWarpHelper.resetDisabledWarps() }
41+
registerCommand("shtrackcollection") { CollectionCounter.command(it) }
4042
}
4143

4244
private fun registerCommand(name: String, function: (Array<String>) -> Unit) {

src/main/java/at/hannibal2/skyhanni/config/core/GuiElementTextField.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -566,9 +566,9 @@ private void drawTextbox(
566566
);
567567
GlScissorStack.pop(scaledresolution);
568568
} else {
569-
// String toRender = Minecraft.getMinecraft().fontRendererObj.trimStringToWidth(ChromaUtils.INSTANCE.chromaStringByColourCode(
570-
String toRender = Minecraft.getMinecraft().fontRendererObj.trimStringToWidth(texts[yOffI], searchBarXSize - 10);
571-
Minecraft.getMinecraft().fontRendererObj.drawString(toRender, x + 5,
569+
// String display = Minecraft.getMinecraft().fontRendererObj.trimStringToWidth(ChromaUtils.INSTANCE.chromaStringByColourCode(
570+
String display = Minecraft.getMinecraft().fontRendererObj.trimStringToWidth(texts[yOffI], searchBarXSize - 10);
571+
Minecraft.getMinecraft().fontRendererObj.drawString(display, x + 5,
572572
y + (searchBarYSize - 8) / 2 + yOff, customTextColour
573573
);
574574
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package at.hannibal2.skyhanni.config.features;
2+
3+
import at.hannibal2.skyhanni.config.core.config.annotations.ConfigEditorBoolean;
4+
import at.hannibal2.skyhanni.config.core.config.annotations.ConfigOption;
5+
import com.google.gson.annotations.Expose;
6+
7+
public class Bingo {
8+
9+
@Expose
10+
@ConfigOption(name = "Compact Chat Messages", desc = "Shortens chat messages about skill level ups, collection gains, " +
11+
"new area discoveries, and bestiarity upgrades while on bingo.")
12+
@ConfigEditorBoolean
13+
public boolean compactChatMessages = true;
14+
}

0 commit comments

Comments
 (0)