/*********************************************************************
*	textLibrary
*	HEADER FILE
*	Autor:	Michal Jirouš
*	Datum: 21.7.2008
*	Soubor: textLibrary.h
*	Popis: Modul nacita dle configuracniho souboru jazykovy balicek, ktery
*			obsahuje texty vybraneho jazyka.
**********************************************************************/

#ifndef TEXTLIBRARY_H_
#define TEXTLIBRARY_H_

#include <string>
#include <map>

enum texts
	{
		TXT_END = 1,	//1
		TXT_TST,	//TODO	//2
		TXT_PLAY,	//3
		TXT_OPTION,//4
		TXT_HELP,//5
		TXT_ABOUT,//6
		TXT_RESUME,//7
		TXT_BACK,//8
		TXT_EXIT,//9
		TXT_REALLY_EXIT,//10	//
		TXT_PLAYER,//11
		TXT_MAP_CHOOSE,//12
		TXT_MAP_NAME,//13
		TXT_DIFFICULTY,//14
		TXT_TIME,//15
		TXT_CLOSE,//16
		TXT_EASY,//17
		TXT_NORMAL,//18
		TXT_HARD,//19
		TXT_BEST_PLAYER_AND_TIME,//20
		TXT_OPTION2,	//todo//21
		TXT_KEYBOARD,//22
		TXT_SAVE,//23
		TXT_STANDARD,//24
		TXT_COMMAND,//25
		TXT_KEY,//26
		TXT_ALTERNATIVE,//27
		TXT_AFTER_LOAD_STANDARD,//28
		TXT_YES,//29
		TXT_NO,//30
		TXT_PUSH_CHOSEN_KEY,//31
		TXT_FORWARD,//32
		TXT_BACKWARD,//33
		TXT_MOUSE_SENSITIVITY,//34
		TXT_MOUSE,//35
		TXT_HERE_REVERSE_MOUSE,//36
		TXT_REVERSE_HORIZONTALY,//37
		TXT_REVERSE_VERTICALY,//38
		TXT_VIDEO,//39
		TXT_FOR_RESOLUTION_CHANGE,//40
		TXT_RESOLUTION,//41
		TXT_RUN_IN_WINDOW,//42
		TXT_GENERAL,//43
		TXT_FOR_APLYING_LANGUAGE_CHANGES,//44
		TXT_IF_U_DONT_WANT_INTRO,//45
		TXT_SKIP_INTRO,//46
		TXT_LANGUAGE,//47
		TXT_DEVELOPER_MODE,//48
		TXT_PLAYER_NAME,//49
		TXT_CURRENT,//50
		TXT_ADD,//51
		TXT_LEFT,//52
		TXT_RIGHT,//53
		TXT_JUMP,//54
		TXT_DUCK,//55
		TXT_MAINMENU,//56
		TXT_CONSOLE,//57
		TXT_INTERACTION,//58
		TXT_ATTACK,//59
		TXT_OK,//60
		TXT_HEALTH,//61
		TXT_HUD_SETTINGS,//62
		TXT_HUD,//63
		TXT_HUD_DESCRIPTION,//64
		TXT_OXYGEN,//65
		TXT_CROSSHAIR,//66
		TXT_AMMO,//67
		TXT_ATTACK2,//68
		TXT_RELOAD,//69
		TXT_NEXTWEAPON,//70
		TXT_PREVWEAPON,//71
		TXT_ENERGY,
		TXT_RESTART,	//73
		TXT_BACKTIME,	//74
		TXT_TIMESTOP,	//75
		TXT_FORWARD_TELEPORT,	//76
		TXT_TARGETS,	//77
		TXT_GAMETIME, //78
		TXT_LEVELREPORT,	//79
		TXT_LEVEL_REPORT_TITLE,	//80
		TXT_LEVEL_REPORT_NEW_HIGHSCORE,	//81
		TXT_LEVEL_REPORT_YOUR_TIME,	//82
		TXT_LEVEL_REPORT_PREVIOUS_TIME,	//83
		TXT_LEVEL_REPORT_PRESS,	//84
		TXT_LEVEL_REPORT_RESTART,	//85
		TXT_LEVEL_REPORT_NEXT_LEVEL,	//86
		TXT_LEVEL_REPORT_NOT_BETTER,	//87
		TXT_YOU_ARE_DEAD,	//88
		TXT_FPS,	//89
		TXT_CURRENT_LEVEL,	//90
		TXT_YOU_PLAY	//91
	};



namespace textLibrary
{
	struct Language
	{
		std::string m_sLanguage;
		std::string m_sFilename;	
	};


	bool init( std::string configFile, std::string sLanguageKey );
	std::string getText( unsigned int key );
	void leaveQuotes( std::string &str );
	std::map<std::string, Language> &getLanguageMap();
	
	void setLevelTexts( std::string text_stream );
	std::string getLevelText( unsigned int key );
};


#endif /*TEXTLIBRARY_H_*/

