
// Tour3D.java
// Andrew Davison, April 2005, ad@fivedots.coe.psu.ac.th

/* Obvyklí čachovnicový svět, nyní ovšem s následujícím:
       * scenérie a překážky
           - scenérie se načítá pomocí objektů typu PropManager
           - sprity nemohou chodit skrze překážky 
       * cestující 3D-sprite ovládaný z klávesnice
       * autonomní lovící ruka vetřelce
       * výhled, který se pohybuje se spritem (kamera z pohledu třetí osoby)
       * otexturované pozadí
       * celoobrazovkový režim

   Kamera spritu turisty se pohybuje nad rovinou XZ, nemůže však
   oricházet skrze překážky ani vyjít mimo šachovnici.

   Scenérie a překážky se specifikují pomocí textového konfiguračního
   souboru, jehož jméno je zadáno na příkazové řádce, a který se načítá z
   podadresáře /models.
*/

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;


public class Tour3D extends JFrame
{
  public Tour3D(String args[]) 
  {
    super("3D Tour");
    String tourFnm = null;

    if (args.length == 1)
      tourFnm = args[0];
    else {
      System.out.println( "Použití: java -cp %CLASSPATH%;ncsa\\portfolio.jar Tour3D <TourFile>");
      System.exit(0);
    }

    Container c = getContentPane();
    c.setLayout( new BorderLayout() );
    WrapTour3D w3d = new WrapTour3D(tourFnm, this);
    c.add(w3d, BorderLayout.CENTER);

    setUndecorated(true);   // žádné menu ani okraje
    setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

    pack();
    setResizable(false);    // rozměry okna jsou pevně dány
    setVisible(true);
  } // konec metody: Tour3D()


// -----------------------------------------

  public static void main(String[] args)
  { new Tour3D(args); }

} // konec třídy: Tour3D



