From d2f87bcdee64f68e3d2c0e0d529da855dbb551b2 Mon Sep 17 00:00:00 2001 From: Waiting Idly <25394029+WaitingIdly@users.noreply.github.com> Date: Thu, 29 May 2025 22:53:21 -0700 Subject: [PATCH 1/3] update creative tab code --- examples/preInit/vanilla.groovy | 14 +++++------ .../groovyscript/compat/content/Content.java | 23 +++++++++++++++++++ 2 files changed, 29 insertions(+), 8 deletions(-) diff --git a/examples/preInit/vanilla.groovy b/examples/preInit/vanilla.groovy index ee4ba50d9..f5382826e 100644 --- a/examples/preInit/vanilla.groovy +++ b/examples/preInit/vanilla.groovy @@ -16,19 +16,17 @@ import net.minecraft.world.IBlockAccess // '[itemname].png.mcmeta' to create an animated file. // A file will be created in 'assets/groovyscriptdev/models/item/' called '[itemname].json' and point to this location in textures. -def HOAU = content.createItem('heartofauniverse') // Set item name at 'item.[itemname].name=[desired name]' - .setRarity(EnumRarity.EPIC) // Optional IRarity, sets the default text formatting (default none) - .setMaxStackSize(1) // Optional int, sets the max stack size (default 64) -// Note: by not running '.register()' this item will not be created yet. This is done so we can set the creative tab correctly. - // Create the creative tab, using the not-yet-registered item -def tab = content.createCreativeTab('groovyscript.example_creative_tab', HOAU) +def tab = content.createCreativeTab('groovyscript.example_creative_tab', _ -> item('groovyscriptdev:heartofauniverse')) // When registering items, this will add them to the given creative tab without having to manually do so. content.setDefaultCreativeTab(tab) -// Now, we register to HOAU item. -HOAU.register() +// create the creative tab +content.createItem('heartofauniverse') // Set item name at 'item.[itemname].name=[desired name]' + .setRarity(EnumRarity.EPIC) // Optional IRarity, sets the default text formatting (default none) + .setMaxStackSize(1) // Optional int, sets the max stack size (default 64) + .register() // Create an item at the location 'groovyscriptdev:clay_2' diff --git a/src/main/java/com/cleanroommc/groovyscript/compat/content/Content.java b/src/main/java/com/cleanroommc/groovyscript/compat/content/Content.java index 3c8e0477b..ed7074cfa 100644 --- a/src/main/java/com/cleanroommc/groovyscript/compat/content/Content.java +++ b/src/main/java/com/cleanroommc/groovyscript/compat/content/Content.java @@ -3,6 +3,7 @@ import com.cleanroommc.groovyscript.GroovyScript; import com.cleanroommc.groovyscript.api.GroovyLog; import com.cleanroommc.groovyscript.registry.NamedRegistry; +import groovy.lang.Closure; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; @@ -14,6 +15,8 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.function.Supplier; + public class Content extends NamedRegistry { public CreativeTabs defaultTab; @@ -68,6 +71,26 @@ public CreativeTabs createCreativeTab(String name, ItemStack icon) { }; } + public CreativeTabs createCreativeTab(String name, Supplier icon) { + return new CreativeTabs(name) { + + @Override + public @NotNull ItemStack createIcon() { + return icon.get().copy(); + } + }; + } + + public CreativeTabs createCreativeTab(String name, Closure icon) { + return new CreativeTabs(name) { + + @Override + public @NotNull ItemStack createIcon() { + return icon.call().copy(); + } + }; + } + public CreativeTabs createCreativeTab(String name, Item icon) { return createCreativeTab(name, new ItemStack(icon)); } From 32ed23646aba6dde7a7bdc88cdd007e2d5414755 Mon Sep 17 00:00:00 2001 From: Waiting Idly <25394029+WaitingIdly@users.noreply.github.com> Date: Thu, 29 May 2025 22:53:36 -0700 Subject: [PATCH 2/3] fix dev resource locatalization names --- examples/assets/groovyscriptdev/lang/en_us.lang | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/examples/assets/groovyscriptdev/lang/en_us.lang b/examples/assets/groovyscriptdev/lang/en_us.lang index 31d5ca7ab..2505571a0 100644 --- a/examples/assets/groovyscriptdev/lang/en_us.lang +++ b/examples/assets/groovyscriptdev/lang/en_us.lang @@ -1,13 +1,13 @@ itemGroup.groovyscript.example_creative_tab=GroovyScript Creative Tab -item.placeholdername.heartofauniverse.name=Heart of the Universe -item.placeholdername.clay_2.name=If clay is so good... -item.placeholdername.clay_3.name=Enchanted Clay -item.placeholdername.prodigy_stick.name=Prodigy Stick -item.placeholdername.snack.name=Snack -tile.placeholdername.generic_block.name=Generic Block -tile.placeholdername.dragon_egg_lamp.name=Dragon Egg Lamp +item.groovyscriptdev.heartofauniverse.name=Heart of the Universe +item.groovyscriptdev.clay_2.name=If clay is so good... +item.groovyscriptdev.clay_3.name=Enchanted Clay +item.groovyscriptdev.prodigy_stick.name=Prodigy Stick +item.groovyscriptdev.snack.name=Snack +tile.groovyscriptdev.generic_block.name=Generic Block +tile.groovyscriptdev.dragon_egg_lamp.name=Dragon Egg Lamp -fluid.placeholdername.amongium=Amongium +fluid.groovyscriptdev.amongium.name=Amongium # For the prodigy tech example enchantment.level.11=XI From 9edb361642dffb3afd5823c679692a670986fa22 Mon Sep 17 00:00:00 2001 From: Waiting Idly <25394029+WaitingIdly@users.noreply.github.com> Date: Thu, 29 May 2025 22:53:46 -0700 Subject: [PATCH 3/3] disable debug_factory_tech --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 10ffb67fd..56271784f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -57,7 +57,7 @@ debug_extended_crafting = false debug_extra_botany = false debug_extra_utilities_2 = false -debug_factory_tech = true +debug_factory_tech = false debug_forestry = false debug_future_mc = false