More advancement clearing
This commit is contained in:
parent
2ea94aedc9
commit
fd413fadb8
|
@ -1,7 +1,10 @@
|
|||
package net.citizensnpcs.nms.v1_12_R1.util;
|
||||
|
||||
import java.io.File;
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.Set;
|
||||
|
||||
import net.citizensnpcs.util.NMS;
|
||||
import net.minecraft.server.v1_12_R1.Advancement;
|
||||
import net.minecraft.server.v1_12_R1.AdvancementDataPlayer;
|
||||
import net.minecraft.server.v1_12_R1.AdvancementProgress;
|
||||
|
@ -11,6 +14,7 @@ import net.minecraft.server.v1_12_R1.MinecraftServer;
|
|||
public class EmptyAdvancementDataPlayer extends AdvancementDataPlayer {
|
||||
public EmptyAdvancementDataPlayer(MinecraftServer minecraftserver, File file, EntityPlayer entityplayer) {
|
||||
super(minecraftserver, file, entityplayer);
|
||||
this.b();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -27,6 +31,17 @@ public class EmptyAdvancementDataPlayer extends AdvancementDataPlayer {
|
|||
|
||||
@Override
|
||||
public void b() {
|
||||
this.a();
|
||||
this.data.clear();
|
||||
try {
|
||||
((Set) G.get(this)).clear();
|
||||
((Set) H.get(this)).clear();
|
||||
((Set) I.get(this)).clear();
|
||||
} catch (IllegalArgumentException e) {
|
||||
e.printStackTrace();
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -51,4 +66,8 @@ public class EmptyAdvancementDataPlayer extends AdvancementDataPlayer {
|
|||
public boolean revokeCritera(Advancement advancement, String s) {
|
||||
return false;
|
||||
}
|
||||
|
||||
private static final Field G = NMS.getField(AdvancementDataPlayer.class, "g");
|
||||
private static final Field H = NMS.getField(AdvancementDataPlayer.class, "h");
|
||||
private static final Field I = NMS.getField(AdvancementDataPlayer.class, "i");
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue