Yeah it's possible and really easy. Look at your BaseGen Class (The one that implements the WorldGenerator Interface)
public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider c, IChunkProvider d)
{
switch (world.provider.worldType)
{
case -1: genNether(world, random, chunkX*16, chunkZ*16);
case 0: genSurface(world, random, chunkX*16, chunkZ*16);
case 1: genEnd(world, random, chunkX*16, chunkZ*16); //Add this line
}
}
Now create a new method:
private void genEnd(World world, Random random, int chunkXpos, int chunkZpos)
{
for (int gen = 0; gen < 4; gen++)
{
int b1 = chunkXpos + random.nextInt(16);
int b2 = random.nextInt(25);
int b3 = chunkZpos + random.nextInt(16);
(new EndGenBlocks(EndMod.EndCrystal.blockID, 4)).generate(world, random, b1, b2, b3);
}
}