Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file removed .github/docs/images/Minecraft Installations.png
Binary file not shown.
36 changes: 8 additions & 28 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,33 +1,15 @@
name: Build
name: build

on: [ push, pull_request ]

on:
push:
branches:
- unofficial-update
- main
paths:
- '**.java'
pull_request:
branches:
- main
paths:
- '**.java'
workflow_dispatch:
inputs:
upload_artifact:
description: 'Upload artifact to this run? [yes | no]'
required: false
default: 'no'
jobs:
build:
name: Build
if: ${{ !contains(github.head_ref, 'translations/') }}
runs-on: ubuntu-latest
env:
ORG_GRADLE_PROJECT_buildNumber: ${{ github.run_number }}
ORG_GRADLE_PROJECT_runAttempt: ${{ github.run_attempt }}
ORG_GRADLE_PROJECT_runningOnCi: ${{ true }}
UPLOAD_ARTIFACT_ENABLED: ${{ true }}
timeout-minutes: 15

steps:
Expand All @@ -42,17 +24,15 @@ jobs:
- name: Build with Gradle
run: ./gradlew build --no-daemon
- name: Read Project Version
id: read_project_version
if: ${{ env.UPLOAD_ARTIFACT_ENABLED || contains(github.event.inputs.upload_artifact, 'yes') }}
uses: christian-draeger/read-properties@1.0.1
id: read_properties
uses: christian-draeger/read-properties@1.1.1
with:
path: gradle.properties
property: version
properties: version
- name: Upload Artifact
if: ${{ env.UPLOAD_ARTIFACT_ENABLED || contains(github.event.inputs.upload_artifact, 'yes') }}
env:
project_version: ${{ steps.read_project_version.outputs.value }}
project_version: ${{ steps.read_properties.outputs.value }}
uses: actions/upload-artifact@v3
with:
name: SkyblockAddons v${{ env.project_version }}
name: build_artifacts
path: build/libs/*
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,4 @@ run
Thumbs.db
bytecode
.vscode
logs
7 changes: 4 additions & 3 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2023 Biscuit Development
Copyright (c) 2023 Fix3dll

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand All @@ -20,7 +20,8 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


This project is fork of SkyblockAddons mod, which was written by Biscuit team and they announced to be end of life, which is
available under the MIT license. The full license available at https://github.com/BiscuitDevelopment/SkyblockAddons/blob/main/LICENSE

This product bundles the files /gradle/wrapper/gradle-wrapper.jar, /gradle/wrapper/gradle-wrapper.properties,
/gradlew, and /gradlew.bat, which are available under the Apache 2.0 license. The full license is available at
Expand All @@ -40,4 +41,4 @@ in MinecraftForge 11.15.1.2318-1.8.9, which is available under the Minecraft For
available at dependencyLicenses/minecraftForge/MINECRAFT_FORGE_LICENSE.txt.

This product bundles SLF4J API Module 1.7.25, which is available under the MIT license. The full license is available at
dependencyLicenses/slf4j-api/MIT.txt.
dependencyLicenses/slf4j-api/MIT.txt.
48 changes: 3 additions & 45 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,35 +2,12 @@
<h1 align="center">SkyblockAddons</h1>

<p align="center">
<a href="https://github.com/BiscuitDevelopment/SkyblockAddons/releases" target="_blank">
<img alt="release" src="https://img.shields.io/github/v/release/BiscuitDevelopment/SkyblockAddons?color=56bcd3" />
</a>
<a href="https://github.com/BiscuitDevelopment/SkyblockAddons/releases" target="_blank">
<img alt="downloads" src="https://img.shields.io/github/downloads/BiscuitDevelopment/SkyblockAddons/total?color=56bcd3" />
</a>
<a href="https://github.com/BiscuitDevelopment/SkyblockAddons/blob/master/LICENSE" target="_blank">
<a href="https://github.com/Fix3dll/SkyblockAddons/blob/unofficial-update/LICENSE" target="_blank">
<img alt="license" src="https://img.shields.io/badge/License-MIT-56bcd3" />
</a>
<a href="https://discord.gg/PqTAEek" target="_blank">
<img alt="discord" src="https://img.shields.io/discord/450878205294018560?color=56bcd3&label=discord" />
</a>
<a href="https://twitter.com/bisccut" target="_blank">
<img alt="twitter" src="https://img.shields.io/twitter/follow/bisccut?style=social" />
</a>
<a href="https://translate.biscuit.codes" target="_blank">
<img alt="localization" src="https://badges.crowdin.net/skyblockaddons/localized.svg" />
</a>
</p>

A Minecraft Forge mod with many features to make your Hypixel Skyblock experience better.

```
Sorry, development is slow and will be for the foreseeable future since I quit SB and I'm also busy with
other things. Thank you for your understanding.

- TirelessTraveler
```

Skyblock Addons has reached end of life. This fork contains unofficial updates from me. You can reach latest unofficial build [here](https://nightly.link/Fix3dll/SkyblockAddons/workflows/build/unofficial-update/SkyblockAddons%20v1.7.2.zip).

Special Credits
-----
Expand All @@ -40,27 +17,8 @@ TirelessTraveler (aka ILikePlayingGames) for helping maintain the project.

DidiSkywalker & CraftedFury (Nahydrin) for adding/PRing many incredible features!

Thanks to YourKit
Thanks to Our Translators
------
![YourKit](https://www.yourkit.com/images/yklogo.png)

Big thank you to YourKit for supporting this project with their profiler to help us improve performance!


YourKit supports open source projects with innovative and intelligent tools
for monitoring and profiling Java and .NET applications.
YourKit is the creator of [YourKit Java Profiler](https://www.yourkit.com/java/profiler/),
[YourKit .NET Profiler](https://www.yourkit.com/.net/profiler/),
and [YourKit YouMonitor](https://www.yourkit.com/youmonitor/).

Thanks to Crowdin & Our Translators
------
![Crowdin](https://crowdin.com/images/crowdin-logo.svg)

Big thanks to Crowdin for supporting this project with their
localization management platform to help us serve the mod in many languages!
[Check out their website here](https://crowdin.com/)!

Also thanks for our countless translators who help us translate this mod!

Thanks to Open Source Software
Expand Down
10 changes: 5 additions & 5 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import java.text.ParseException

plugins {
id 'java'
id 'gg.essential.loom' version '0.10.0.5'
id 'gg.essential.loom' version '0.10.0.+'
id 'dev.architectury.architectury-pack200' version '0.1.3'
id 'io.freefair.lombok' version "6.6.1"
id 'io.freefair.lombok' version "8.0.1"
id 'com.github.johnrengelman.shadow' version '7.1.2'
id 'net.kyori.blossom' version '1.3.1'
}
Expand Down Expand Up @@ -97,10 +97,10 @@ dependencies {
minecraft("com.mojang:minecraft:${project.minecraftVersion}")
mappings("de.oceanlabs.mcp:mcp_stable:${project.mappings}")
forge("net.minecraftforge:forge:${project.forgeVersion}")
runtimeOnly('me.djtheredstoner:DevAuth-forge-legacy:1.1.0')
runtimeOnly('me.djtheredstoner:DevAuth-forge-legacy:1.1.2')

// Discord RPC for Java https://github.com/jagrosh/DiscordIPC
bundle('com.github.ILikePlayingGames:DiscordIPC:-SNAPSHOT') {
bundle('com.github.ILikePlayingGames:DiscordIPC:f91ed4b') {
exclude module: 'log4j'
because 'Different version conflicts with Minecraft\'s Log4J'
exclude module: 'gson'
Expand All @@ -110,7 +110,7 @@ dependencies {
exclude module: 'gson'
because 'Different version conflicts with Minecraft\'s GSON'
}
testImplementation('org.junit.jupiter:junit-jupiter:5.9.1')
testImplementation('org.junit.jupiter:junit-jupiter:5.9.3')
}

tasks.withType(JavaCompile).configureEach {
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
org.gradle.jvmargs=-Xmx2G

# SkyblockAddons Properties
version=1.7.2
version=1.8.0-beta.1
# Set by CI
buildNumber=0
acceptedMinecraftVersions=[1.8.9]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,7 @@
import codes.biscuit.skyblockaddons.misc.scheduler.NewScheduler;
import codes.biscuit.skyblockaddons.misc.scheduler.Scheduler;
import codes.biscuit.skyblockaddons.newgui.GuiManager;
import codes.biscuit.skyblockaddons.utils.EnumUtils;
import codes.biscuit.skyblockaddons.utils.InventoryUtils;
import codes.biscuit.skyblockaddons.utils.SkyblockAddonsMessageFactory;
import codes.biscuit.skyblockaddons.utils.Utils;
import codes.biscuit.skyblockaddons.utils.*;
import codes.biscuit.skyblockaddons.utils.data.DataUtils;
import codes.biscuit.skyblockaddons.utils.gson.GsonInitializableTypeAdapter;
import codes.biscuit.skyblockaddons.utils.gson.PatternAdapter;
Expand Down Expand Up @@ -191,6 +188,10 @@ public void init(FMLInitializationEvent e) {
usingLabymod = utils.isModLoaded("labymod");
usingOofModv1 = utils.isModLoaded("refractionoof", "1.0");
usingPatcher = utils.isModLoaded("patcher");

if (!this.configValues.isEnabled(Feature.NUMBER_SEPARATORS)) {
TextUtils.NUMBER_FORMAT.setGroupingUsed(false);
}
}

@Mod.EventHandler
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
import codes.biscuit.skyblockaddons.core.Feature;
import codes.biscuit.skyblockaddons.core.InventoryType;
import codes.biscuit.skyblockaddons.features.backpacks.ContainerPreviewManager;
import codes.biscuit.skyblockaddons.features.craftingpatterns.CraftingPattern;
import codes.biscuit.skyblockaddons.utils.ColorCode;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.FontRenderer;
Expand Down Expand Up @@ -64,29 +63,6 @@ public static void drawSlot(GuiContainer guiContainer, Slot slot) {
Container container = mc.thePlayer.openContainer;

if (slot != null) {
// Draw crafting pattern overlays inside the crafting grid.
if (false /*main.getConfigValues().isEnabled(Feature.CRAFTING_PATTERNS)*/ && main.getUtils().isOnSkyblock()
&& slot.inventory.getDisplayName().getUnformattedText().equals(CraftingPattern.CRAFTING_TABLE_DISPLAYNAME)
&& main.getPersistentValuesManager().getPersistentValues().getSelectedCraftingPattern() != CraftingPattern.FREE) {

int craftingGridIndex = CraftingPattern.slotToCraftingGridIndex(slot.getSlotIndex());
if (craftingGridIndex >= 0) {
int slotLeft = slot.xDisplayPosition;
int slotTop = slot.yDisplayPosition;
int slotRight = slotLeft + 16;
int slotBottom = slotTop + 16;
if (main.getPersistentValuesManager().getPersistentValues().getSelectedCraftingPattern().isSlotInPattern(craftingGridIndex)) {
if (!slot.getHasStack()) {
guiContainer.drawGradientRect(slotLeft, slotTop, slotRight, slotBottom, OVERLAY_GREEN, OVERLAY_GREEN);
}
} else {
if (slot.getHasStack()) {
guiContainer.drawGradientRect(slotLeft, slotTop, slotRight, slotBottom, OVERLAY_RED, OVERLAY_RED);
}
}
}
}

if (main.getConfigValues().isEnabled(Feature.LOCK_SLOTS) &&
main.getUtils().isOnSkyblock()) {
int slotNum = slot.slotNumber + main.getInventoryUtils().getSlotDifference(container);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,9 @@
import codes.biscuit.skyblockaddons.SkyblockAddons;
import codes.biscuit.skyblockaddons.asm.utils.ReturnValue;
import codes.biscuit.skyblockaddons.core.Feature;
import codes.biscuit.skyblockaddons.core.InventoryType;
import codes.biscuit.skyblockaddons.events.SkyblockBlockBreakEvent;
import codes.biscuit.skyblockaddons.features.backpacks.BackpackColor;
import codes.biscuit.skyblockaddons.features.backpacks.BackpackInventoryManager;
import codes.biscuit.skyblockaddons.features.craftingpatterns.CraftingPattern;
import codes.biscuit.skyblockaddons.features.craftingpatterns.CraftingPatternResult;
import codes.biscuit.skyblockaddons.utils.ItemUtils;
import codes.biscuit.skyblockaddons.utils.Utils;
import com.google.common.collect.Sets;
Expand Down Expand Up @@ -161,45 +158,6 @@ public static void onWindowClick(int slotNum, int mouseButtonClicked, int mode,
main.getUtils().playLoudSound("note.bass", 0.5);
returnValue.cancel();
}

// Crafting patterns
if (false && slotIn != null && main.getInventoryUtils().getInventoryType() == InventoryType.CRAFTING_TABLE
/*&& main.getConfigValues().isEnabled(Feature.CRAFTING_PATTERNS)*/) {

final CraftingPattern selectedPattern = main.getPersistentValuesManager().getPersistentValues().getSelectedCraftingPattern();
final ItemStack clickedItem = slotIn.getStack();
if (selectedPattern != CraftingPattern.FREE && clickedItem != null) {
final ItemStack[] craftingGrid = new ItemStack[9];
for (int i = 0; i < CraftingPattern.CRAFTING_GRID_SLOTS.size(); i++) {
int slotIndex = CraftingPattern.CRAFTING_GRID_SLOTS.get(i);
craftingGrid[i] = slots.getSlot(slotIndex).getStack();
}

final CraftingPatternResult result = selectedPattern.checkAgainstGrid(craftingGrid);

if (slotIn.inventory.equals(Minecraft.getMinecraft().thePlayer.inventory)) {
if (result.isFilled() && !result.fitsItem(clickedItem) && mode == SHIFTCLICK_CLICK_TYPE) {
// cancel shift-clicking items from the inventory if the pattern is already filled
if (System.currentTimeMillis() > lastCraftingSoundPlayed + CRAFTING_PATTERN_SOUND_COOLDOWN) {
main.getUtils().playSound("note.bass", 0.5);
lastCraftingSoundPlayed = System.currentTimeMillis();
}
returnValue.cancel();
}
} else {
if (slotIn.getSlotIndex() == CraftingPattern.CRAFTING_RESULT_INDEX
&& !result.isSatisfied()
&& main.getPersistentValuesManager().getPersistentValues().isBlockCraftingIncompletePatterns()) {
// cancel clicking the result if the pattern isn't satisfied
if (System.currentTimeMillis() > lastCraftingSoundPlayed + CRAFTING_PATTERN_SOUND_COOLDOWN) {
main.getUtils().playSound("note.bass", 0.5);
lastCraftingSoundPlayed = System.currentTimeMillis();
}
returnValue.cancel();
}
}
}
}
}
}
else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ public class ConfigValues {
private Map<Feature, EnumUtils.AnchorPoint> anchorPoints = new EnumMap<>(Feature.class);
private final MutableObject<Language> language = new MutableObject<>(Language.ENGLISH);
private final MutableObject<EnumUtils.BackpackStyle> backpackStyle = new MutableObject<>(EnumUtils.BackpackStyle.GUI);
private final MutableObject<EnumUtils.PowerOrbDisplayStyle> powerOrbDisplayStyle = new MutableObject<>(EnumUtils.PowerOrbDisplayStyle.COMPACT);
private final MutableObject<EnumUtils.DeployableDisplayStyle> deployableDisplayStyle = new MutableObject<>(EnumUtils.DeployableDisplayStyle.COMPACT);
private final MutableObject<EnumUtils.TextStyle> textStyle = new MutableObject<>(EnumUtils.TextStyle.STYLE_ONE);
private final Map<String, Set<Integer>> profileLockedSlots = new HashMap<>();
@Getter
Expand Down Expand Up @@ -146,7 +146,7 @@ public void loadValues() {
Language configLanguage = Language.getFromPath(languageKey);
if (configLanguage != null) {
setLanguage(configLanguage); // TODO Will this crash?
// language.setValue(configLanguage);
//language.setValue(configLanguage);
}
}
} catch (Exception ex) {
Expand All @@ -155,7 +155,7 @@ public void loadValues() {
}

deserializeEnumValueFromOrdinal(backpackStyle, "backpackStyle");
deserializeEnumValueFromOrdinal(powerOrbDisplayStyle, "powerOrbStyle");
deserializeEnumValueFromOrdinal(deployableDisplayStyle, "deployableStyle");
deserializeEnumEnumMapFromIDS(anchorPoints, "anchorPoints", Feature.class, EnumUtils.AnchorPoint.class);
deserializeEnumNumberMapFromID(guiScales, "guiScales", Feature.class, float.class);

Expand Down Expand Up @@ -390,7 +390,7 @@ public void saveConfig() {
saveConfig.addProperty("textStyle", textStyle.getValue().ordinal());
saveConfig.addProperty("language", language.getValue().getPath());
saveConfig.addProperty("backpackStyle", backpackStyle.getValue().ordinal());
saveConfig.addProperty("powerOrbStyle", powerOrbDisplayStyle.getValue().ordinal());
saveConfig.addProperty("deployableStyle", deployableDisplayStyle.getValue().ordinal());

JsonArray chromaFeaturesArray = new JsonArray();
for (Feature feature : chromaFeatures) {
Expand Down Expand Up @@ -515,7 +515,6 @@ private <E extends Enum<?>, F extends Enum<?>> void deserializeEnumEnumMapFromID
}
}

@SuppressWarnings("unchecked")
private <E extends Enum<?>, N extends Number> void deserializeEnumNumberMapFromID(Map<E, N> map, String path, Class<E> keyClass, Class<N> numberClass) {
deserializeEnumNumberMapFromID(loadedConfig, map, path, keyClass, numberClass);
}
Expand Down Expand Up @@ -957,12 +956,12 @@ public void setBackpackStyle(EnumUtils.BackpackStyle backpackStyle) {
this.backpackStyle.setValue(backpackStyle);
}

public EnumUtils.PowerOrbDisplayStyle getPowerOrbDisplayStyle() {
return powerOrbDisplayStyle.getValue();
public EnumUtils.DeployableDisplayStyle getDeployableDisplayStyle() {
return deployableDisplayStyle.getValue();
}

public void setPowerOrbDisplayStyle(EnumUtils.PowerOrbDisplayStyle powerOrbDisplayStyle) {
this.powerOrbDisplayStyle.setValue(powerOrbDisplayStyle);
public void setDeployableDisplayStyle(EnumUtils.DeployableDisplayStyle deployableDisplayStyle) {
this.deployableDisplayStyle.setValue(deployableDisplayStyle);
}

public EnumUtils.TextStyle getTextStyle() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ public enum EssenceType {
DRAGON,
GOLD,
DIAMOND,
ICE;
ICE,
CRIMSON;

private String niceName;
@Getter private ResourceLocation resourceLocation;
Expand Down
Loading