#include <KSGSStandart.h>

var int breite = 480;
var int höhe = 312;
var TextFeld überschrift;
var TextFeld patchNotes;
var Knopf zurück;

func void start()
{
	initTextFeld( überschrift, 0, 0, breite, 20, "Patch Notes", 0x2001 );
	var Text txt = "";
txt += "Patch Notes: 0.0.0.36 erschienen am 10.3.2015 um 18:00 Uhr\n";
	txt += "Erneuerungen:\n";
	txt += " - Spiel und Karte Oberfläche animation\n";
	txt += " - Karten werden nurnoch online gespeichert\n";
	txt += " - Spiel- und Kartenbeschreibungen animiert\n";
	txt += "Behobene Fehler:\n";
	txt += " - Einige KSG - Script Fehler\n";
	txt += " - Unnötige Dateien werden jetzt gelöscht\n";
	txt += " - Memory Leak im Patcher\n";
	txt += "__________________________________________________________\n";
	txt += "Patch Notes: 0.0.0.35 erschienen am 24.12.2014 um 10:00 Uhr\n";
	txt += "Erneuerungen:\n";
	txt += " - Freundeseinladungen an offline Accounts\n";
	txt += " - Neues online Spiel: Asteroids\n";
	txt += " - Neue Karte für Asteroids: Test\n";
	txt += " - Erwerb von Ingamekupfer über Paypal\n";
	txt += "Behobene Fehler:\n";
	txt += " - Verbindung zum Server stabilisiert\n";
	txt += " - Suchoberfläche des Shops vereinfacht\n";
	txt += " - News nach Information umbenannt\n";
	txt += "__________________________________________________________\n";
	txt += "Update: 0.0.0.34 erschienen am 19.10.2014 um 14:00 Uhr\n";
	txt += "Erneuerungen:\n";
	txt += " - Minigame 'Asteroids'\n";
	txt += "Behobene Fehler:\n";
	txt += " - Verschiebbarkeit des Patchers\n";
	txt += " - Anzeigefeler in den Patcher Optionen\n";
	txt += " - Fokus des Client Fensters nach start\n";
	txt += " - Absturz des Clients beim beenden\n";
	txt += "__________________________________________________________\n";
	txt += "Update: 0.0.0.33 erschienen am 24.08.2014. um 11:00 Uhr\n";
	txt += "Erneuerungen:\n";
	txt += " - Sounds bei bestimmten Ereignissen\n";
	txt += " - Neue Schrift\n";
	txt += " - Die CPU Auslastung verringert\n";
	txt += "Behobene Fehler:\n";
	txt += " - Minigame Fangen: Sichtbarkeit des Spielers\n";
	txt += " - Spiel Linie: Anzeigefehler in der Bestenliste\n";
	txt += " - Stillstand nach Spiel durch Laden ersetzt\n";
	txt += " - Spielstabilität erhöht\n";
	txt += "___________________________________________________________\n";
	txt += "Update: 0.0.0.32 erschienen am 05.08.2014 um 00:00 Uhr.\n";
	txt += "Erneuerungen:\n";
	txt += " - Aktualisieren von Spielen im Client\n";
	txt += " - 'Minigames' Oberfläche\n";
	txt += " - Erhalten von Kupfer durch online Spiele\n";
	txt += " - 'Fertig' knopf in der Teamauswahl\n";
	txt += "Minigames:\n";
	txt += " - Blöcke\n";
	txt += " - Snake\n";
	txt += " - Fangen\n";
	txt += " - Tetris\n";
	initTextFeld( patchNotes, 10, 30, 460, 222, txt, 0x1201 );
	patchNotes.updateVScroll();
	patchNotes.setVScrollZuZeile( 0 );
	initKnopf( zurück, 190, 262, 100, 20, "Zurück", 0x1 );
	zurück.setMausEreignis( "zME" );
}

func void initTextFeld( TextFeld tf, int x, int y, int br, int hö, Text t, int style )
{
	tf.setPosition( x, y );
	tf.setGröße( br, hö );
	tf.setText( t );
	tf.setStyle( style );
	tf.setSchriftFarbe( 0xFFFFFFFF );
}

func void initKnopf( Knopf k, int x, int y, int br, int hö, Text t, int style )
{
	k.setPosition( x, y );
	k.setGröße( br, hö );
	k.setText( t );
	k.addStyle( style );
}

func bool maus( MausEreignis me )
{
	patchNotes.doMausEreignis( me );
	zurück.doMausEreignis( me );
	return me.verarbeitet;
}

func bool tick( double z )
{
	var bool ret = 0;
	ret |= patchNotes.tick( z );
	ret |= zurück.tick( z );
	return ret;
}

func void render( Bild rObj )
{
	überschrift.render( rObj );
	patchNotes.render( rObj );
	zurück.render( rObj );
}

func bool zME( MausEreignis me )
{
	if( me.id == 3 )
	{
		Rückruf( "Patcher/Start" );
	}
	return true;
}
