#!/usr/bin/perl

use strict;
use warnings;

use lib 'lib';
use Games::PangZero;

if($ENV{PANGZERO_TEST}) {
  my $videodriver                                = $ENV{SDL_VIDEODRIVER};
  $ENV{SDL_VIDEODRIVER}                          = 'dummy' if $ENV{'PANGZERO_TEST'};
  Games::PangZero::Initialize();
  $Games::PangZero::Game                         = Games::PangZero::PanicGame->new();
  @Games::PangZero::Highscore::UnsavedHighScores = ();
  $Games::PangZero::Game->Run();

  if ($videodriver) {
    $ENV{SDL_VIDEODRIVER} = $videodriver;
  } else {
    delete $ENV{SDL_VIDEODRIVER};
  }

  exit 0;
}

eval {
  Games::PangZero::Initialize();
  #Games::PangZero::DoDemo() while 1;
  #while (1) { Games::PangZero::DoRecordDemo(); $Games::PangZero::App->delay(2000); }
  while (1) {
    Games::PangZero::MainLoop();
  }
};
if ($@) {
  my $errorMessage = $@;
  Games::PangZero::ShowErrorMessage($errorMessage);
  die $errorMessage;
}
