   goto: (actionName, @paused=true) ->
     @removeAllChildren()
     @currentAnimation = actionName
-    @baseMovieClip = @framerate = @animLength = null
+    @baseMovieClip.inUse = false if @baseMovieClip
+    if @childMovieClips
+      mc.inUse = false for mc in @childMovieClips
+    @childMovieClips = @baseMovieClip = @framerate = @animLength = null
     @actionNotSupported = false
 
     action = @thangType.getActions()[actionName]

    map = {}
    for localAnimation in localAnimations
      animation = @buildMovieClip(localAnimation.gn, localAnimation.a...)
      animation.setTransform(localAnimation.t...)
      map[localAnimation.bn] = animation
      @childMovieClips.push(animation)

      @framerate = (action.framerate ? 20) * (action.speed ? 1)
      @childMovieClips = []
      @baseMovieClip = @buildMovieClip(action.animation)
      @baseMovieClip.inUse = true
      @frames = action.frames
      @frames = (parseInt(f) for f in @frames.split(',')) if @frames
      @animLength = if @frames then @frames.length else @baseMovieClip.timeline.duration
