Skip to content

Commit b96a8f1

Browse files
author
evyatar
committed
Fixed block persistent data not being updated
1 parent e09e2f7 commit b96a8f1

2 files changed

Lines changed: 26 additions & 31 deletions

File tree

PersistentDataAPI.iml

Lines changed: 11 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,12 @@
1-
<?xml version="1.0" encoding="UTF-8"?>
2-
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
3-
<component name="FacetManager">
4-
<facet type="minecraft" name="Minecraft">
5-
<configuration>
6-
<autoDetectTypes>
7-
<platformType>SPIGOT</platformType>
8-
</autoDetectTypes>
9-
</configuration>
10-
</facet>
11-
</component>
12-
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_9">
13-
<output url="file://$MODULE_DIR$/target/classes" />
14-
<output-test url="file://$MODULE_DIR$/target/test-classes" />
15-
<content url="file://$MODULE_DIR$">
16-
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
17-
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
18-
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
19-
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
20-
<excludeFolder url="file://$MODULE_DIR$/target" />
21-
</content>
22-
<orderEntry type="inheritedJdk" />
23-
<orderEntry type="sourceFolder" forTests="false" />
24-
<orderEntry type="library" scope="PROVIDED" name="Maven: org.spigotmc:spigot-api:1.16.5-R0.1-SNAPSHOT" level="project" />
25-
<orderEntry type="library" scope="PROVIDED" name="Maven: commons-lang:commons-lang:2.6" level="project" />
26-
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:21.0" level="project" />
27-
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.code.gson:gson:2.8.0" level="project" />
28-
<orderEntry type="library" scope="PROVIDED" name="Maven: net.md-5:bungeecord-chat:1.16-R0.4" level="project" />
29-
<orderEntry type="library" scope="PROVIDED" name="Maven: org.yaml:snakeyaml:1.27" level="project" />
30-
</component>
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<module version="4">
3+
<component name="FacetManager">
4+
<facet type="minecraft" name="Minecraft">
5+
<configuration>
6+
<autoDetectTypes>
7+
<platformType>SPIGOT</platformType>
8+
</autoDetectTypes>
9+
</configuration>
10+
</facet>
11+
</component>
3112
</module>

src/main/java/me/thehandsomeyoni/persistentdataapi/manager/DataRegistry.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ public DataRegistry(Block block) throws UnacceptableBlockException, NullPointerE
8080
}
8181

8282
this.blockState = (TileState) block.getState();
83-
this.dataContainer = state.getPersistentDataContainer();
83+
this.dataContainer = this.blockState.getPersistentDataContainer();
8484

8585
this.manager = new DataContainerManager(dataContainer);
8686
}
@@ -108,6 +108,7 @@ public void registerData(String dataName, Serializable dataValue) throws DataExc
108108
}
109109

110110
if (block != null) {
111+
this.blockState.update();
111112
BlockPersistentDataWriteEvent event = new BlockPersistentDataWriteEvent(block, dataName, dataValue);
112113
getJavaPlugin().getServer().getPluginManager().callEvent(event);
113114
}
@@ -135,6 +136,7 @@ public void registerData(AbstractPersistentData data) throws DataException {
135136
}
136137

137138
if (block != null) {
139+
this.blockState.update();
138140
BlockPersistentDataWriteEvent event = new BlockPersistentDataWriteEvent(block, data);
139141
getJavaPlugin().getServer().getPluginManager().callEvent(event);
140142
}
@@ -161,6 +163,7 @@ public void unregisterData(String dataName) throws DataException {
161163
}
162164

163165
if(block != null){
166+
this.blockState.update();
164167
BlockPersistentDataDeleteEvent event = new BlockPersistentDataDeleteEvent(block, dataName);
165168
getJavaPlugin().getServer().getPluginManager().callEvent(event);
166169
}
@@ -188,6 +191,7 @@ public void unregisterData(AbstractPersistentData data) throws DataException {
188191
}
189192

190193
if(block != null){
194+
this.blockState.update();
191195
BlockPersistentDataDeleteEvent event = new BlockPersistentDataDeleteEvent(block, data);
192196
getJavaPlugin().getServer().getPluginManager().callEvent(event);
193197
}
@@ -211,6 +215,11 @@ public void setData(AbstractPersistentData data) {
211215
ItemPersistentDataWriteEvent event = new ItemPersistentDataWriteEvent(item, data);
212216
getJavaPlugin().getServer().getPluginManager().callEvent(event);
213217
}
218+
219+
if (block != null) {
220+
this.blockState.update();
221+
BlockPersistentDataWriteEvent event = new BlockPersistentDataWriteEvent(block, data);
222+
}
214223
}
215224

216225
/**
@@ -231,6 +240,11 @@ public void setData(String dataName, Serializable dataValue) {
231240
ItemPersistentDataWriteEvent event = new ItemPersistentDataWriteEvent(item, new PersistentData(dataName, dataValue));
232241
getJavaPlugin().getServer().getPluginManager().callEvent(event);
233242
}
243+
244+
if (block != null) {
245+
this.blockState.update();
246+
BlockPersistentDataWriteEvent event = new BlockPersistentDataWriteEvent(block, new PersistentData(dataName, dataValue));
247+
}
234248
}
235249

236250
/**

0 commit comments

Comments
 (0)