public void play() {
    this.isLooping = false;
    this.state = TimelineScenarioState.PLAYING;

    TimelineEngine.getInstance()
        .runTimelineScenario(
            this,
            new Runnable() {
              @Override
              public void run() {
                TimelineEngine.getInstance().playScenario(TimelineScenario.this);
              }
            });
  }
 public void playLoop() {
   for (TimelineScenarioActor actor : this.waitingActors) {
     if (!actor.supportsReplay())
       throw new UnsupportedOperationException(
           "Can't loop scenario with actor(s) that don't support replay");
   }
   this.isLooping = true;
   this.state = TimelineScenarioState.PLAYING;
   TimelineEngine.getInstance()
       .runTimelineScenario(
           this,
           new Runnable() {
             @Override
             public void run() {
               TimelineEngine.getInstance().playScenario(TimelineScenario.this);
             }
           });
 }