use of net.minecraft.advancements.critereon.NBTPredicate in project Railcraft by Railcraft.
the class MultiBlockFormedTrigger method deserializeInstance.
@Override
public Instance deserializeInstance(JsonObject json, JsonDeserializationContext context) {
Class<? extends TileEntity> type;
if (json.has("type")) {
String id = JsonUtils.getString(json, "type");
type = TileEntity.REGISTRY.getObject(new ResourceLocation(id));
} else {
type = null;
}
NBTPredicate nbt = JsonTools.whenPresent(json, "nbt", NBTPredicate::deserialize, NBTPredicate.ANY);
return new Instance(type, nbt);
}
use of net.minecraft.advancements.critereon.NBTPredicate in project Railcraft by Railcraft.
the class UseTrackKitTrigger method deserializeInstance.
@Override
public Instance deserializeInstance(JsonObject json, JsonDeserializationContext context) {
NBTPredicate nbt = JsonTools.whenPresent(json, "data", NBTPredicate::deserialize, NBTPredicate.ANY);
ItemPredicate used = JsonTools.whenPresent(json, "used", ItemPredicate::deserialize, ItemPredicate.ANY);
LocationPredicate location = JsonTools.whenPresent(json, "location", LocationPredicate::deserialize, LocationPredicate.ANY);
return new Instance(nbt, used, location);
}
use of net.minecraft.advancements.critereon.NBTPredicate in project Railcraft by Railcraft.
the class SpikeMaulUseTrigger method deserializeInstance.
@Override
public Instance deserializeInstance(JsonObject json, JsonDeserializationContext context) {
NBTPredicate nbt = JsonTools.whenPresent(json, "nbt", NBTPredicate::deserialize, NBTPredicate.ANY);
ItemPredicate tool = JsonTools.whenPresent(json, "tool", ItemPredicate::deserialize, ItemPredicate.ANY);
LocationPredicate locationPredicate = JsonTools.whenPresent(json, "location", LocationPredicate::deserialize, LocationPredicate.ANY);
return new Instance(nbt, tool, locationPredicate);
}
Aggregations