Skip to content

Commit 89e28b2

Browse files
committed
It compilies?
1 parent 7c08380 commit 89e28b2

File tree

45 files changed

+668
-599
lines changed

Some content is hidden

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

45 files changed

+668
-599
lines changed

common/src/main/java/generations/gg/generations/core/generationscore/common/client/GenerationsCoreClient.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -360,14 +360,14 @@ object GenerationsCoreClient {
360360
consumer.register(GenerationsBlockEntities.STREET_LAMP.get(), ::GeneralUseBlockEntityRenderer)
361361
}
362362

363-
fun registerLayerDefinitions(consumer: BiConsumer<ModelLayerLocation, Supplier<LayerDefinition>>) {
363+
fun registerLayerDefinitions(consumer: (ModelLayerLocation, () -> LayerDefinition) -> Unit) {
364364
val boat = BoatModel::createBodyModel
365365
val chestBoat: () -> LayerDefinition = ChestBoatModel::createBodyModel
366366

367367

368368
for (type in GenerationsBoatEntity.Type.entries) {
369-
consumer.accept(GenerationsBoatRenderer.createBoatModelName(type), boat)
370-
consumer.accept(GenerationsBoatRenderer.createChestBoatModelName(type), chestBoat)
369+
consumer.invoke(GenerationsBoatRenderer.createBoatModelName(type), boat)
370+
consumer.invoke(GenerationsBoatRenderer.createChestBoatModelName(type), chestBoat)
371371
}
372372
}
373373

common/src/main/java/generations/gg/generations/core/generationscore/common/client/render/block/entity/RegigigasShrineBlockEntityRenderer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public static void processOrbs(RegigigasShrineBlockEntity shrineBlock) {
4242
List<Vector3f> colors = new ArrayList<>();
4343

4444
for (int i = 0; i < 5; i++) {
45-
if(!shrineBlock.getRegiOrbs().get(i).isEmpty()) {
45+
if(!shrineBlock.getContainer().get(i).isEmpty()) {
4646
colors.add(map.get(i));
4747
}
4848
}

common/src/main/java/generations/gg/generations/core/generationscore/common/client/screen/Overlays.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ object Overlays {
2121
private val PUMPKIN_BLUR_LOCATION: ResourceLocation = ResourceLocation.parse("textures/misc/pumpkinblur.png")
2222

2323

24-
fun renderCamera(graphics: GuiGraphics, delta: Float): Boolean {
24+
fun renderCamera(graphics: GuiGraphics, delta: DeltaTracker): Boolean {
2525
val player = Minecraft.getInstance().player
2626
if (Minecraft.getInstance().screen == null && player != null && player.mainHandItem.item is CameraItem) {
2727
var scale = 1.0f
@@ -74,7 +74,7 @@ object Overlays {
7474
)
7575
}) {
7676
if (player.inventory.freeSlot > -1) {
77-
val value = player.cooldowns.getCooldownPercent(player.mainHandItem.item, delta)
77+
val value = player.cooldowns.getCooldownPercent(player.mainHandItem.item, delta.getGameTimeDeltaPartialTick(true))
7878
renderTextureOverlay(graphics, CAMERA_OVERLAY_FOCUS, 1f, 1f, Mth.lerp(value, 1f, 0f))
7979
} else {
8080
renderTextureOverlay(graphics, CAMERA_OVERLAY_FOCUS, 0.3f, 0.3f, 0.3f)
@@ -148,7 +148,7 @@ object Overlays {
148148
if (Minecraft.getInstance().options.cameraType.isFirstPerson) {
149149
checkNotNull(Minecraft.getInstance().player)
150150
if (!Minecraft.getInstance().player!!.isScoping) {
151-
if (!renderCamera(guiGraphics, deltaTracker.gameTimeDeltaTicks)) renderPumpkin(
151+
if (!renderCamera(guiGraphics, deltaTracker)) renderPumpkin(
152152
guiGraphics,
153153
deltaTracker
154154
)

common/src/main/java/generations/gg/generations/core/generationscore/common/compat/rei/DefaultRksMachineRecipeDisplay.java

Lines changed: 10 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import generations.gg.generations.core.generationscore.common.world.recipe.RksRecipe;
44
import generations.gg.generations.core.generationscore.common.world.recipe.ShapedRksRecipe;
5+
import generations.gg.generations.core.generationscore.common.world.recipe.ShapelessRksRecipe;
56
import it.unimi.dsi.fastutil.ints.IntIntImmutablePair;
67
import it.unimi.dsi.fastutil.ints.IntIntPair;
78
import me.shedaniel.rei.api.common.category.CategoryIdentifier;
@@ -10,26 +11,20 @@
1011
import me.shedaniel.rei.api.common.entry.EntryIngredient;
1112
import me.shedaniel.rei.api.common.entry.EntryStack;
1213
import me.shedaniel.rei.api.common.entry.InputIngredient;
13-
import me.shedaniel.rei.api.common.entry.type.VanillaEntryTypes;
14-
import me.shedaniel.rei.api.common.transfer.info.MenuInfo;
15-
import me.shedaniel.rei.api.common.transfer.info.MenuSerializationContext;
16-
import me.shedaniel.rei.api.common.transfer.info.simple.SimpleGridMenuInfo;
17-
import me.shedaniel.rei.api.common.util.CollectionUtils;
1814
import net.minecraft.resources.ResourceLocation;
1915
import net.minecraft.world.entity.player.Player;
2016
import net.minecraft.world.inventory.AbstractContainerMenu;
21-
import net.minecraft.world.item.ItemStack;
22-
import net.minecraft.world.item.crafting.Recipe;
17+
import net.minecraft.world.item.crafting.RecipeHolder;
2318
import org.jetbrains.annotations.Nullable;
2419

2520
import java.util.*;
2621

27-
public abstract class DefaultRksMachineRecipeDisplay<C extends Recipe<?>> extends BasicDisplay implements SimpleGridMenuDisplay {
22+
public abstract class DefaultRksMachineRecipeDisplay<C extends RecipeHolder<? extends RksRecipe>> extends BasicDisplay implements SimpleGridMenuDisplay {
2823
protected Optional<C> recipe;
2924
private final int weavingTime;
3025

3126
public DefaultRksMachineRecipeDisplay(List<EntryIngredient> inputs, List<EntryIngredient> outputs, Optional<C> recipe, int weavingTime) {
32-
this(inputs, outputs, recipe.map(Recipe::getId), recipe, weavingTime);
27+
this(inputs, outputs, recipe.map(a -> a.id()), recipe, weavingTime);
3328
}
3429

3530
public DefaultRksMachineRecipeDisplay(List<EntryIngredient> inputs, List<EntryIngredient> outputs, Optional<ResourceLocation> location, Optional<C> recipe, int weavingTime) {
@@ -39,11 +34,11 @@ public DefaultRksMachineRecipeDisplay(List<EntryIngredient> inputs, List<EntryIn
3934
}
4035

4136
@Nullable
42-
public static DefaultRksMachineRecipeDisplay<?> of(Recipe<?> recipe) {
43-
// if (recipe instanceof TesselatingShapelessRecipe) {
44-
// return new DefaultTesselatingShapelessDisplay((TesselatingShapelessRecipe) recipe);
45-
/*} else */if (recipe instanceof ShapedRksRecipe rksRecipe) {
46-
return new DefaultRksMachineeShapedDisplay(rksRecipe);
37+
public static DefaultRksMachineRecipeDisplay<?> of(RecipeHolder<?> recipe) {
38+
if (recipe.value() instanceof ShapelessRksRecipe) {
39+
return new DefaultRksShapelessDisplay((RecipeHolder<ShapelessRksRecipe>) recipe);
40+
} else if (recipe.value() instanceof ShapedRksRecipe) {
41+
return new DefaultRksMachineeShapedDisplay((RecipeHolder<ShapedRksRecipe>) recipe);
4742
} /*else if (!recipe.isSpecial()) {
4843
NonNullList<Ingredient> ingredients = recipe.getIngredients();
4944
for (CraftingRecipeSizeProvider<?> pair : SIZE_PROVIDER) {
@@ -63,20 +58,12 @@ public static DefaultRksMachineRecipeDisplay<?> of(Recipe<?> recipe) {
6358
return null;
6459
}
6560

61+
6662
@Override
6763
public CategoryIdentifier<?> getCategoryIdentifier() {
6864
return ReiCompatClient.RKS_MACHINE;
6965
}
7066

71-
public Optional<C> getOptionalRecipe() {
72-
return recipe;
73-
}
74-
75-
@Override
76-
public Optional<ResourceLocation> getDisplayLocation() {
77-
return getOptionalRecipe()
78-
}
79-
8067
public <T extends AbstractContainerMenu> List<EntryIngredient> getOrganisedInputEntries(int menuWidth, int menuHeight) {
8168
List<EntryIngredient> list = new ArrayList<>(menuWidth * menuHeight);
8269
for (int i = 0; i < menuWidth * menuHeight; i++) {

common/src/main/java/generations/gg/generations/core/generationscore/common/compat/rei/DefaultRksMachineeShapedDisplay.java

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,27 +5,29 @@
55
import generations.gg.generations.core.generationscore.common.world.recipe.ShapedRksRecipe;
66
import me.shedaniel.rei.api.common.display.basic.BasicDisplay;
77
import me.shedaniel.rei.api.common.util.EntryIngredients;
8+
import net.minecraft.core.Holder;
9+
import net.minecraft.world.item.crafting.RecipeHolder;
810

911
import java.util.Collections;
1012
import java.util.Optional;
1113

12-
public class DefaultRksMachineeShapedDisplay extends DefaultRksMachineRecipeDisplay<ShapedRksRecipe> {
13-
public DefaultRksMachineeShapedDisplay(ShapedRksRecipe rksRecipe) {
14+
public class DefaultRksMachineeShapedDisplay extends DefaultRksMachineRecipeDisplay<RecipeHolder<ShapedRksRecipe>> {
15+
public DefaultRksMachineeShapedDisplay(RecipeHolder<ShapedRksRecipe> rksRecipe) {
1416
super(
15-
rksRecipe.recipeItems.stream().map(a -> EntryIngredients.ofItemStacks(a.matchingStacks())).toList(),
16-
Collections.singletonList(EntryIngredients.of(rksRecipe.getResultItem(BasicDisplay.registryAccess()))),
17+
rksRecipe.value().getRksIngredients().stream().map(a -> EntryIngredients.ofItemStacks(a.matchingStacks())).toList(),
18+
Collections.singletonList(EntryIngredients.of(rksRecipe.value().getResultItem(BasicDisplay.registryAccess()))),
1719
Optional.of(rksRecipe),
18-
rksRecipe.processingTime()
20+
rksRecipe.value().getProcessingTime()
1921
);
2022
}
2123

2224
@Override
2325
public int getWidth() {
24-
return recipe.get().getWidth();
26+
return recipe.get().value().getPattern().getWidth();
2527
}
2628

2729
@Override
2830
public int getHeight() {
29-
return recipe.get().getWidth();
31+
return recipe.get().value().getPattern().getWidth();
3032
}
3133
}
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package generations.gg.generations.core.generationscore.common.compat.rei;
2+
3+
import generations.gg.generations.core.generationscore.common.world.recipe.ShapelessRksRecipe;
4+
import me.shedaniel.rei.api.common.display.basic.BasicDisplay;
5+
import me.shedaniel.rei.api.common.util.EntryIngredients;
6+
import net.minecraft.world.item.crafting.RecipeHolder;
7+
8+
import java.util.Collections;
9+
import java.util.Optional;
10+
11+
public class DefaultRksShapelessDisplay extends DefaultRksMachineRecipeDisplay<RecipeHolder<ShapelessRksRecipe>> {
12+
public DefaultRksShapelessDisplay(RecipeHolder<ShapelessRksRecipe> rksRecipe) {
13+
super(
14+
rksRecipe.value().getRksIngredients().stream().map(a -> EntryIngredients.ofItemStacks(a.matchingStacks())).toList(),
15+
Collections.singletonList(EntryIngredients.of(rksRecipe.value().getResultItem(BasicDisplay.registryAccess()))),
16+
Optional.of(rksRecipe),
17+
rksRecipe.value().getProcessingTime()
18+
);
19+
}
20+
21+
public int getWidth() {
22+
return this.getInputEntries().size() > 4 ? 3 : 2;
23+
}
24+
25+
public int getHeight() {
26+
return this.getInputEntries().size() > 4 ? 3 : 2;
27+
}
28+
29+
30+
public int getInputWidth(int craftingWidth, int craftingHeight) {
31+
return craftingWidth * craftingHeight <= this.getInputEntries().size() ? craftingWidth : Math.min(this.getInputEntries().size(), 3);
32+
}
33+
34+
public int getInputHeight(int craftingWidth, int craftingHeight) {
35+
return (int)Math.ceil((double)this.getInputEntries().size() / (double)this.getInputWidth(craftingWidth, craftingHeight));
36+
}
37+
38+
public boolean isShapeless() {
39+
return true;
40+
}
41+
}

common/src/main/java/generations/gg/generations/core/generationscore/common/compat/rei/ReiCompatClient.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import generations.gg.generations.core.generationscore.common.client.screen.container.RksMachineScreen;
44
import generations.gg.generations.core.generationscore.common.world.container.RksMachineContainer;
55
import generations.gg.generations.core.generationscore.common.world.level.block.GenerationsUtilityBlocks;
6+
import generations.gg.generations.core.generationscore.common.world.recipe.GenerationsCoreRecipeTypes;
67
import generations.gg.generations.core.generationscore.common.world.recipe.RksRecipe;
78
import me.shedaniel.math.Rectangle;
89
import me.shedaniel.rei.api.client.plugins.REIClientPlugin;
@@ -25,7 +26,7 @@ public void registerCategories(CategoryRegistry registry) {
2526

2627
@Override
2728
public void registerDisplays(DisplayRegistry registry) {
28-
registry.registerFiller(RksRecipe.class, DefaultRksMachineRecipeDisplay::of);
29+
registry.registerRecipeFiller(RksRecipe.class, GenerationsCoreRecipeTypes.RKS.get(), DefaultRksMachineRecipeDisplay::of);
2930
}
3031

3132

common/src/main/java/generations/gg/generations/core/generationscore/common/config/SpeciesKey.kt

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import generations.gg.generations.core.generationscore.common.util.Codecs.nullab
99
import generations.gg.generations.core.generationscore.common.util.StreamCodecs.asRegistryFriendly
1010
import generations.gg.generations.core.generationscore.common.util.StreamCodecs.nullable
1111
import generations.gg.generations.core.generationscore.common.util.StreamCodecs.set
12+
import it.unimi.dsi.fastutil.ints.IntSets
1213
import net.minecraft.network.RegistryFriendlyByteBuf
1314
import net.minecraft.network.codec.ByteBufCodecs
1415
import net.minecraft.network.codec.StreamCodec
@@ -17,9 +18,9 @@ import java.util.*
1718
import java.util.stream.Collectors
1819

1920
@JvmRecord
20-
data class SpeciesKey(@JvmField val species: ResourceLocation, @JvmField val aspects: Set<String>?) {
21+
data class SpeciesKey(@JvmField val species: ResourceLocation, @JvmField val aspects: Set<String> = emptySet()) {
2122
@JvmOverloads
22-
constructor(species: String, aspects: Set<String> = setOf<String>()) : this(
23+
constructor(species: String, aspects: Set<String> = emptySet()) : this(
2324
ResourceLocation.parse(species),
2425
aspects
2526
)
@@ -28,7 +29,7 @@ data class SpeciesKey(@JvmField val species: ResourceLocation, @JvmField val asp
2829
fun createProperties(): PokemonProperties {
2930
val properties = PokemonProperties()
3031
properties.species = species.path
31-
if (aspects != null) properties.aspects = aspects
32+
if (aspects.isNotEmpty()) properties.aspects = aspects
3233
return properties
3334
}
3435

@@ -49,7 +50,7 @@ data class SpeciesKey(@JvmField val species: ResourceLocation, @JvmField val asp
4950

5051

5152
override fun toString(): String {
52-
val setString = if (!aspects.isNullOrEmpty()) aspects.stream().collect(Collectors.joining(",", "[", "]")) else ""
53+
val setString = if (aspects.isNotEmpty()) aspects.stream().collect(Collectors.joining(",", "[", "]")) else ""
5354
return species.toString() + setString
5455
}
5556

@@ -61,7 +62,7 @@ data class SpeciesKey(@JvmField val species: ResourceLocation, @JvmField val asp
6162
val STREAM_CODEC = StreamCodec.composite(
6263
ResourceLocation.STREAM_CODEC,
6364
SpeciesKey::species,
64-
ByteBufCodecs.STRING_UTF8.set().asRegistryFriendly().nullable(),
65+
ByteBufCodecs.STRING_UTF8.set().asRegistryFriendly(),
6566
SpeciesKey::aspects, ::SpeciesKey
6667
)
6768

@@ -76,7 +77,7 @@ data class SpeciesKey(@JvmField val species: ResourceLocation, @JvmField val asp
7677
.collect(Collectors.toSet())
7778
}
7879

79-
return SpeciesKey(pokemon.species.resourceIdentifier, aspects)
80+
return SpeciesKey(pokemon.species.resourceIdentifier, aspects ?: emptySet())
8081
}
8182

8283
@JvmStatic
@@ -93,7 +94,7 @@ data class SpeciesKey(@JvmField val species: ResourceLocation, @JvmField val asp
9394
aspects = values.split(",".toRegex()).dropLastWhile { it.isEmpty() }.toSet()
9495
}
9596
}
96-
return SpeciesKey(species, aspects)
97+
return SpeciesKey(species, aspects ?: emptySet())
9798
}
9899

99100
fun fromSpecies(species: Species): SpeciesKey {

common/src/main/java/generations/gg/generations/core/generationscore/common/world/item/GenerationsTools.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ public class GenerationsTools {
149149
0,
150150
2,
151151
4,
152-
new EnchantmentToolEffect(Enchantments.BLOCK_EFFICIENCY, 3, 1));
152+
new EnchantmentToolEffect(Enchantments.EFFICIENCY, 3, 1));
153153

154154
public static final ToolSet WATER_STONE = ToolSet.create("water_stone", () -> GenerationsTiers.WATER_STONE,
155155
1,
@@ -158,7 +158,7 @@ public class GenerationsTools {
158158
-3,
159159
2,
160160
4,
161-
new EnchantmentToolEffect(Enchantments.BLOCK_EFFICIENCY, 3, 1));
161+
new EnchantmentToolEffect(Enchantments.EFFICIENCY, 3, 1));
162162

163163
public static final ToolSet ULTRITE = ToolSet.create("ultrite", () -> GenerationsTiers.ULTRITE,
164164
1.5f,

0 commit comments

Comments
 (0)