44import guideme .compiler .ParsedGuidePage ;
55import net .minecraft .core .component .DataComponentPatch ;
66import net .minecraft .core .registries .BuiltInRegistries ;
7- import net .minecraft .world .item .ItemStack ;
7+ import net .minecraft .world .item .ItemStackTemplate ;
8+ import org .jspecify .annotations .Nullable ;
89import org .slf4j .Logger ;
910import org .slf4j .LoggerFactory ;
1011
@@ -14,10 +15,10 @@ public final class NavigationUtil {
1415 private NavigationUtil () {
1516 }
1617
17- public static ItemStack createNavigationIcon (ParsedGuidePage page ) {
18+ public static @ Nullable ItemStackTemplate createNavigationIcon (ParsedGuidePage page ) {
1819 var navigation = page .getFrontmatter ().navigationEntry ();
1920
20- var icon = ItemStack . EMPTY ;
21+ ItemStackTemplate icon = null ;
2122 if (navigation != null && navigation .iconItemId () != null ) {
2223 var iconItem = BuiltInRegistries .ITEM .get (navigation .iconItemId ()).orElse (null );
2324 if (iconItem != null ) {
@@ -26,13 +27,13 @@ public static ItemStack createNavigationIcon(ParsedGuidePage page) {
2627 .resultOrPartial (
2728 err -> LOG .error ("Failed to deserialize component patch {} for icon {}: {}" ,
2829 navigation .iconComponents (), navigation .iconItemId (), err ));
29- icon = new ItemStack (iconItem , 1 , patch .orElse (DataComponentPatch .EMPTY ));
30+ icon = new ItemStackTemplate (iconItem , 1 , patch .orElse (DataComponentPatch .EMPTY ));
3031 } else {
31- icon = new ItemStack (iconItem );
32+ icon = new ItemStackTemplate (iconItem );
3233 }
3334 }
3435
35- if (icon . isEmpty () ) {
36+ if (icon == null ) {
3637 LOG .error ("Couldn't find icon {} for icon of page {}" , navigation .iconItemId (), page );
3738 }
3839 }
0 commit comments