Create Custom Targets
Using AE's API for Target Registration
registerTarget Method
registerTarget Method/**
* Register a new target type.
*
* @param plugin Plugin that is registering the target type.
* @param type Target type to register.
* @return true if the target type was registered, false if not.
*/
public static boolean registerTarget(JavaPlugin plugin, TargetType type) { }The TargetType Class
TargetType Classpublic class AddTarget extends TargetType {
public AddTarget() {
super("Add");
}
@Override
public TargetResults getTargets(String effect, String target, ExecutionTask task) {
double x = Double.parseDouble(classifyTarget(target).getOrDefault(TargetArgument.X, "0.0"));
double y = Double.parseDouble(classifyTarget(target).getOrDefault(TargetArgument.Y, "0.0"));
double z = Double.parseDouble(classifyTarget(target).getOrDefault(TargetArgument.Z, "0.0"));
Location loc = task.getBuilder().getMain().getLocation().clone().add(x, y, z);
return TargetResults.builder().targetLocations(Collections.singletonList(loc)).build();
}
}Last updated