I think I can rig one up, but how would I get a World variable for the IFactory.create() method during registry?
Or, is there a different way to create an IFactory during/for registry?
Edit: I don't know what I'm doing, but I tried to rig up a variation of the PlayerEnityReplace constructor that produces an IFactory:
public IFactory<T extends Entity> PlayerEntityReplace(World p_i241920_1_, BlockPos p_i241920_2_, float p_i241920_3_, GameProfile p_i241920_4_, EntityType<T> p_create_1_, World p_create_2_) {
super(p_i241920_1_, p_i241920_2_, p_i241920_3_, p_i241920_4_);
return EntityType.IFactory.<PlayerEntityReplace>create(p_create_1_, p_create_2_);
}
Believe it or not, it doesn't compile. It's expecting a comma where extends is (in <T extends Entity>), and I'm not entirely sure how to make a non-static reference to the create() method.
I am 100% certain I'm doing this wrong, but I don't know what I'm supposed to do.