// ============================================================================
// File:               $File$
//
// Project:            
//
// Purpose:            
//
// Author:             Rammi
//
// Copyright Notice:   (c) 2008  Rammi (rammi@caff.de)
//
// Latest change:      $Date$
//
// History:	       $Log$
//=============================================================================
package de.caff.asteroid.rammi;

import de.caff.asteroid.*;

/**
 */
public interface Futurologist
        extends FrameListener
{
  /** Result from {@link #getFramesTillDestroyed(de.caff.asteroid.MovingGameObject, de.caff.asteroid.FrameInfo)} if anwser is unknown. */
  int HIT_FRAME_UNKNOWN = -1;

  /**
   *  Get the number of frames until a game object is destroyed if it doesn't alter its movements.
   *  @param obj       game object
   *  @param frameInfo frame info of game object
   *  @return number of frames till destruction or less than zero if frame is unknown
   */
  int getFramesTillDestroyed(MovingGameObject obj, FrameInfo frameInfo);

}
