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
2 changes: 1 addition & 1 deletion dependencies.gradle
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Add your dependencies here

dependencies {
api('com.github.GTNewHorizons:TinkersConstruct:1.13.38-GTNH:dev')
api('com.github.GTNewHorizons:TinkersConstruct:1.14.30-GTNH:dev')

compileOnly('com.github.GTNewHorizons:Battlegear2:1.4.3:api') {transitive = false}
}
43 changes: 39 additions & 4 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,34 @@ remoteMappings = https\://raw.githubusercontent.com/MinecraftForge/FML/1.7.10/co
# `./gradlew runClient --username=AnotherPlayer`, or configuring this command in your IDE.
developmentEnvironmentUserName = Developer

# Enables using modern Java syntax (up to version 17) via Jabel, while still targeting JVM 8.
# See https://github.com/bsideup/jabel for details on how this works.
# Enables modern Java syntax support. Valid values:
# - false: No modern syntax, Java 8 only
# - jabel: Jabel syntax-only support, compiles to J8 bytecode
# - jvmDowngrader: Full modern Java via JVM Downgrader (syntax + stdlib APIs)
# - modern: Native modern Java bytecode, no downgrading
enableModernJavaSyntax = false

# If set, ignores the above setting and compiles with the given toolchain. This may cause unexpected issues,
# and should *not* be used in most situations. -1 disables this.
# forceToolchainVersion = -1

# Target JVM version for JVM Downgrader bytecode downgrading.
# Only used when enableModernJavaSyntax = jvmDowngrader
# downgradeTargetVersion = 8

# Comma-separated list of Java versions for multi-release jar support (JVM Downgrader only).
# Classes will be available in META-INF/versions/N/ for each version N in this list.
# Default: "21,25" (J25+ gets native classes, J21-24 gets partial downgrade, J8-20 gets full downgrade).
# jvmDowngraderMultiReleaseVersions = 21,25

# Specifies how JVM Downgrader API stubs are provided. Options:
# - shade: Shade minimized stubs into the jar
# - gtnhlib: GTNHLib provides stubs at runtime (adds version constraint)
# - external: Another dependency provides stubs (no constraint, no warning)
# - (empty): Warning reminding you to configure stubs
# Note: 'shade' option requires you to verify license compliance, see: https://github.com/unimined/JvmDowngrader/blob/main/LICENSE.md
# jvmDowngraderStubsProvider =

# Enables injecting missing generics into the decompiled source code for a better coding experience.
# Turns most publicly visible List, Map, etc. into proper List<E>, Map<K, V> types.
enableGenericInjection = false
Expand Down Expand Up @@ -96,7 +120,9 @@ usesMixinDebug = false
# Specify the location of your implementation of IMixinConfigPlugin. Leave it empty otherwise.
mixinPlugin =

# Specify the package that contains all of your Mixins. You may only place Mixins in this package or the build will fail!
# Specify the package that contains all of your Mixins. The package must exist or
# the build will fail. If you have a package property defined in your mixins.<modid>.json,
# it must match with this or the build will fail.
mixinsPackage =

# Specify the core mod entry class if you use a core mod. This class must implement IFMLLoadingPlugin!
Expand Down Expand Up @@ -151,7 +177,7 @@ modrinthProjectId =
# type can be one of [project, version],
# and the name is the Modrinth project or version slug/id of the other mod.
# Example: required-project:fplib;optional-project:gasstation;incompatible-project:gregtech
# Note: GTNH Mixins is automatically set as a required dependency if usesMixins = true
# Note: UniMixins is automatically set as a required dependency if usesMixins = true.
modrinthRelations =

# Publishing to CurseForge requires you to set the CURSEFORGE_TOKEN environment variable to one of your CurseForge API tokens.
Expand All @@ -172,6 +198,12 @@ curseForgeRelations =
# projects. New projects should not use this parameter.
# customArchiveBaseName =

# Optional parameter to customize the default working directory used by the runClient* tasks. Relative to the project directory.
# runClientWorkingDirectory = run/client

# Optional parameter to customize the default working directory used by the runServer* tasks. Relative to the project directory.
# runServerWorkingDirectory = run/server

# Optional parameter to have the build automatically fail if an illegal version is used.
# This can be useful if you e.g. only want to allow versions in the form of '1.1.xxx'.
# The check is ONLY performed if the version is a git tag.
Expand Down Expand Up @@ -201,3 +233,6 @@ curseForgeRelations =
# This is meant to be set in $HOME/.gradle/gradle.properties.
# ideaCheckSpotlessOnBuild = true

# Non-GTNH properties
org.gradle.configuration-cache = true
org.gradle.parallel = true
12 changes: 12 additions & 0 deletions gradle/gradle-daemon-jvm.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#This file is generated by updateDaemonJvm
toolchainUrl.FREE_BSD.AARCH64=https\://api.foojay.io/disco/v3.0/ids/df211d3c3eefdc408b462041881bc575/redirect
toolchainUrl.FREE_BSD.X86_64=https\://api.foojay.io/disco/v3.0/ids/93aeea858331bd6bb00ba94759830234/redirect
toolchainUrl.LINUX.AARCH64=https\://api.foojay.io/disco/v3.0/ids/df211d3c3eefdc408b462041881bc575/redirect
toolchainUrl.LINUX.X86_64=https\://api.foojay.io/disco/v3.0/ids/93aeea858331bd6bb00ba94759830234/redirect
toolchainUrl.MAC_OS.AARCH64=https\://api.foojay.io/disco/v3.0/ids/3426ffcaa54c3f62406beb1f1ab8b179/redirect
toolchainUrl.MAC_OS.X86_64=https\://api.foojay.io/disco/v3.0/ids/f636c800fdb3f9ae33f019dfa048ba72/redirect
toolchainUrl.UNIX.AARCH64=https\://api.foojay.io/disco/v3.0/ids/df211d3c3eefdc408b462041881bc575/redirect
toolchainUrl.UNIX.X86_64=https\://api.foojay.io/disco/v3.0/ids/93aeea858331bd6bb00ba94759830234/redirect
toolchainUrl.WINDOWS.AARCH64=https\://api.foojay.io/disco/v3.0/ids/3cd7045fca9a72cd9bc7d14a385e594c/redirect
toolchainUrl.WINDOWS.X86_64=https\://api.foojay.io/disco/v3.0/ids/0ef34dd9312b12d61ba1b8e66126d140/redirect
toolchainVersion=25
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
7 changes: 2 additions & 5 deletions gradlew

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 1 addition & 2 deletions gradlew.bat

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ pluginManagement {
}

plugins {
id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.38'
id 'com.gtnewhorizons.gtnhsettingsconvention' version '2.0.20'
}


55 changes: 27 additions & 28 deletions src/main/java/squeek/tictooltips/TooltipHandler.java
Original file line number Diff line number Diff line change
Expand Up @@ -274,7 +274,8 @@ private List<String> getMaterialTooltip(int matID, Item item, ToolCore tool) {
} else {
if (mat.reinforced() > 0) toolTip.add(mat.style() + StringHelper.getReinforcedString(mat.reinforced()));

if (ToolPartHelper.isRod(item) || ToolPartHelper.isArrowShaft(item)) {
if (ToolPartHelper.isRod(item) || ToolPartHelper.isArrowShaft(item)
|| ToolPartHelper.isCrossbowBody(item)) {
ArrowShaftMaterial arrowShaftMat = (ArrowShaftMaterial) TConstructRegistry
.getCustomMaterial(matID, ArrowShaftMaterial.class);

Expand Down Expand Up @@ -372,36 +373,34 @@ private List<String> getMaterialTooltip(int matID, Item item, ToolCore tool) {
if (!hasTool || ToolHelper.isWeapon(tool)) toolTip.add(
StringHelper.getLocalizedString("gui.toolstation3")
+ ToolPartHelper.getAttackString(mat.attack()));
} else if (ToolPartHelper.isBowLimb(item) || ToolPartHelper.isCrossbowLimb(item)
|| ToolPartHelper.isCrossbowBody(item)) {
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation2")
+ ToolPartHelper.getDurabilityString(mat.durability()));
BowMaterial bowMat = TConstructRegistry.getBowMaterial(matID);
if (bowMat != null) {
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation6")
+ ToolPartHelper.getBowDrawSpeedString(bowMat.drawspeed));
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation7")
+ ToolPartHelper.getArrowSpeedString(bowMat.flightSpeedMax));
}
} else
if (ToolPartHelper.isBoltPart(item)) {
} else if (ToolPartHelper.isBowLimb(item) || ToolPartHelper.isCrossbowLimb(item)) {
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation2")
+ ToolPartHelper.getDurabilityString(mat.durability()));
BowMaterial bowMat = TConstructRegistry.getBowMaterial(matID);
if (bowMat != null) {
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation6")
+ ToolPartHelper.getBowDrawSpeedString(bowMat.drawspeed));
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation2")
+ ToolPartHelper.getDurabilityString(mat.durability()));
StringHelper.getLocalizedString("gui.toolstation7")
+ ToolPartHelper.getArrowSpeedString(bowMat.flightSpeedMax));
}
} else if (ToolPartHelper.isBoltPart(item)) {
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation2")
+ ToolPartHelper.getDurabilityString(mat.durability()));

ArrowMaterial arrowMat = TConstructRegistry.getArrowMaterial(matID);
if (arrowMat != null) {
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation22")
+ ToolPartHelper.getBreakChanceString(arrowMat.breakChance));
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation8")
+ ToolPartHelper.getWeightString(arrowMat.mass));
}
ArrowMaterial arrowMat = TConstructRegistry.getArrowMaterial(matID);
if (arrowMat != null) {
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation22")
+ ToolPartHelper.getBreakChanceString(arrowMat.breakChance));
toolTip.add(
StringHelper.getLocalizedString("gui.toolstation8")
+ ToolPartHelper.getWeightString(arrowMat.mass));
}
}
// tough bindings and full guards, specifically, count as 'handles'
// apparently this is due to them having 3 material cost, but
// that is arbitrary, it's not *actually* due to them having 3 material cost
Expand Down