////////////////////////////////////////////////////////////////////////////////
//
// Copyright 2016 RWS Inc, All Rights Reserved
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of version 2 of the GNU General Public License as published by
// the Free Software Foundation
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License along
// with this program; if not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
//
// localize.h
// Project: Postal
//
//	History:
//		02/03/97	JMI	Added g_pszBadNoSakDirPath[].
//
//		04/11/97	JMI	Added g_pszSaveDemoTitle and g_pszGeneralWriteError.
//
//		04/16/97 MJR	Added a few more messages.
//
//							And then added a few more video messages, too.
//
//		04/21/97 MJR	Created generic version of "bad path" message.
//
//		05/14/97	JMI	Added g_pszPickedUpMessage_ld_s for CDude.
//
//		06/03/97	JMI	Changed g_pszAudioModeError to g_pszAudioModeGeneralError
//							and added g_pszAudioModeInUseError, 
//							g_pszAudioModeNoDeviceError, 
//							g_pszAudioModeNotSupportedError.
//
//		06/04/97	JMI	Added g_pszNotOnCDROM.
//
//		06/06/97	JMI	Changed message for g_pszPickedUpMessage_ld_s and its name
//							to g_pszPickedUpMessage_s.
//
//		06/14/97 MJR	Added/enhanced general file error messages.
//
//		07/13/97	JMI	Changed g_pszAudioModeNotSupportedError to 
//							g_pszAudioModeNotSupportedError_s and changed to ask the
//							user if they want to try the vanilla mode.
//							Also, changed the other audio errors to include the
//							sprintf format parameters in their names.
//							Also, added g_pszAudioVanillaModeNotSupportedError_s for
//							the case when the hardware does not support the vanilla 
//							mode.
//
//		07/21/97	JMI	Added g_pszNoWeaponButHaveAmmo_s_s and g_pszNoWeapon_s.
//
//		07/28/97	JMI	Added g_pszDispenserNoDispenseeTypeChosen.
//
//		08/05/97	JMI	Added g_pszDontHaveExecuteWeapon_s and 
//							g_pszDontHaveSuicideWeapon_s.
//
//		08/12/97	JMI	Added g_pszGenericBrowseFor_s_Title and 
//							g_pszGenericMustBeRelativePath_s.
//
//		08/17/97	JMI	Got rid of m_szMessages and all message related functions
//							and variables from CDude since we are now using the toolbar 
//							for dude status feedback to the user.  This includes:  
//							MsgTypeInfo, m_lNextStatusUpdateTime, m_lMsgUpdateDoneTime, 
//							m_print, m_bClearedStatus, m_szMessages[], m_sDeadMsgNum, 
//							ms_amtfMessages[], ms_u8FontForeIndex, ms_u8FontBackIndex,
//							ms_u8FontShadowIndex, DrawStatus(), StatusChange(), 
//							MessageChange(), Message(), UpdateFontColors(), 
//							CPowerUp::ms_apszPowerUpTypeNames[], 
//							CPowerUp::GetDescription(), and some strings and a string
//							array in localize.*.
//
//		08/20/97	JMI	Added g_pszDontDropYourselfMORON.
//
//		08/21/97	JMI	Added g_pszDoofusCannotFindNavNet_EditMode_hu_hu and
//							g_pszDoofusCannotFindNavNet_PlayMode_hu_hu.
//
//		08/25/97	JMI	Added g_pszCannotOpenSoundFiles_s_s.
//
//		09/11/97	JMI	Added g_pszPlayOneRealmOnlyMessage.
//
//		09/18/97	JMI	Added localization vars for menus.
//
//		09/18/97	JMI	Added localization vars for SampleMaster categories.
//
//		09/29/97	JMI	Added g_pszNoSoundFiles.
//
//		10/07/97 BRH	Added score localizations.
//
//		10/09/97	JMI	Added g_pszVideoChangeDepthErrorUnderGDI_s.
//
//		10/13/97	JMI	Added g_pszControlsMenu_UseJoystick to localizable texts.
//
//		12/04/97 BRH	Added g_pszStartSinglePlayerMenu_AddOn.
//
//		03/05/98 BRH	Added g_pszWrongCD message that tells the player that they
//							must have the original Postal CD in the drive in order to
//							play the Postal Add on Pack.
//
//		02/04/00 MJR	Added g_pszPromptForOriginalCD.
//
//
////////////////////////////////////////////////////////////////////////////////

#include "CompileOptions.h"

#ifndef LOCALIZE_H
#define LOCALIZE_H
#define NUM_LANGUAGES   6

// I went with variables instead of macros for one primary reason.  At some
// point, most likely near the end of the project, when time is in short supply,
// someone will need to go through and clean up all these strings.  If these
// were macros, then nearly every file in the project would need to recompile
// each time this file was changed.  With strings, you generally don't modify
// this file, but instead modify the .CPP file, so only that file needs to be
// recompiled.  The disadvantage is that whenever you need to add, delete, or
// rename strings, you have to do it both here and in the .CPP file.

extern char g_pszAppName[];
extern char g_pszCriticalErrorTitle[];
extern char g_pszPrefFileName[];
	
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////// Menus ///////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

extern char	*g_pszMainMenu_Title[NUM_LANGUAGES];
extern char *g_pszMainMenu_Start[NUM_LANGUAGES];
extern char *g_pszMainMenu_Options[NUM_LANGUAGES];
extern char *g_pszMainMenu_Credits[NUM_LANGUAGES];
extern char *g_pszVerifyQuitMenu_Title[NUM_LANGUAGES];
extern char *g_pszVerifyQuitMenu_Yes[NUM_LANGUAGES];
extern char *g_pszVerifyQuitMenu_No[NUM_LANGUAGES];
extern char *g_pszGameMenu_Title[NUM_LANGUAGES];
extern char *g_pszGameMenu_Continue[NUM_LANGUAGES];
extern char *g_pszGameMenu_Options[NUM_LANGUAGES];
extern char *g_pszGameMenu_Quit[NUM_LANGUAGES];
extern char *g_pszGameMenu_Suicide[NUM_LANGUAGES];
extern char *g_pszOptionsMenu_Audio[NUM_LANGUAGES];
extern char *g_pszOptionsMenu_Controls[NUM_LANGUAGES];
extern char *g_pszDifficultyMenu_Title[NUM_LANGUAGES];
extern char *g_pszAudioMenu_Title[NUM_LANGUAGES];
extern char *g_pszAudioMenu_Mixer[NUM_LANGUAGES];
extern char *g_pszAudioMenu_Language[NUM_LANGUAGES];
extern char *g_pszAudioMenu_PainFrequency[NUM_LANGUAGES];
extern char *g_pszAudioMenu_English[NUM_LANGUAGES];
extern char *g_pszAudioMenu_Japanese[NUM_LANGUAGES];
extern char *g_pszVideoMenu_Title[NUM_LANGUAGES];
extern char *g_pszControlsMenu_Title[NUM_LANGUAGES];
extern char *g_pszRotationSetupMenu_RestoreDefaults[NUM_LANGUAGES];
extern char *g_pszVolumesMenu_Title[NUM_LANGUAGES];
extern char *g_pszStartGameMenu_Title[NUM_LANGUAGES];
extern char *g_pszStartGameMenu_GameStart[NUM_LANGUAGES];
extern char *g_pszGameOptionsMenu_Easy[NUM_LANGUAGES];
extern char *g_pszGameOptionsMenu_Medium[NUM_LANGUAGES];
extern char *g_pszGameOptionsMenu_Hard[NUM_LANGUAGES];
extern char *g_pszGameOptionsMenu_Nightmare[NUM_LANGUAGES];
extern char *g_pszDifficulty_Easy[NUM_LANGUAGES];
extern char *g_pszDifficulty_Medium[NUM_LANGUAGES];
extern char *g_pszDifficulty_Hard[NUM_LANGUAGES];
extern char *g_pszDifficulty_Nightmare[NUM_LANGUAGES];
extern char *g_pszStartSinglePlayerMenu_NewCampaign[NUM_LANGUAGES];
extern char *g_pszStartSinglePlayerMenu_New[NUM_LANGUAGES];
extern char *g_pszStartSinglePlayerMenu_AddOn[NUM_LANGUAGES];
extern char *g_pszStartSinglePlayerMenu_AddOn2[NUM_LANGUAGES];
extern char *g_pszStartSinglePlayerMenu_AllLevels[NUM_LANGUAGES];
extern char *g_pszStartSinglePlayerMenu_LoadLevel[NUM_LANGUAGES];
extern char *g_pszStartSinglePlayerMenu_LoadGame[NUM_LANGUAGES];
extern char *g_pszStartSinglePlayerMenu_Challenge[NUM_LANGUAGES];
extern char *g_pszStartSinglePlayerMenu_Coop[NUM_LANGUAGES];
extern char *g_pszStartSinglePlayerMenu_ChangeSave[NUM_LANGUAGES];
extern char *g_pszStartChallengeMenu_Gauntlet[NUM_LANGUAGES];
extern char *g_pszStartChallengeMenu_Timed[NUM_LANGUAGES];
extern char *g_pszStartChallengeMenu_Goal[NUM_LANGUAGES];
extern char *g_pszStartChallengeMenu_Flag[NUM_LANGUAGES];
extern char *g_pszStartChallengeMenu_CheckPoint[NUM_LANGUAGES];
extern char *g_pszMultiplayerSetupMenu_Color[NUM_LANGUAGES];

extern char *g_apszScoreDisplayText[16][NUM_LANGUAGES];
extern char *g_apszScoreGoalText[16][NUM_LANGUAGES];
extern char *g_apszScoreDisplayTextMin[16][NUM_LANGUAGES];
extern char *g_apszScoreGoalTextMin[16][NUM_LANGUAGES];

extern char *g_apszScoreUnits[16][NUM_LANGUAGES];
extern char *g_apszScoreExplanations[17][NUM_LANGUAGES];
extern char *g_pszInputHold[NUM_LANGUAGES];
extern char *g_pszInputDuck[NUM_LANGUAGES];
extern char *g_pszInputFire[NUM_LANGUAGES];
extern char *g_pszInputExecute[NUM_LANGUAGES];
extern char *g_pszInputRevive[NUM_LANGUAGES];
extern char *g_pszInputCoop[NUM_LANGUAGES];
extern char *g_pszInputLockOn[NUM_LANGUAGES];
extern char *g_pszInputSuicide[NUM_LANGUAGES];
extern char *g_pszInputMove[NUM_LANGUAGES];
extern char *g_pszInputMoveUp[NUM_LANGUAGES];
extern char *g_pszInputMoveRight[NUM_LANGUAGES];
extern char *g_pszInputMoveDown[NUM_LANGUAGES];
extern char *g_pszInputMoveLeft[NUM_LANGUAGES];
extern char *g_pszInputAim[NUM_LANGUAGES];
extern char *g_pszInputAimOnSpot[NUM_LANGUAGES];
extern char *g_pszInputAimUp[NUM_LANGUAGES];
extern char *g_pszInputAimRight[NUM_LANGUAGES];
extern char *g_pszInputAimDown[NUM_LANGUAGES];
extern char *g_pszInputAimLeft[NUM_LANGUAGES];
extern char *g_pszInputMenuConfirm[NUM_LANGUAGES];
extern char *g_pszInputMenuBack[NUM_LANGUAGES];
extern char *g_pszInputPause[NUM_LANGUAGES];		
extern char *g_pszInputPrev[NUM_LANGUAGES];
extern char *g_pszInputNext[NUM_LANGUAGES];
extern char *g_pszInputWeapon[NUM_LANGUAGES];
extern char *g_pszInputGrenade[NUM_LANGUAGES];
extern char *g_pszInputMolotov[NUM_LANGUAGES];
extern char *g_pszInputAssisted[NUM_LANGUAGES];
extern char *g_pszInputAssistedAlt[NUM_LANGUAGES];
extern char *g_pszInputWingman[NUM_LANGUAGES];
extern char *g_pszInputFineAim[NUM_LANGUAGES];
extern char *g_pszInputTwinStick[NUM_LANGUAGES];								
extern char *g_pszInputAssistedTips[NUM_LANGUAGES];
extern char *g_pszInputAssistedAltTips[NUM_LANGUAGES];
extern char *g_pszInputWingmanTips[NUM_LANGUAGES];
extern char *g_pszInputFineAimTips[NUM_LANGUAGES];
extern char *g_pszInputTwinStickTips[NUM_LANGUAGES];
extern char *g_pszLanguage[NUM_LANGUAGES];
extern char *g_pszMenuLanguages[NUM_LANGUAGES];
extern char *g_pszLanguages[NUM_LANGUAGES];
extern char *g_pszInterface[NUM_LANGUAGES];
extern char *g_pszInterfaces[2][NUM_LANGUAGES];
extern char *g_pszPlayer[NUM_LANGUAGES];
extern char *g_pszController[NUM_LANGUAGES];
extern char *g_pszCoopCampaign[NUM_LANGUAGES];
extern char *g_pszPort[NUM_LANGUAGES];
extern char *g_pszContinueNoSave[NUM_LANGUAGES];
extern char *g_pszNewSave[NUM_LANGUAGES];
extern char *g_pszChooseMemoryCard[NUM_LANGUAGES];
extern char *g_pszSaving[NUM_LANGUAGES];
extern char *g_pszPressStart[NUM_LANGUAGES];
extern char *g_pszPressStartUc[NUM_LANGUAGES];
extern char *g_pszNoMemoryCard[NUM_LANGUAGES];
extern char *g_pszGameNoSave[NUM_LANGUAGES][2];
extern char *g_pszRecheckMemoryCard[NUM_LANGUAGES];
extern char *g_pszGameNoSpace[NUM_LANGUAGES][3];
extern char *g_pszChooseAnotherVmu[NUM_LANGUAGES];
extern char *g_pszGameNoSaveFound[NUM_LANGUAGES];
extern char *g_pszGameNewSave[NUM_LANGUAGES];
extern char *g_pszVmuWriteError[NUM_LANGUAGES];
extern char *g_pszVmuRemoved[NUM_LANGUAGES];
extern char *g_pszDeviceRemoved[NUM_LANGUAGES];
extern char *g_pszOK[NUM_LANGUAGES];
extern char *g_pszReconnectController[NUM_LANGUAGES];
extern char *g_pszMemoryCardFault[NUM_LANGUAGES];
extern char *g_pszReboot[NUM_LANGUAGES];
extern char *g_pszReconnectVmu[NUM_LANGUAGES];
extern char *g_pszLoadSave[NUM_LANGUAGES];
extern char *g_pszExitL[NUM_LANGUAGES];
extern char *g_pszExitR[NUM_LANGUAGES];
extern char *g_psz_Off[NUM_LANGUAGES];

////////////////////////////////////////////////////////////////////////////////
///////////////////////////// Sample Master ////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

extern char* g_apszSoundCategories[10][NUM_LANGUAGES];

#endif // LOCALIZE_H
////////////////////////////////////////////////////////////////////////////////
// EOF
////////////////////////////////////////////////////////////////////////////////
