From 8e787811dee757e92b195895e1496f955a713d34 Mon Sep 17 00:00:00 2001 From: ZorTik Date: Sun, 1 Feb 2026 19:47:01 +0100 Subject: [PATCH 1/3] fix: init model on newly added containers --- core/src/main/java/me/zort/containr/Container.java | 7 +++++++ core/src/main/java/me/zort/containr/GUI.java | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/me/zort/containr/Container.java b/core/src/main/java/me/zort/containr/Container.java index 3f40543..db4fbb6 100644 --- a/core/src/main/java/me/zort/containr/Container.java +++ b/core/src/main/java/me/zort/containr/Container.java @@ -40,6 +40,7 @@ public abstract class Container implements ContainerComponent { private final Region selection; private Container parent; private UpdateContext lastUpdateContext = null; + private boolean initialized = false; public Container(final int xSize, final int ySize) { this.containers = new ConcurrentHashMap<>(); @@ -76,6 +77,12 @@ public Container(final int xSize, final int ySize) { */ @ApiStatus.OverrideOnly public void refresh(Player player) {} + protected void doInit() { + if (!initialized) { + init(); + } + } + @ApiStatus.OverrideOnly public Map content(Class clazz) { Map content = new HashMap<>(); diff --git a/core/src/main/java/me/zort/containr/GUI.java b/core/src/main/java/me/zort/containr/GUI.java index f630b63..5d9acea 100644 --- a/core/src/main/java/me/zort/containr/GUI.java +++ b/core/src/main/java/me/zort/containr/GUI.java @@ -161,7 +161,7 @@ private void initializeModel(Player p) { if (initList.contains(inner)) { continue; } - inner.init(); + inner.doInit(); initList.add(inner); } if(initList.size() == initSizeBef) { @@ -204,7 +204,7 @@ public void update(@NotNull Player p, boolean clear, Class... Objects.requireNonNull(p, "Player cannot be null"); try { - updateContextInfo(p); + initializeModel(p); container.innerContainers().forEach(c -> c.refresh(p)); Map content = container.content(clazz.length > 0 ? Arrays.asList(clazz) : null); content.keySet().forEach(slot -> { From e0b5d416afad360c6b228b9290029aac9437a2bd Mon Sep 17 00:00:00 2001 From: ZorTik Date: Sun, 1 Feb 2026 19:57:45 +0100 Subject: [PATCH 2/3] fix: init model on newly added containers --- core/src/main/java/me/zort/containr/Container.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/core/src/main/java/me/zort/containr/Container.java b/core/src/main/java/me/zort/containr/Container.java index db4fbb6..f854f0a 100644 --- a/core/src/main/java/me/zort/containr/Container.java +++ b/core/src/main/java/me/zort/containr/Container.java @@ -80,6 +80,8 @@ public Container(final int xSize, final int ySize) { protected void doInit() { if (!initialized) { init(); + + initialized = true; } } From eaf96ddd79d1d384b3e15e5ff7983d4e43ff9eab Mon Sep 17 00:00:00 2001 From: ZorTik Date: Sun, 1 Feb 2026 21:25:00 +0100 Subject: [PATCH 3/3] feat: update nbt api --- build.gradle | 4 ++-- core/build.gradle | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index b83144b..286bcc0 100644 --- a/build.gradle +++ b/build.gradle @@ -30,7 +30,7 @@ allprojects { dependencies { implementation project(':core') implementation group: 'org.jetbrains', name: 'annotations', version: '20.1.0' - implementation 'de.tr7zw:item-nbt-api:2.13.1' + implementation 'de.tr7zw:item-nbt-api:2.15.5' compileOnly 'io.projectreactor:reactor-core:3.5.2' // Should be included in using projects. compileOnly 'commons-lang:commons-lang:2.6' compileOnly 'org.spigotmc:spigot-api:1.18.1-R0.1-SNAPSHOT' @@ -43,7 +43,7 @@ dependencies { testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1' testImplementation project(':core') testImplementation group: 'org.jetbrains', name: 'annotations', version: '20.1.0' - testImplementation 'de.tr7zw:item-nbt-api:2.13.1' + testImplementation 'de.tr7zw:item-nbt-api:2.15.5' testImplementation 'org.spigotmc:spigot-api:1.18.1-R0.1-SNAPSHOT' testCompileOnly 'io.projectreactor:reactor-core:3.5.2' // Should be included in using projects. testCompileOnly 'commons-lang:commons-lang:2.6' diff --git a/core/build.gradle b/core/build.gradle index e92db1e..7aa1ca5 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -23,7 +23,7 @@ repositories { dependencies { implementation group: 'org.jetbrains', name: 'annotations', version: '20.1.0' - implementation 'de.tr7zw:item-nbt-api:2.14.1' + implementation 'de.tr7zw:item-nbt-api:2.15.5' compileOnly 'io.projectreactor:reactor-core:3.5.2' // Should be included in using projects. compileOnly 'commons-lang:commons-lang:2.6' compileOnly 'org.spigotmc:spigot-api:1.18.1-R0.1-SNAPSHOT'