@Override
    @SuppressWarnings("unchecked")
    public void dispose() {
        super.dispose();
        if (cinematic != null) {
            Object o = cinematic.getEventData(MODEL_CHANNELS, model);
            if (o != null) {
                Collection<AnimChannel> values = ((HashMap<Integer, AnimChannel>) o).values();
                while (values.remove(channel));
                if (values.isEmpty()) {
                    cinematic.removeEventData(MODEL_CHANNELS, model);
                }
            }
            cinematic = null;
            channel = null;
        }
    }
creates an animation event

@param model the model on which the animation will be played
@param animationName the name of the animation to play
@param initialDuration the initial duration of the event
@param loopMode the loopMode
@see LoopMode
@param channelIndex the index of the channel default is 0. Events on the
    same channelIndex will use the same channel.
jme3-core/src/main/java/com/jme3/cinematic/events/AnimationEvent.java