37 lines
1.3 KiB
Java
37 lines
1.3 KiB
Java
package com.thebrokenrail.sorcerycraft.advancement;
|
|
|
|
import com.google.gson.JsonObject;
|
|
import com.thebrokenrail.sorcerycraft.SorceryCraft;
|
|
import net.minecraft.advancement.criterion.AbstractCriterion;
|
|
import net.minecraft.advancement.criterion.AbstractCriterionConditions;
|
|
import net.minecraft.predicate.entity.AdvancementEntityPredicateDeserializer;
|
|
import net.minecraft.predicate.entity.EntityPredicate;
|
|
import net.minecraft.server.network.ServerPlayerEntity;
|
|
import net.minecraft.util.Identifier;
|
|
|
|
public class CreateSpellCriterion extends AbstractCriterion<CreateSpellCriterion.Conditions> {
|
|
private static final Identifier ID = new Identifier(SorceryCraft.NAMESPACE, "create_spell");
|
|
|
|
public CreateSpellCriterion() {
|
|
}
|
|
|
|
@Override
|
|
protected Conditions conditionsFromJson(JsonObject obj, EntityPredicate.Extended playerPredicate, AdvancementEntityPredicateDeserializer predicateDeserializer) {
|
|
return new CreateSpellCriterion.Conditions(playerPredicate);
|
|
}
|
|
|
|
@Override
|
|
public Identifier getId() {
|
|
return ID;
|
|
}
|
|
|
|
public void trigger(ServerPlayerEntity player) {
|
|
test(player, (conditions) -> true);
|
|
}
|
|
|
|
public static class Conditions extends AbstractCriterionConditions {
|
|
public Conditions(EntityPredicate.Extended player) {
|
|
super(ID, player);
|
|
}
|
|
}
|
|
} |