Bugfix: Lua shutdown (possible NULL reference)

Russian, French and Polish texts update
Fonts update (for future Italian version)

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@2463 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Wanne
2008-12-29 14:08:35 +00:00
parent 0e7ecd727c
commit bc7014a079
13 changed files with 363 additions and 303 deletions
+5 -5
View File
@@ -189,22 +189,22 @@ BOOLEAN LoadExternalGameplayData(STR directoryName)
strcat(fileName, RUSSIAN_PREFIX); // add Russian. prefix to filename
#endif
#ifdef DUTCH
strcat(fileName, DUTCH_PREFIX); // add Polish. prefix to filename
strcat(fileName, DUTCH_PREFIX); // add Dutch. prefix to filename
#endif
#ifdef POLISH
strcat(fileName, POLISH_PREFIX); // add Polish. prefix to filename
#endif
#ifdef FRENCH
strcat(fileName, FRENCH_PREFIX); // add Polish. prefix to filename
strcat(fileName, FRENCH_PREFIX); // add French. prefix to filename
#endif
#ifdef ITALIAN
strcat(fileName, ITALIAN_PREFIX); // add Polish. prefix to filename
strcat(fileName, ITALIAN_PREFIX); // add Italian. prefix to filename
#endif
#ifdef TAIWANESE
strcat(fileName, TAIWANESE_PREFIX); // add Polish. prefix to filename
strcat(fileName, TAIWANESE_PREFIX); // add Taiwanese. prefix to filename
#endif
#ifdef CHINESE
strcat(fileName, CHINESE_PREFIX); // add Polish. prefix to filename
strcat(fileName, CHINESE_PREFIX); // add Chinese. prefix to filename
#endif
strcat(fileName, AMMOFILENAME);
DebugMsg (TOPIC_JA2,DBG_LEVEL_3,String("LoadExternalGameplayData, fileName = %s", fileName));
+2 -1
View File
@@ -20,6 +20,7 @@
#include "Weapons.h"
#include "GameSettings.h"
#include "Points.h"
#include "Multi Language Graphic Utils.h"
#endif
@@ -454,7 +455,7 @@ BOOLEAN InitBobbyBrTitle()
// load the br title graphic and add it
VObjectDesc.fCreateFlags=VOBJECT_CREATE_FROMFILE;
FilenameForBPP("LAPTOP\\br.sti", VObjectDesc.ImageFile);
GetMLGFilename( VObjectDesc.ImageFile, MLG_BR );
CHECKF(AddVideoObject(&VObjectDesc, &guiBrTitle));
//initialize the link to the homepage by clicking on the title
+1 -1
View File
@@ -2259,7 +2259,7 @@ BOOLEAN CreateBobbyRayOrderTitle()
// load BobbyRayTitle graphic and add it
VObjectDesc.fCreateFlags=VOBJECT_CREATE_FROMFILE;
FilenameForBPP("LAPTOP\\BobbyRayTitle.sti", VObjectDesc.ImageFile);
GetMLGFilename( VObjectDesc.ImageFile, MLG_BOBBYRAYTITLE );
CHECKF(AddVideoObject(&VObjectDesc, &guiBobbyRayTitle));
//the link to home page from the title
+18 -2
View File
@@ -873,13 +873,18 @@ CHAR16 GetUnicodeChar(CHAR16 siChar)
//case 249: siChar = 249; break; //ù
//case 251: siChar = 251; break; //û
//case 255: siChar = 255; break; //ÿ
//inshy: italian letters
//case 204: siChar = 204; break; //I'
//case 236: siChar = 236; break; //i'
//case 210: siChar = 210; break; //O'
//case 242: siChar = 242; break; //o'
//inshy: I've added the character codes for French ligatures to the sources, but I haven't added them in the fonts!
//Ligature
//case 198: siChar = 198; break; //Æ
//case 140: siChar = 338; break; //Œ
//case 230: siChar = 230; break; //æ
//case 156: siChar = 339; break; //œ
}
#endif
@@ -1950,7 +1955,7 @@ FontTranslationTable *CreateEnglishTransTable( )
*temp = 378; // Ÿ (çåò)
temp++;
// FRENCH letters in UNICODE
// FRENCH and ITALIAN letters in UNICODE
*temp = 192; //À
temp++;
*temp = 194; //Â
@@ -2004,6 +2009,16 @@ FontTranslationTable *CreateEnglishTransTable( )
temp++;
*temp = 255; //ÿ
temp++;
//Italian letters
*temp = 204; //I'
temp++;
*temp = 236; //i'
temp++;
*temp = 210; //O'
temp++;
*temp = 242; //o'
temp++;
//inshy: I've added the character codes for French ligatures to the sources, but I haven't added them in the fonts!
//Ligature
// *temp = 198; //Æ
@@ -2015,6 +2030,7 @@ FontTranslationTable *CreateEnglishTransTable( )
// *temp = 339; //œ
// temp++;
// Font glyphs for spell targeting icons
//ATE: IMPORTANT! INcreate the array above if you add any new items here...
//temp++;
+4
View File
@@ -48,6 +48,10 @@ LibraryInitHeader gGameLibaries[ ] =
{ "Russian.slf", FALSE, TRUE },
#endif
#ifdef FRENCH
{ "French.slf", FALSE, TRUE },
#endif
};
+4
View File
@@ -50,6 +50,10 @@
LIBRARY_RUSSIAN_DATA,
#endif
#ifdef FRENCH
LIBRARY_FRENCH_DATA,
#endif
NUMBER_OF_LIBRARIES
};
+29 -1
View File
@@ -14,7 +14,7 @@
BOOLEAN GetMLGFilename( SGPFILENAME filename, UINT16 usMLGGraphicID )
{
#if defined( ENGLISH ) || defined( TAIWANESE ) || defined( FRENCH ) || defined (CHINESE)
#if defined( ENGLISH ) || defined( TAIWANESE ) || defined (CHINESE)
switch( usMLGGraphicID )
{
case MLG_AIMSYMBOL:
@@ -119,6 +119,13 @@ BOOLEAN GetMLGFilename( SGPFILENAME filename, UINT16 usMLGGraphicID )
case MLG_IMPSYMBOL:
sprintf( filename, "LAPTOP\\IMPSymbol.sti" );
return TRUE;
//inshy: translation needed for russian version
case MLG_BOBBYRAYTITLE:
sprintf( filename, "LAPTOP\\BOBBYRAYTITLE.STI" );
return TRUE;
case MLG_BR:
sprintf( filename, "LAPTOP\\BR.STI" );
return TRUE;
}
#elif defined( GERMAN )
@@ -231,6 +238,13 @@ BOOLEAN GetMLGFilename( SGPFILENAME filename, UINT16 usMLGGraphicID )
case MLG_SPLASH:
sprintf( filename, "German\\splash_german.sti" );
return TRUE;
//inshy: Same graphic (no translation needed)
case MLG_BOBBYRAYTITLE:
sprintf( filename, "LAPTOP\\BOBBYRAYTITLE.STI" );
return TRUE;
case MLG_BR:
sprintf( filename, "LAPTOP\\BR.STI" );
return TRUE;
}
#else
@@ -377,6 +391,13 @@ BOOLEAN GetMLGFilename( SGPFILENAME filename, UINT16 usMLGGraphicID )
case MLG_IMPSYMBOL:
sprintf( filename, "%s\\IMPSymbol_%s.sti", zLanguage, zLanguage );
break;
//inshy: translation needed for russian version
case MLG_BOBBYRAYTITLE:
sprintf( filename, "%s\\BOBBYRAYTITLE_%s.STI", zLanguage, zLanguage );
break;
case MLG_BR:
sprintf( filename, "%s\\BR_%s.STI", zLanguage, zLanguage );
break;
default:
return FALSE;
}
@@ -488,6 +509,13 @@ BOOLEAN GetMLGFilename( SGPFILENAME filename, UINT16 usMLGGraphicID )
case MLG_IMPSYMBOL:
sprintf( filename, "LAPTOP\\IMPSymbol.sti" );
return TRUE;
//inshy: translation needed for russian version
case MLG_BOBBYRAYTITLE:
sprintf( filename, "LAPTOP\\BOBBYRAYTITLE.STI" );
return TRUE;
case MLG_BR:
sprintf( filename, "LAPTOP\\BR.STI" );
return TRUE;
}
#endif
+2
View File
@@ -38,6 +38,8 @@ enum
MLG_WARNING,
MLG_YOURAD13,
MLG_TITLETEXT_MP, // ROMAN: Additional multiplayer text
MLG_BOBBYRAYTITLE, //inshy: translation needed for russian version
MLG_BR,
};
BOOLEAN GetMLGFilename( SGPFILENAME filename, UINT16 usMLGGraphicID );
+41 -41
View File
@@ -204,7 +204,7 @@ CHAR16 WeaponType[][30] =
CHAR16 TeamTurnString[][STRING_LENGTH] =
{
L"Tour du joueur", // player's turn
L"Tour de l'adversaire",
L"Tour de l'ennemi",
L"Tour des créatures",
L"Tour de la milice",
L"Tour des civils",
@@ -553,7 +553,7 @@ STR16 pLongAttributeStrings[] =
STR16 pInvPanelTitleStrings[] =
{
L"Protection", // the armor rating of the merc
L"Protec.", // the armor rating of the merc
L"Poids", // the weight the merc is carrying
L"Cam.", // the merc's camouflage rating
L"Camouflage:",
@@ -784,11 +784,11 @@ STR16 gzMercSkillText[] =
STR16 pTacticalPopupButtonStrings[] =
{
L"|Debout/Marcher",
L"|Accroupi/Avancer",
L"Debout/|Courir",
L"|A terre/Ramper",
L"|Regarder",
L"Debout/Marcher (|S)",
L"Accroupi/Avancer (|C)",
L"Debout/Courir (|R)",
L"A terre/Ramper (|P)",
L"Regarder (|L)",
L"Action",
L"Parler",
L"Examiner (|C|t|r|l)",
@@ -1024,9 +1024,9 @@ STR16 gpStrategicString[] =
//The help text for the four buttons. Use \n to denote new line (just like enter).
L"|Annule le déploiement des mercenaires \net vous permet de les déployer vous-même.",
L"Disperse |aléatoirement vos mercenaires \nà chaque fois.",
L"Vous permet de placer votre groupe |de mercenaires.",
L"Annule le déploiement des mercenaires \net vous permet de les déployer vous-même. (|C)",
L"Disperse aléatoirement vos mercenaires \nà chaque fois. (|S)",
L"Vous permet de placer votre groupe de mercenaires. (|G)",
L"Cliquez sur ce bouton lorsque vous avez déployé \nvos mercenaires. (|E|n|t|r|é|e)",
L"Vous devez déployer vos mercenaires \navant d'engager le combat.",
@@ -1047,11 +1047,11 @@ STR16 gpStrategicString[] =
//These entries are for button popup help text for the prebattle interface. All popup help
//text supports the use of \n to denote new line. Do not use spaces before or after the \n.
L"|Résolution automatique du combat\nsans charger la carte.",
L"|Résolution automatique impossible lorsque\nvous attaquez.",
L"|Pénétrez dans le secteur pour engager le combat.",
L"|Faire retraite vers le secteur précédent.", //singular version
L"|Faire retraite vers les secteurs précédents.", //multiple groups with same previous sector
L"Résolution automatique du combat\nsans charger la carte. (|A)",
L"Résolution automatique impossible lorsque\nvous attaquez.",
L"Pénétrez dans le secteur pour engager le combat. (|E)",
L"Faire retraite vers le secteur précédent. (|R)", //singular version
L"Faire retraite vers les secteurs précédents. (|R)", //multiple groups with same previous sector
//various popup messages for battle conditions.
@@ -1502,20 +1502,20 @@ CHAR16 TacticalStr[][ MED_STRING_LENGTH ] =
// These are different buttons that the player can turn on and off.
L"Discretion (|Z)",
L"|Carte",
L"|OK (Fin du tour)",
L"Carte (|M)",
L"Fin du tour (|D)",
L"Parler à",
L"Muet",
L"Se relever (|P|g|U|p)",
L"Niveau du curseur (|T|a|b)",
L"Grimper / Sauter",
L"Grimper/Sauter (|J)",
L"Se coucher (|P|g|D|n)",
L"Examiner (|C|t|r|l)",
L"Mercenaire précédent",
L"Mercenaire suivant (E|s|p|a|c|e)",
L"|Options",
L"|Rafale",
L"|Regarder/Pivoter",
L"Mercenaire suivant (|E|s|p|a|c|e)",
L"Options (|O)",
L"Rafale (|B)",
L"Regarder/Pivoter (|L)",
L"Santé : %d/%d\nEnergie : %d/%d\nMoral : %s",
L"Pardon ?", //this means "what?"
L"Suite", //an abbrieviation for "Continued"
@@ -1857,20 +1857,20 @@ STR16 pUpdateMercStrings[] =
STR16 pMapScreenBorderButtonHelpText[] =
{
L"Afficher |Villes",
L"Afficher |Mines",
L"Afficher |Escouades & Ennemis",
L"Afficher |Espace aérien",
L"Afficher |Objets",
L"Afficher Milice & Ennemis (|Z)",
L"Villes (|W)",
L"Mines (|M)",
L"Escouades & Ennemis (|T)",
L"Espace aérien (|A)",
L"Objets (|I)",
L"Milice & Ennemis (|Z)",
};
STR16 pMapScreenBottomFastHelp[] =
{
L"|PC Portable",
L"PC Portable (|L)",
L"Tactique (|E|c|h|a|p)",
L"|Options",
L"Options (|O)",
L"Compression du temps (|+)", // time compress more
L"Compression du temps (|-)", // time compress less
L"Message précédent (|U|p)\nPage précédente (|P|g|U|p)", // previous message in scrollable list
@@ -3685,7 +3685,7 @@ STR16 zOptionsToggleText[] =
L"Balle Traçante pour tir simple",
L"Son de pluie",
L"Afficher corbeaux",
L"Personnalité I.M.P aleatiore",
L"Personnalité I.M.P aléatiore",
L"Sauvegarde auto",
L"Silence Skyrider !",
L"Faible consommation processeur",
@@ -3705,7 +3705,7 @@ STR16 zOptionsScreenHelpText[] =
L"Affichage des sous-titres à l'écran.",
//Key to advance speech
L"Si les sous-titres s'affichent à l'écran, cette option vous permet de prendre le temps de les lire.",
L"Si les sous-titres s'affichent à l'écran, \ncette option vous permet de prendre le temps de les lire.",
//Toggle smoke animation
L"Désactivez cette option si votre machine n'est pas suffisamment puissante.",
@@ -3720,7 +3720,7 @@ STR16 zOptionsScreenHelpText[] =
L"Activez cette option pour retrouver vos automatismes de la version précédente.",
//Show movement path
L"Activez cette option pour afficher le chemin suivi par les mercenaires. Vous pouvez la désactiver et utiliser la touche MAJ en cours de jeu.",
L"Activez cette option pour afficher le chemin suivi par les mercenaires. \nVous pouvez la désactiver et utiliser la touche MAJ en cours de jeu.",
//show misses
L"Activez cette option pour voir où atterrissent tous vos tirs.",
@@ -3735,7 +3735,7 @@ STR16 zOptionsScreenHelpText[] =
L"Activez cette option pour que le jeu utilise le système métrique.",
//Merc Lighted movement
L"Activez cette option pour éclairer les environs des mercenaires. Désactivez-le si votre machine n'est pas suffisamment puissante.",
L"Activez cette option pour éclairer les environs des mercenaires. (|G) \nDésactivez-le si votre machine n'est pas suffisamment puissante.",
//Smart cursor
L"Activez cette option pour que le curseur se positionne directement sur un mercenaire quand il est à proximité.",
@@ -3744,15 +3744,15 @@ STR16 zOptionsScreenHelpText[] =
L"Activez cette option pour que le curseur se positionne directement sur une porte quand il est à proximité.",
//glow items
L"Activez cette option pour mettre les objets en évidence",
L"Activez cette option pour mettre les objets en évidence. (|I)",
//toggle tree tops
L"Activez cette option pour afficher le cime des arbres.",
L"Activez cette option pour afficher le cime des arbres. (|T)",
//toggle wireframe
L"Activez cette option pour afficher les murs en fil de fer.",
L"Activez cette option pour afficher les murs en fil de fer. (|W)",
L"Activez cette option pour afficher le curseur Toît. ( |Home )",
L"Activez cette option pour afficher le curseur Toît. (|Home)",
// Options for 1.13
L"Si activé, affiche une barre de probabilités de succès sur le curseur.",
@@ -3766,7 +3766,7 @@ STR16 zOptionsScreenHelpText[] =
L"Si activé, les effets de traçantes sont affichés pour les tir simples.",
L"Si activé, le son de pluie est audible quand il pleut.",
L"Si activé, les corbeaux sont présents dans le jeu.",
L"Si activé, le(s) personnage(s) IMP sont affectés d'une personnalité aleatoire.",
L"Si activé, le(s) personnage(s) IMP sont affectés d'une personnalité aléatoire.",
L"Si activé, le jeu est sauvegardé à chaque nouveau tour joueur.",
L"Si activé, les confirmations insistantes de Skyrider cessent.",
L"Si activé, le jeu restreint l'utilisation du processeur.",
@@ -4063,8 +4063,8 @@ STR16 gzHelpScreenText[] =
STR16 gzNonPersistantPBIText[] =
{
L"Vous êtes en plein combat. Vous pouvez donner l'ordre de retraite depuis l'écran tactique.",
L"|Pénétrez dans le secteur pour reprendre le cours du combat.",
L"|Résolution automatique du combat.",
L"Pénétrez dans le secteur pour reprendre le cours du combat. (|E)",
L"Résolution automatique du combat. (|A)",
L"Résolution automatique impossible lorsque vous êtes l'attaquant.",
L"Résolution automatique impossible lorsque vous êtes pris en embuscade.",
L"Résolution automatique impossible lorsque vous combattez des créatures dans les mines.",
+42 -41
View File
@@ -1,3 +1,4 @@
#pragma setlocale("ITALIAN")
#ifdef PRECOMPILEDHEADERS
#include "Utils All.h"
#include "_Ja25Italiantext.h"
@@ -15,56 +16,56 @@
STR16 zNewTacticalMessages[]=
{
L"Range to target: %d tiles, Brightness: %d/%d",
L"Attaching the transmitter to your laptop computer.",
L"You cannot afford to hire %s",
L"For a limited time, the above fee covers the cost of the entire mission and includes the equipment listed below.",
L"Hire %s now and take advantage of our unprecedented 'one fee covers all' pricing. Also included in this unbelievable offer is the mercenary's personal equipment at no charge.",
L"Fee",
L"There is someone else in the sector...",
L"Gun Range: %d tiles, Chance to hit: %d percent",
L"Display Cover",
L"Line of Sight",
L"New Recruits cannot arrive there.",
L"Since your laptop has no transmitter, you won't be able to hire new team members. Perhaps this would be a good time to load a saved game or start over!",
L"%s hears the sound of crumpling metal coming from underneath Jerry's body. It sounds disturbingly like your laptop antenna being crushed.", //the %s is the name of a merc. @@@ Modified
L"After scanning the note left behind by Deputy Commander Morris, %s senses an oppurtinity. The note contains the coordinates for launching missiles against different towns in Arulco. It also gives the coodinates of the origin - the missile facility.",
L"Noticing the control panel, %s figures the numbers can be reveresed, so that the missile might destroy this very facility. %s needs to find an escape route. The elevator appears to offer the fastest solution...",
L"This is an IRON MAN game and you cannot save when enemies are around.", // @@@ new text
L"(Cannot save during combat)", //@@@@ new text
L"The current campaign name is greater than 30 characters.", // @@@ new text
L"The current campaign cannot be found.", // @@@ new text
L"Campaign: Default ( %S )", // @@@ new text
L"Campaign: %S", // @@@ new text
L"You have selected the campaign %S. This campaign is a player-modified version of the original Unfinished Business campaign. Are you sure you wish to play the %S campaign?", // @@@ new text
L"In order to use the editor, please select a campaign other than the default.", ///@@new
L"Distanza dal bersaglio: %d caselle, Luminosità: %d/%d",
L"Colleghi il trasmettitore al tuo computer portatile.",
L"Non puoi permetterti di ingaggiare %s",
L"Per un periodo limitato, la tariffa qui sopra includerà i costi dell'intera missione, oltre all'equipaggiamento indicato sotto.",
L"Assolda %s adesso e approfitta della nostra nuova tariffa 'tutto incluso'. Compreso in questa incredibile offerta anche l'equipaggiamento personale del mercenario, senza alcun costo aggiuntivo.",
L"Tariffa",
L"C'è qualcun altro nel settore...",
L"Gittata dell'arma: %d caselle, Probabilità di colpire: %d percent",
L"Mostra nascondigli",
L"Linea di Vista",
L"Le nuove reclute non possono arrivare qui.",
L"Poiché il tuo portatile non ha un trasmettitore, non potrai assoldare nuovi mercenari. Forse questo sarebbe un buon momento per caricare una partita salvata o ricominciare daccapo!",
L"%s sente venire da sotto al corpo di Jerry il rumore di metallo che si accartoccia. E' un suono fastidioso, come se l'antenna del tuo portatile venisse schiacciata.", //the %s is the name of a merc.
L"Dopo aver dato un'occhiata al biglietto lasciato dal Vice Comandante Morris, %s vede una possibilità. La nota contiene le coordinate per il lancio di missili contro diverse città ad Arulco. C'è anche la locazione della base di lancio: la fabbrica di missili.",
L"Guardando il pannello di controllo %s immagina che i numeri possano essere invertiti, cosicché il missile distrugga proprio questa fabbrica. %s deve trovare una via di fuga. L'ascensore sembra offrire la soluzione più rapida...",
L"Questa è una partita a livello IRON MAN: non puoi salvare quando ci sono nemici nei dintorni.",
L"(Non puoi salvare durante il combattimento.)",
L"Il nome della campagna è più grande di 30 caratteri",
L"Campagna non trovata.",
L"Campagna: Default ( %S )",
L"Campagna: %S",
L"Hai selezionato la campagna %S. Questa campagna è una versione amatoriale della campagna originale di Unfinished Business. Sei sicuro di voler giocare la campagna %S?",
L"Per usare l'editor, selezionare una campagna diversa da quella di default.",
};
//these strings match up with the defines in IMP Skill trait.cpp
STR16 gzIMPSkillTraitsText[]=
{
L"Lock picking",
L"Hand to hand combat",
L"Electronics",
L"Night operations",
L"Throwing",
L"Teaching",
L"Heavy Weapons",
L"Auto Weapons",
L"Stealth",
L"Ambidextrous",
L"Knifing",
L"Sniper",
L"Camouflage",
L"Martial Arts",
L"Scassinare",
L"Lottare",
L"Elettronica",
L"Operazioni Notturne",
L"Lanciare",
L"Insegnare",
L"Armi Pesanti",
L"Armi Automatiche",
L"Muoversi Silenziosamente",
L"Ambidestro",
L"Combattimento con il coltello",
L"Cecchino",
L"Mimetismo",
L"Arti Marziali",
L"None",
L"I.M.P. Specialties",
L"Nessuna",
L"Specialità I.M.P.",
};
//@@@: New string as of March 3, 2000.
//New string as of March 3, 2000.
STR16 gzIronManModeWarningText[]=
{
L"You have chosen IRON MAN mode. This setting makes the game considerably more challenging as you will not be able to save your game when in a sector occupied by enemies. This setting will affect the entire course of the game. Are you sure want to play in IRON MAN mode?",
L"Hai scelto la modalità IRON MAN. Questa impostazione rende il gioco notevolmente più impegnativo, poiché non potrai salvare la partita in un settore occupato da nemici. Non potrai cambiare questa decisione nel corso della partita. Sei sicuro di voler giocare al livello IRON MAN?",
};
+208 -208
View File
@@ -1040,11 +1040,11 @@ STR16 gpStrategicString[] =
//These entries are for button popup help text for the prebattle interface. All popup help
//text supports the use of \n to denote new line. Do not use spaces before or after the \n.
L"|Automatycznie prowadzi walkê za ciebie,\nnie ³aduj¹c planszy.",
L"Atakuj¹c sektor wroga nie mo¿na automatycznie rozstrzygn¹æ walki.",
L"Wejœcie do s|ektora by nawi¹zaæ walkê z wrogiem.",
L"Wycofuje oddzia³ do s¹siedniego sekto|ra.", //singular version
L"Wycofuje wszystkie oddzia³y do s¹siedniego sekto|ra.", //multiple groups with same previous sector
L"Automatycznie prowadzi walkę za ciebie, \nnie ładując planszy. (|A)",
L"Atakując sektor wroga \nnie można automatycznie rozstrzygnąć walki.",
L"Wejście do sektora \nby nawiązać walkę z wrogiem. (|E)",
L"Wycofuje oddział \ndo sąsiedniego sektora. (|R)", //singular version
L"Wycofuje wszystkie oddziały \ndo sąsiedniego sektora. (|R)", //multiple groups with same previous sector
//various popup messages for battle conditions.
@@ -1099,7 +1099,7 @@ CHAR16 gWeaponStatsDesc[][ 16 ] =
// HEADROCK: Added new strings for extended description ** REDUNDANT **
L"AUTOPEN:", //14
L"AUTO/5:", //15
L"Amount:", //16
L"Liczba:", //16
};
@@ -1108,82 +1108,82 @@ CHAR16 gWeaponStatsDesc[][ 16 ] =
// changing item type while watching its description box
STR16 gzWeaponStatsFasthelp[ 27 ] =
{
L"Range",
L"Damage",
L"Burst/Auto Penalty",
L"Autofire shots per 5 AP",
L"Accuracy",
L"Reliability",
L"Repair Ease",
L"APs to ready",
L"APs to fire Single",
L"APs to fire Burst",
L"APs to fire Auto",
L"APs to Reload",
L"APs to Reload Manually",
L"Flash Suppression",
L"Loudness (Lower is better)",
L"To-Hit Modifier",
L"Average Best Laser Range",
L"Aiming Modifier",
L"Min. Range for Aiming Bonus",
L"Bipod Modifier",
L"APs to Throw",
L"APs to Launch",
L"APs to Stab",
L"No Single Shot!",
L"No Burst Mode!",
L"No Auto Mode!",
L"APs to Bash",
L"Zas.",
L"Obraż.",
L"PA:",
L"Auto/5AP",
L"Celność",
L"Stan",
L"Trud napraw",
L"AP/przygot.",
L"AP za 1 strzał",
L"AP za serię",
L"AP za Auto",
L"AP/przeładuj",
L"AP/przeładuj ręcznie",
L"Tłumienie błysku",
L"Głośność (mniej - lepiej)",
L"Modyf. trafień",
L"Średni max zasg. lasera",
L"Modf. celowania",
L"Min. zasg. dla bonusu cel.",
L"Modf. dwójnogu",
L"AP za rzut",
L"AP za strzał",
L"AP/cios-nóż",
L"Wył. 1 strzał!",
L"Wył. serię!",
L"Wył. auto!",
L"AP/cios-łom",
};
STR16 gzWeaponStatsFasthelpTactical[ 27 ] =
{
L"Range",
L"Damage",
L"Burst/Auto Penalty",
L"Autofire shots per 5 AP",
L"Accuracy",
L"Reliability",
L"Repair Ease",
L"APs to ready",
L"APs to fire Single",
L"APs to fire Burst",
L"APs to fire Auto",
L"APs to Reload",
L"APs to Reload Manually",
L"To-Hit Modifier",
L"Average Best Laser Range",
L"Aiming Modifier",
L"Min. Range for Aiming Bonus",
L"Flash Suppression",
L"Loudness (Lower is better)",
L"Bipod Modifier",
L"APs to Throw",
L"APs to Launch",
L"APs to Stab",
L"No Single Shot!",
L"No Burst Mode!",
L"No Auto Mode!",
L"APs to Bash",
L"Zas.",
L"Obraż.",
L"PA:",
L"Auto/5AP",
L"Celność",
L"Stan",
L"Trud napraw",
L"AP/przygot.",
L"AP za 1 strzał",
L"AP za serię",
L"AP za Auto",
L"AP/przeładuj",
L"AP/przeładuj ręcznie",
L"Modyf. trafień",
L"Średni max zasg. lasera",
L"Modf. celowania",
L"Min. zasg. dla bonusu cel.",
L"Tłumienie błysku",
L"Głośność (mniej - lepiej)",
L"Modf. dwójnogu",
L"AP za rzut",
L"AP za strzał",
L"AP/cios-nóż",
L"Wył. 1 strzał!",
L"Wył. serię!",
L"Wył. auto!",
L"AP/cios-łom",
};
STR16 gzAmmoStatsFasthelp[ 20 ] =
{
L"Armor Penetration (Lower is better)",
L"Bullet Tumble (Higher is better)",
L"Pre-impact Explosion (Higher is better)",
L"Tracer Effect",
L"Anti-Tank",
L"Lockbuster",
L"Ignores Armor",
L"Acidic",
L"Range Modifier",
L"Damage Modifier",
L"To-Hit Modifier",
L"Burst/Auto Penalty Modifier (Higher is better)",
L"Reliability Modifier",
L"Loudness Modifier (Lower is better)",
L"Penetracja osłon (mniej lepiej)",
L"Moc obalająca (więcej lepiej)",
L"Eksplozja przed celem (więcej lepiej)",
L"Efekt smugowy",
L"P. czołg.",
L"Nisc zamka",
L"Pomija osłonę",
L"Korozj",
L"Modyf. zasg.",
L"Modyf. obrażeń",
L"Modyf. trafień",
L"Modyf. kary za serię/auto (więcej lepiej)",
L"Modyf. sprawności",
L"Modyf. głośności (mniej - lepiej)",
L"",
L"",
L"",
@@ -1194,23 +1194,23 @@ STR16 gzAmmoStatsFasthelp[ 20 ] =
STR16 gzArmorStatsFasthelp[ 20 ] =
{
L"Protection",
L"Coverage (Higher is better)",
L"Degrade Rate (Lower is better)",
L"AP Modifier",
L"To-Hit Modifier",
L"Woodland Camo",
L"Urban Camo",
L"Desert Camo",
L"Snow Camo",
L"Stealth Modifier",
L"Vision Range Modifier",
L"Day Vision Range Modifier",
L"Night Vision Range Modifier",
L"Bright Light Vision Range Modifier",
L"Cave Vision Range Modifier",
L"Tunnel Vision Percentage",
L"Hearing Range Modifier",
L"Osłona",
L"Pokrycie (więcej - lepiej)",
L"Zużycie (mniej - lepiej)",
L"Modyf. AP",
L"Modyf. trafień",
L"Kam leśny",
L"Kam miasto",
L"Kam pustyn.",
L"Kam śnieg",
L"Modyf. skradania",
L"Modyf. zasg. wzroku",
L"Modyf. zasg. wzroku/dzień",
L"Modyf. zasg. wzroku/noc",
L"Modyf. zasg. wzroku/jasne światło",
L"Modyf. zasg. wzr./jaskinia",
L"Widzenie tunelowe (w %)",
L"Modyf. zasg. słuchu",
L"",
L"",
L"",
@@ -1218,14 +1218,14 @@ STR16 gzArmorStatsFasthelp[ 20 ] =
STR16 gzExplosiveStatsFasthelp[ 20 ] =
{
L"Damage",
L"Stun Damage",
L"Blast Loudness (Lower is better)",
L"Volatility!!! (Lower is better)",
L"Blast Radius",
L"Effect Start Radius",
L"Effect Final Radius ",
L"Effect Duration",
L"Obraż.",
L"Ogłuszanie",
L"Głośn. wybuchu (mniej - lepiej)",
L"Niestabilność! (mniej - lepiej)",
L"Zsg. wybuchu",
L"Zsg efektu początk.",
L"Zsg. efektu końcow.",
L"Trwanie efektu",
L"",
L"",
L"",
@@ -1242,40 +1242,40 @@ STR16 gzExplosiveStatsFasthelp[ 20 ] =
STR16 gzMiscItemStatsFasthelp[ 34 ] =
{
L"Item Size Modifier (Lower is better)", // 0
L"Reliability Modifier",
L"Loudness Modifier (Lower is better)",
L"Hides Muzzle Flash",
L"Bipod Modifier",
L"Range Modifier", // 5
L"To-Hit Modifier",
L"Best Laser Range",
L"Aiming Bonus Modifier",
L"Burst Size Modifier",
L"Burst Penalty Modifier (Higher is better)", // 10
L"Auto-Fire Penalty Modifier (Higher is better)",
L"AP Modifier",
L"AP to Burst Modifier (Lower is better)",
L"AP to Auto-Fire Modifier (Lower is better)",
L"AP to Ready Modifier (Lower is better)", // 15
L"AP to Reload Modifier (Lower is better)",
L"Magazine Size Modifier",
L"AP to Attack Modifier (Lower is better)",
L"Damage Modifier",
L"Melee Damage Modifier", // 20
L"Woodland Camo",
L"Urban Camo",
L"Desert Camo",
L"Snow Camo",
L"Stealth Modifier", // 25
L"Hearing Range Modifier",
L"Vision Range Modifier",
L"Day Vision Range Modifier",
L"Night Vision Range Modifier",
L"Bright Light Vision Range Modifier", //30
L"Cave Vision Range Modifier",
L"Tunnel Vision Percentage (Lower is better)",
L"Minimum Range for Aiming Bonus",
L"Modyf. rozmiaru (mniej - lepiej)", // 0
L"Modyf. sprawności",
L"Modyf. głośności (mniej - lepiej)",
L"Ukrywa błysk",
L"Modf. dwójnogu",
L"Modyf. zasięgu", // 5
L"Modyf. trafień",
L"Max zasg. lasera",
L"Modf bonusu celowania",
L"Modyf. dług. serii",
L"Modyf. kary za serię (więcej - lepiej)", // 10
L"Modyf. kary za ogień auto (więcej - lepiej)",
L"Modyf. AP",
L"Modyf. AP za serię (mniej - lepiej)",
L"Modyf. AP za ogień auto (mniej - lepiej)",
L"Modf AP/przygotwanie (mniej - lepiej)", // 15
L"Modf AP/przeładowanie (mniej - lepiej)",
L"Modyf. wlk. magazynka",
L"Modyf. AP/atak (mniej - lepiej)",
L"Modyf. obrażeń",
L"Modf obr. walki wręcz", // 20
L"Kam leśny",
L"Kam miasto",
L"Kam pustyn.",
L"Kam śnieg",
L"Modyf. skradania", // 25
L"Modyf. zasg. słuchu",
L"Modyf. zasg. wzroku",
L"Modyf. zasg. wzroku/dzień",
L"Modyf. zasg. wzroku/noc",
L"Modyf. zasg. wzroku/jasne światło", //30
L"Modyf. zasg. wzr./jaskinia",
L"Widzenie tunelowe w % (mniej - lepiej)",
L"Min. zasg. dla bonusu cel.",
};
// HEADROCK: End new tooltip text
@@ -1501,7 +1501,7 @@ CHAR16 TacticalStr[][ MED_STRING_LENGTH ] =
L"Wycisz",
L"Pozycja do góry (|P|g|U|p)",
L"Poziom kursora (|T|a|b)",
L"Wspinaj siê / |Zeskocz",
L"Wspinaj się / Zeskocz (|J)",
L"Pozycja w dó³ (|P|g|D|n)",
L"Badaæ (|C|t|r|l)",
L"Poprzedni najemnik",
@@ -3682,7 +3682,7 @@ STR16 zOptionsToggleText[] =
L"Automatyczny zapis",
L"Cichy Skyrider",
L"Niskie obci¹¿enie procesora",
L"Enhanced Description Box",
L"Rozszerzone Okno Opisu (EDB)", //Enhanced Description Box
};
//This is the help text associated with the above toggles.
@@ -3763,7 +3763,7 @@ STR16 zOptionsScreenHelpText[] =
L"Jeœli W£¥CZONE, gra bêdzie zapisywana ka¿dorazowo po zakoñczeniu tury gracza.",
L"Jeœli W£¥CZONE, Skyrider nie bêdzie nic mówi³.",
L"Jeœli W£¥CZONE, gra bêdzie obci¹¿a³a procesor w mniejszym stopniu.",
L"Jeœli W£¥CZONE, gra bêdzie u¿yciem 'Enhanced Description Box' opisu.",
L"Jeśli WŁĄCZONE, rozszerzone opisy będą pokazane dla przedmiotów i broni.",
};
STR16 gzGIOScreenText[] =
@@ -4453,108 +4453,108 @@ STR16 NewInvMessage[] =
L"Nie mo¿esz siê przemieszczaæ, gdy zamek plecaka jest aktywny.",
L"Na pewno chcesz sprzedaæ wszystkie przedmioty z tego sektora?",
L"Na pewno chcesz skasowaæ wszystkie przedmioty z tego sektora?",
L"Cannot climb while wearing a backpack",
L"Nie można wspinać się z plecakiem",
};
// WANNE - MP: Multiplayer messages
STR16 MPServerMessage[] =
{
// 0
L"Initiating RakNet server...",
L"Server started, waiting for connections...",
L"You must now connect with your client to the server by pressing '2'.",
L"Server is already running.",
L"Server failed to start. Terminating.",
L"Inicjacja serwera RakNet...",
L"Serwer wł., oczekiwanie na połączenie",
L"Musisz teraz połączyć swojego klienta z serwerem, wciskając 2",
L"Serwer już działa",
L"Wł. nie powiodło się. Przerwanie.",
// 5
L"%d/%d clients are ready for realtime-mode.",
L"Server disconnected and shutdown.",
L"Server is not running.",
L"Clients are still loading, please wait...",
L"You cannot change dropzone after the server has started.",
L"%d/%d klientów gotowych na tryb realtime.",
L"Serwer rozłączony i wył.",
L"Serwer nie działa",
L"Ładowanie klientów, czekaj.",
L"Nie można zmieniać miejsc zrzutu po starcie serwera.",
};
STR16 MPClientMessage[] =
{
// 0
L"Initiating RakNet client...",
L"Connecting to IP: %S ...",
L"Received game settings:",
L"You are already connected.",
L"You are already connecting...",
L"Inicjacja klienta RakNet…",
L"Łączenie z IP: %S ...",
L"Otrzymano ustawienia:",
L"Jesteś już połączony.",
L"Jesteś już w trakcie łączenia",
// 5
L"Client #%d - '%S' has hired '%s'.",
L"Client #%d - '%S' has hired another merc.",
L"You are ready - Total ready = %d/%d.",
L"You are no longer ready - Total ready = %d/%d.",
L"Starting battle...",
L"Klient #%d - '%S' wynajął '%s'.",
L"Klient #%d - '%S' has hired another merc.",
L"Gotowy! Wszystkich gotowych - %d/%d.",
L"Nie jesteś już gotowy. Gotowych - %d/%d.",
L"Początek bitwy...",
// 10
L"Client #%d - '%S' is ready - Total ready = %d/%d.",
L"Client #%d - '%S' is no longer ready - Total ready = %d/%d",
L"You are ready. Awaiting other clients... Press 'OK' if you are not ready anymore.",
L"Let us the battle begin!",
L"A client must be running for starting the game.",
L"Klient #%d - '%S' jest gotów. Gotowych - %d/%d.",
L"Klient #%d - '%S' nie jest już gotowy. Gotowych - %d/%d",
L"Jesteś gotów. Czekanie na pozostałych… Naciśnij OK., jeśli już nie jesteś gotów.",
L"Zaczynajmy już!",
L"Klient A musi działać, by zacząć grę.",
// 15
L"Game cannot start. No mercs are hired...",
L"Awaiting 'OK' from server to unlock the laptop...",
L"Interrupted",
L"Finish from interrupt",
L"Mouse Grid Coordinates:",
L"Nie można zacząć. Brak najemników.",
L"Czekaj na zgodę serwera, by odblokować laptopa…",
L"Przerwano",
L"Koniec przerwania",
L"Położenie siatki myszy:",
// 20
L"X: %d, Y: %d",
L"Grid Number: %d",
L"Server only feature",
L"Choose server manual override stage: ('1' - Enable laptop/hiring) ('2' - Launch/load level) ('3' - Unlock UI) ('4' - Finish placement)",
//L"Sector=%s, Max Clients=%d, Max Mercs=%d, Game_Mode=%d, Same Merc=%d, Damage Multiplier=%f, Enemies=%d, Creatures=%d, Militias=%d, Civilians=%d, Timed Turns=%d, Secs/Tic=%d, Starting Cash=$%d, Tons of Guns=%d, Sci-Fi=%d, Difficulty=%d, Iron-Man=%d, BobbyRays Range=%d, Dis BobbyRay=%d, Dis Aim/Merc Equip=%d, Dis Morale=%d, Testing=%d",
L"Sector=%s, Max Clients=%d, Max Mercs=%d, Game_Mode=%d, Same Merc=%d, Damage Multiplier=%f, Timed Turns=%d, Secs/Tic=%d, Dis BobbyRay=%d, Dis Aim/Merc Equip=%d, Dis Morale=%d, Testing=%d",
L"Numer siatki %d",
L"Właściwości serwera",
L"Ustaw ręcznie stopień nadrzędności serwera: 1 wł.laptop/rekrut.; 2- wł./ładuj poziom; 3 odblok. UI; 4 kończy rozmieszczanie",
//L"Sektor=%s, MaxKlientów=%d, Max Najem=%d, Tryb_Gry=%d, TenSamNaj=%d, Mnożnik obraż.=%f, Wrogów=%d, Stworzeń=%d, Milicji=%d, Cywili=%d, TuryCzasowe=%d, Sek/ruch=%d, Kasa na start=$%d, Kupa broni=%d, Sci-Fi=%d, Trudność=%d, Iron-Man=%d, Zasób BobbyRays=%d, Wył BobbyRay=%d, Wył ekwip Aim/Merc=%d, Wył morale=%d, Test=%d",
L"Sektor=%s, MaxKlientów=%d, Max Najem=%d, Tryb_Gry=%d, TenSamNaj=%d, Mnożnik obraż.=%f, TuryCzas=%d, Sek/ruch=%d, Dis BobbyRay=%d, Wył Aim/Merc Ekwip=%d, Wył morale=%d, Test=%d",
// 25
L"Testing and cheat function '9' is enabled.",
L"New connection: Client #%d - '%S', Edge: %d, Team: %d.",
L"Test, funkcja cheat’ów '9' jest włączona.",
L"Nowe połączenie Client #%d - '%S', Edge: %d, Team: %d.",
L"Team: %d.",//not used any more
L"'%s' (client %d - '%S') was killed by '%s' (client %d - '%S')",
L"Kicked client #%d - '%S'",
L"'%s' (klient %d - '%S') zabity przez '%s' (client %d - '%S')",
L"Wyrzucono #%d - '%S'",
// 30
L"Start turn for client number: #1 - '%S' | #2 - '%S' | #3 - '%S' | #4 - '%S'",
L"Starting turn for client #%d",
L"Requesting for realtime...",
L"Switched back to realtime.",
L"Error: Something went wrong switching back.",
L"Zacząć turę dla klientów nr: #1 - '%S' | #2 - '%S' | #3 - '%S' | #4 - '%S'",
L"Początek tury dla #%d",
L"Żądanie trybu realtime",
L"Zmieniono w tryb realtime.",
L"Błąd. Coś poszło nie tak przy przełączaniu.",
// 35
L"Unlock laptop for hiring? (Are all clients connected?)",
L"The server has unlocked the laptop. Begin hiring!",
L"Interruptor.",
L"You cannot change dropzone if you are only the client and not the server.",
L"You declined the offer to surrender, because you are in a multiplayer game.",
L"Odblokować laptopy? (Czy gracze są już podłączeni?)",
L"Serwer odblokował laptopa. Zaczynaj rekrutować!",
L"Przerywający",
L"Nie możesz zmieniać strefy zrzutu, jeśli nie jesteś serwerem gry.",
L"Odrzuciłeś ofertę poddania się, gdyż grasz w trybie Multiplayer.",
// 40
L"All your mercs are wiped dead!",
L"Spectator mode enabled.",
L"You have been defeated!",
L"Sorry, climbing is disable in MP",
L"You Hired '%s'",
L"Wszyscy twoi ludzie są martwi!",
L"Tryb obserwatora wł..",
L"Zostałeś pokonany!",
L"Wspinanie wyłączone w MP",
L"Wynajęto '%s'",
};
STR16 MPHelp[] =
{
// 0
L"Welcome to JAGGED ALLIANCE 2 v1.13 Multiplayer",
L"Press 'F1' for help",
L"Multiplayer controls (from strategy screen)",
L"* first set up ja2_mp.ini *",
L"'1' - Start server",
L"Witaj w JAGGED ALLIANCE 2 v1.13 Multiplayer",
L"F1 - pomoc ",
L"Przyciski mutliplayera (ekran strategii)",
L"* Ustaw ja2_mp.ini *",
L"'1' - Wł. serwer",
// 5
L"'2' - Connect to server",
L"'3' - If server unlock laptop, set client ready for battle",
L"'4' - Quit server and client",
L"'5' - Display mouse coords (from tactical screen)",
L"'7' - Popup dialog for server override panel",
L"'2' - Połącz z serwerem",
L"'3' - Gdy serwer odblokuje laptopa, ustaw gotów do bitwy",
L"'4' - Opuść serwera i klient",
L"'5' - Pokaż położenie myszy (ekr. taktyczny)",
L"'7' - Pop-up dla komunikatów serwera",
// 10
L"'F2' - Display secondary help",
L"See readme_mp.html for further details",
L"Tips: (assuming ja2_mp.ini is set up)",
L"* Make sure all clients have unique CLIENT_NUM *",
L"* Game save doesn't record bobby rays order *",
L"'F2' - Wyświetl 2. pomoc",
L"Czytaj readme_mp.html po więcej info.",
L"Tip: (gdy ja2_mp.ini jest ustawione)",
L"* Upewnij się że wszyscy mają różne CLIENT_NUM *",
L"* Gra nie zapisuje porządku w Bobby rays *",
// 15
L"* Avoid placing opposed mercs in immediate sight *",
L"'F1' - Display primary help",
L"* Nie ustawiaj przeciwników w zasięgu ich wzroku *",
L"'F1' - Wyświetl 1. pomoc",
};
#endif //POLISH
+1 -1
View File
@@ -1505,7 +1505,7 @@ CHAR16 TacticalStr[][ MED_STRING_LENGTH ] =
L"Молчать",
L"Подняться (|P|g|U|p)",
L"Смена уровня (|T|a|b)",
L"Забраться/Спрыгнуть",
L"Забраться/Спрыгнуть (|J)",
L"Присесть/Лечь (|P|g|D|n)",
L"Осмотреть (|C|t|r|l)",
L"Предыдущий боец",
+6 -2
View File
@@ -227,6 +227,10 @@ int EvalLua (const wchar_t* buff) {
return TRUE;
}
void ShutdownLua( ) {
lua_close(L);
void ShutdownLua( )
{
if(L)
{
lua_close(L);
}
}