Git Product home page Git Product logo

itemborders's Introduction

Hey there, I'm Grend.

I'm currently doing indie game development for a small studio and spending a lot of my free time on modding and personal projects.

Note that I am not currently accepting pull requests on any repositories. However, if you've discovered a bug or want to request a new feature, I'll be happy to implement this myself. Just raise an issue.

You can check out some of my open source projects here, or you can find me elsewhere on the web:


 🏠 Website

  CurseForge

  NexusMods

  Discord

itemborders's People

Contributors

ahilyard avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

crendgrim

itemborders's Issues

Compatibility issue with Smooth Scrolling

original issue: SmajloSlovakian/Minecraft-Smooth-Scrolling#36

the item borders don't scroll smoothly in the creative inventory with this mod enabled... i have made two fabric object shares which should help you improve the compatibility with this mod...
in case you don't know how to use object shares, i have this example:

if (FabricLoader.getInstance().getObjectShare().get("raised:hud") instanceof Integer distance) {
    doSomethingWith(distance)
}

the two objects i share are: "smoothsc:creative_screen/item_count" and "smoothsc:creative_screen/y_offset"
y_offset is the offset you have to move the border up or down
item_count is the count of the items to apply the offset to (i share this so you don't have to count the items inside the creative menu excluding hotbar items)
you also may have to account for the scissor (mask) which makes it so that stuff doesn't render outside the screen and so it looks better
the testing mod build can be found here in the artifacts: https://github.com/SmajloSlovakian/Minecraft-Smooth-Scrolling/actions/runs/9373784327

let me know if you're interested or if you have a better idea, hope this helps

Minecraft 1.12.2 Support of this mod

Hi,
I love it your mods are so good and I love so what. But I hope you can this Mod "ItemBorders" in the future make with a 1.12.2 Support why I search for this for a Project what I build.

Legendary Tooltips integration is broken

For example:
image

Possible reason (not a java dev, sorry if I'm wrong):

import com.anthonyhilyard.legendarytooltips.LegendaryTooltipsConfig;

Should be replaced by:

import com.anthonyhilyard.legendarytooltips.config.LegendaryTooltipsConfig

And so on

Versions:
Item Borders 1.2.0
Legendary Tooltips 1.4.0
Forge 43.3.0

Feature request: Add ModMenu config page

Many mods using ModMenu to display their configs and change configs of their mods. It would be great to add this GUI for users to change configs instead of doing it manually from files.
thanks in advance <3

1.21 ItemBorders/LegendaryToolTips/AdvancementPlaques crash

Tested AdvancementPlaques-1.21-neoforge-1.6.3, ItemBorders-1.21-neoforge-1.2.4 and LegendaryTooltips-1.21-neoforge-1.4.8 with Iceberg-1.21-neoforge-1.2.1 and Prism-1.21-neoforge-1.0.8 on neoForge-21.0.144 with no other mods present. Received this error for all three mods:

"Name" has failed to load correctly.
java.lang.AbstractMethodError:Receiver class
com.anthonyhilyard.iceberg.neoforge.config.NeoForgeIcebergConfigSpec does not define or inherit an implementation of the resolved method 'abstract void validateSpec(net.neoforged.fml.config.ModConfig)' of interface net.neoforged.fml.config.IConfigSpec.

crash-2024-07-29_19.55.37-fml.txt

Nether Chested compatibility

That's it.

import com.anthonyhilyard.itemborders.ItemBorders;
import fuzs.puzzlesaccessapi.api.client.container.v1.ExtendableContainerScreen;
import fuzs.puzzlesapi.api.client.limitlesscontainers.v1.LimitlessContainerScreen;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.network.chat.Component;
import net.minecraft.world.entity.player.Inventory;
import net.minecraft.world.inventory.AbstractContainerMenu;
import net.minecraft.world.inventory.Slot;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import org.jetbrains.annotations.NotNull;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;

@Mixin(LimitlessContainerScreen.class)
@OnlyIn(Dist.CLIENT)
public class Border<T extends AbstractContainerMenu> extends ExtendableContainerScreen<T> {
    public Border(T menu, Inventory inventory, Component title) { super(menu, inventory, title); }
    protected void renderBg(@NotNull GuiGraphics guiGraphics, float v, int i, int i1) {}

    @Inject(method = "m_280092_", at = @At(value = "INVOKE", target = "Lfuzs/puzzlesapi/impl/limitlesscontainers/client/AdvancedItemRenderer;renderItemDecorations(Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;Lnet/minecraft/world/item/ItemStack;IILjava/lang/String;)V", shift = At.Shift.AFTER, remap = false), remap = false)
    private void renderSlot(GuiGraphics guiGraphics, Slot slot, CallbackInfo ci) {
        ItemBorders.renderBorder(guiGraphics.pose(), slot);
    }

}

Crashes on 1.19.3 Fabric

Hi
I know the latest version is 1.19.2 but I just wanted to try it on 1.19.3 and give feedback
love your mods
thanks in advance <3

---- Minecraft Crash Report ----
// You should try our sister game, Minceraft!

Time: 2023-01-15 15:35:28
Description: Unexpected error

java.lang.NoSuchMethodError: 'net.minecraft.class_1159 net.minecraft.class_4587$class_4665.method_23761()'
at com.anthonyhilyard.itemborders.ItemBorders.render(ItemBorders.java:67)
at com.anthonyhilyard.itemborders.ItemBorders.renderBorder(ItemBorders.java:39)
at net.minecraft.class_329.handler$chf001$renderSlot(class_329.java:6994)
at net.minecraft.class_329.method_1762(class_329.java:1261)
at net.minecraft.class_329.method_1759(class_329.java:581)
at net.minecraft.class_329.mixinextras$bridge$fb9e2989-2c93-4ab4-a0ee-6427a6de419f$method_1759(class_329.java)
at net.minecraft.class_329.wrapOperation$bpk000$if$Batching(class_329.java:1545)
at net.minecraft.class_329.method_1753(class_329.java:207)
at net.minecraft.class_757.method_3192(class_757.java:910)
at net.minecraft.class_310.method_1523(class_310.java:1193)
at net.minecraft.class_310.method_1514(class_310.java:781)
at net.minecraft.client.main.Main.method_44604(Main.java:244)
at net.minecraft.client.main.Main.main(Main.java:51)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:461)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)

A detailed walkthrough of the error, its code path and all known details is as follows:

-- Head --
Thread: Render thread
Stacktrace:
at com.anthonyhilyard.itemborders.ItemBorders.render(ItemBorders.java:67)
at com.anthonyhilyard.itemborders.ItemBorders.renderBorder(ItemBorders.java:39)
at net.minecraft.class_329.handler$chf001$renderSlot(class_329.java:6994)
at net.minecraft.class_329.method_1762(class_329.java:1261)
at net.minecraft.class_329.method_1759(class_329.java:581)
at net.minecraft.class_329.mixinextras$bridge$fb9e2989-2c93-4ab4-a0ee-6427a6de419f$method_1759(class_329.java)
at net.minecraft.class_329.wrapOperation$bpk000$if$Batching(class_329.java:1545)
at net.minecraft.class_329.method_1753(class_329.java:207)
Mixins in Stacktrace: None found

-- Affected level --
Details:
All players: 1 total; [class_746[''/165, l='ClientLevel', x=88.16, y=27.00, z=-81.61]]
Chunk stats: 1024, 665
Level dimension: minecraft:overworld
Level spawn location: World: (144,64,-192), Section: (at 0,0,0 in 9,4,-12; chunk contains blocks 144,-64,-192 to 159,319,-177), Region: (0,-1; contains chunks 0,-32 to 31,-1, blocks 0,-64,-512 to 511,319,-1)
Level time: 2234677 game time, 415253 day time
Server brand: fabric
Server type: Integrated singleplayer server
Stacktrace:
at net.minecraft.class_638.method_8538(class_638.java:455)
at net.minecraft.class_310.method_1587(class_310.java:2390)
at net.minecraft.class_310.method_1514(class_310.java:805)
at net.minecraft.client.main.Main.method_44604(Main.java:244)
at net.minecraft.client.main.Main.main(Main.java:51)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:461)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
Mixins in Stacktrace: None found

-- Last reload --
Details:
Reload number: 1
Reload reason: initial
Finished: Yes
Packs: vanilla, Fabric Mods, itemswapper/default, file/itemframes-e700.zip, file/XeKr+flowers+leaves+model+pack+modified.zip, file/VanillaTweaks_1.19.3.zip, file/VIllagerAndOthersCloakFix.zip, file/Luminous1.3.zip, file/Kubban's Saplings, file/Flower_Golems_v1.zip, file/Flower_Crowns_(1.18)_v2.zip, file/Desert_Bloom-v1.0.2.zip, file/Butterflies+-+Mrblueyeti.zip, file/Better+sheep+-+Mrblueyeti.zip, file/Better_Chickens_V1.3.zip, file/Better_Dogs-Shiba_Inu.zip, loadmyresources.hiddenpack, replaymod_lang

Incompatible with Enhanced Armaments

When the item is picked up, Enhanced Armaments randomly selects the item's rarity. This mod has custom rarities and they don't seem to work with this mod, as when I pick up an item that has a custom rarity, the border disappears.

Keeps regenerating "broken" config

I constantly get this warning in the log: "Configuration file <my_instance>/config/itemborders-common.toml is not correct. Correcting"

But the "correcting" doesn't actually do anything, and ends up spitting out another config file that's exactly the same and still broken, according to the mod. This ends up both spamming the log, and generating 5 backup config files.
image

This also keeps happening if i delete all the junk configs.

I am on macOS. if this does not happen on windows i suspect it's related to / vs \ file separators.

1.20 waiting on Iceberg?

Hello there, I really enjoy this mod and was looking to see if my current list had updated to 1.20 yet. I noticed this mod depends on Iceberg, which has not updated to 1.20, so I wanted to clarify that this is the reason this mod has not updated. Also, do you plan on updated to 1.20 in the future if Iceberg is updated, and if it isn't, are you able to find the functionality you need in another library that is updated to 1.20? Thanks!
I have just seen that you maintain Iceberg haha, I hope you plan on keeping it up!

Resourcepack Support?

Unless I am missing something, it seems that the Borders are Code-generated.
Would it be possible to add support for Custom Borders, as is possible with Legendary Tooltips?

Common items have borders even though the config says otherwise.

[client]

[client.options]
	# If the hotbar should display item borders.
	hotbar = true
	# If item borders should show for common items.
	show_for_common = false
	# If the borders should have square corners.
	square_corners = true
	# If the borders should fully envelop item slots (otherwise they will only show on the bottom portion of the slot).
	full_border = false
	# If the borders draw over items instead of under.
	over_items = false
	# If the borders should have a more prominent glow.
	extra_glow = false
	# If automatic borders (based on item rarity) should be enabled.
	auto_borders = true

This is my config. As you can see, "show_for_common" is set to false. However, it's still showing the borders (see in this image):
image

This may be because of the custom GUI, but I'm not sure. (FABRIC)

when legendary tooltip sync on even common items having borders

when legendary tooltip sync on even common items having borders even tho show for common option is turned off
2023-01-16_14 26 35
image

I know that legendary tooltip has border for even common items but when common items is off in itemborder then it should only get colors for rare items from legendary tooltips

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.