Compatibility
Minecraft: Java Edition
Platforms
Supported environments
90% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Creators
Details
Cobblemon Firework Capsules
Send out your Pokemon with a bang using fireworks and custom stickers!
Basics
Ball Capsule Recipe
Adding Fireworks
Ball Capsules can be combined with any number of Firework Stars.
Capsule Station Recipe
You can equip your ball capsule to your Pokemon using a Capsule Station.
Special thanks to dogtorbloo for the custom block model!
Stickers
Sticker Recipe
Stickers can be crafted using Paper + Gunpowder + an ingredient.
As of v1.0.0 there are 18 stickers, one for each type, which can be crafted using the type gems.
Modifying Stickers
Stickers can be modified with dyes, a Diamond or Glowstone Dust to modify its properties the same way as Firework Stars (note that most stickers have been designed without these properties in mind).
Combining Stickers
Stickers can be combined with a Ball Capsule along with other stickers and Firework Stars to create all kinds of effects.
Addon Support
Firework Capsules uses a custom particle engine which expands on the existing Minecraft fireworks system, allowing for custom particle integration.
Refer to below for the steps required to add a custom sticker.
StickerExplosion Class
The StickerExplosion class requires five fields:
ResourceLocation id;
IntList colors;
IntList fadeColors;
boolean hasTrail;
boolean hasTwinkle;
The id and colors are unmodifiable and must be set when registering. The other three parameters can optionally be set during initialization and/or by players during gameplay.
Sticker Item Class
The sticker item must be registered with a corresponding StickerExplosion.
new StickerItem(new StickerExplosion(...));
Custom Particle Function
The custom particle function is a consumer that provides parameters which you can use to set up your custom particles.
The scale parameter can be used scale your radius and particle sizes, and is dependent on the size of the Pokemon.
The scaleFactor parameter is determined by the scale parameter and can be used to adjust the number of particles generated based on the Pokemon size.
@FunctionalInterface
public interface CustomParticleFunction {
void accept(ClientLevel clientLevel, double x, double y, double z, float rot, ParticleEngine particleEngine, StickerExplosion explosion, float scale, double scaleFactor);
}
Sticker Registration Event
Each StickerExplosion must also be registered on the Sticker Registration Event, which is run on the client side.
Fabric
public class ExampleClient implements ClientModInitializer {
@Override
public void onInitializeClient() {
StickerRegistryEvent.EVENT.register((event) -> {
event.register(StickerExplosion, CustomParticleFunction);
);
}
}
NeoForge
This event is run on the MOD bus.
@EventBusSubscriber(value = Dist.CLIENT, modid = Example.MOD_ID, bus = EventBusSubscriber.Bus.MOD)
public static class ClientEvents {
@SubscribeEvent
public static void registerStickers(StickerRegistryEvent event) {
event.register(StickerExplosion, CustomParticleFunction);
}
}