Firework Rocket

Firework rockets are items which, when activated, create vibrant firework displays. The color, fade, shape and effect of the explosion are determined by what ingredients are used to create the firework star - one of the ingredients used to create a rocket. However, a firework rocket can be crafted without a firework star. When this happens, it will only have a rocket trail, with no colorful explosion. The height of a rocket can be altered by adding up to 3 gunpowder to the rocket recipe. This increases the flight duration by 1 per gunpowder. Multiple firework stars can also be used, in which case each one will go off simultaneously when the rocket detonates. Firework rockets can be activated by right-clicking any block with them, or they can be fired out of dispensers. The fireworks are customizable in colors, shapes, and height. Their flight path is random and sometimes are offset up to 5 blocks to the side, they also tend to spiral up. Fireworks are also affected by gravity. Their motion can be changed with TNT.

There is a delay between detonation and the player hearing the sound, emulating real fireworks, but this sound travels much more slowly than in the real world. Jeb mentioned on Twitter that fireworks may have effects on mobs, such as scaring wolves.

Duration
When the item is hovered over in the inventory it displays the flight duration (e.g. "Flight Duration: 1").

Rough distance (in blocks) that the rocket travels depending on the flight duration.
 * 1 gunpowder: 12-20 blocks
 * 2 gunpowder: 23-38 blocks
 * 3 gunpowder: 40-57 blocks with a few exploding at 35 and 36 blocks.

Results obtained by 576 fireworks per type being set off. Using small balled and red firework stars.

Shape effects
A firework can only have one shape effect for each firework star used in the recipe. There can be many different combinations with each firework from different stars used in crafting.

Additional effects
In addition to the shape effects, you may add either or both of these additional affects.(Would like to know where extra ingredients should be placed.)