Changeset - r61:34b3b5b01dfc
[Not reviewed]
master
0 4 0
orudge - 20 years ago 2004-08-15 22:17:46
orudge@openttd.org
(svn r62) - Added "None" as option for number of industries in difficulty settings
- Updated French translation (by testman57)
4 files changed with 78 insertions and 28 deletions:
0 comments (0 inline, 0 general)
industry_cmd.c
Show inline comments
 
@@ -1543,67 +1543,71 @@ Industry *CreateNewIndustry(uint tile, i
 

	
 
	if (!_check_new_industry_procs[spec->check_proc](tile, type))
 
		return NULL;
 

	
 
	if (!(t=CheckMultipleIndustryInTown(tile, type)))
 
		return NULL;
 

	
 
	/* pick a random layout */
 
	it = spec->table[(spec->num_table * (uint16)Random()) >> 16];
 

	
 
	if (!CheckIfIndustryTilesAreFree(tile, it, type, t))
 
		return NULL;
 

	
 
	if (!CheckIfTooCloseToIndustry(tile, type))
 
		return NULL;
 

	
 
	if ( (i = AllocateIndustry()) == NULL)
 
		return NULL;
 

	
 
	DoCreateNewIndustry(i, tile, type, it, t, 0x10);
 
	
 
	return i;
 
}
 

	
 
static const byte _numof_industry_table[3][12] = {
 
static const byte _numof_industry_table[4][12] = {
 
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
 
	{0, 1, 1, 1, 2, 2, 3, 3, 4, 4, 5},
 
	{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10},
 
	{0, 2, 3, 4, 6, 7, 8, 9, 10, 10, 10},
 
};
 

	
 
static void PlaceInitialIndustry(byte type, int amount)
 
{
 
	int num = _numof_industry_table[_opt.diff.number_industries][amount];
 

	
 
	assert(num > 0);
 
 
	if (_opt.diff.number_industries != 0)
 
	{
 
		assert(num > 0);
 

	
 
	do {
 
		int i = 2000;
 
		do {
 
			if (CreateNewIndustry(TILE_MASK(Random()), type) != NULL)
 
				break; 
 
		} while (--i != 0);
 
	} while (--num);
 
			int i = 2000;
 
			do {
 
				if (CreateNewIndustry(TILE_MASK(Random()), type) != NULL)
 
					break; 
 
			} while (--i != 0);
 
		} while (--num);
 
	}
 
}
 

	
 
void GenerateIndustries()
 
{
 
	const byte *b;
 

	
 
	b = _industry_create_table[_opt.landscape];
 
	do {
 
		PlaceInitialIndustry(b[1], b[0]);
 
	} while ( (b+=2)[0] != 0);
 
}
 

	
 
static void ExtChangeIndustryProduction(Industry *i)
 
{
 
	bool closeit;
 
	int j;
 

	
 
	if (_industry_close_mode[i->type] == 0) return;
 

	
 
	closeit = true;
 

	
 
	if (_industry_close_mode[i->type] == 2) {
 
		if ( (byte)(_cur_year - i->last_prod_year) < 5 || !CHANCE16(1,180))
 
			closeit = false;
lang/english.txt
Show inline comments
 
@@ -1698,49 +1698,50 @@ STR_6802_MEDIUM							:{BLACK}Medium
 
STR_6803_HARD							:{BLACK}Hard
 
STR_6804_CUSTOM							:{BLACK}Custom
 
############ range for difficulty levels ends
 

	
 
############ range for difficulty settings starts
 
STR_6805_MAXIMUM_NO_COMPETITORS			:{LTBLUE}Maximum no. competitors: {ORANGE}{COMMA16}
 
STR_6806_COMPETITOR_START_TIME			:{LTBLUE}Competitor start time: {ORANGE}{STRING}
 
STR_6807_NO_OF_TOWNS					:{LTBLUE}No. of towns: {ORANGE}{STRING}
 
STR_6808_NO_OF_INDUSTRIES				:{LTBLUE}No. of industries: {ORANGE}{STRING}
 
STR_6809_MAXIMUM_INITIAL_LOAN_000		:{LTBLUE}Maximum initial loan: {ORANGE}{CURRENCY}
 
STR_680A_INITIAL_INTEREST_RATE			:{LTBLUE}Initial interest rate: {ORANGE}{COMMA16}%
 
STR_680B_VEHICLE_RUNNING_COSTS			:{LTBLUE}Vehicle running costs: {ORANGE}{STRING}
 
STR_680C_CONSTRUCTION_SPEED_OF_COMPETITOR:{LTBLUE}Construction speed of competitors: {ORANGE}{STRING}
 
STR_680D_INTELLIGENCE_OF_COMPETITORS	:{LTBLUE}Intelligence of competitors: {ORANGE}{STRING}
 
STR_680E_VEHICLE_BREAKDOWNS				:{LTBLUE}Vehicle breakdowns: {ORANGE}{STRING}
 
STR_680F_SUBSIDY_MULTIPLIER				:{LTBLUE}Subsidy multiplier: {ORANGE}{STRING}
 
STR_6810_COST_OF_CONSTRUCTION			:{LTBLUE}Cost of construction: {ORANGE}{STRING}
 
STR_6811_TERRAIN_TYPE					:{LTBLUE}Terrain type: {ORANGE}{STRING}
 
STR_6812_QUANTITY_OF_SEA_LAKES			:{LTBLUE}Quantity of sea/lakes: {ORANGE}{STRING}
 
STR_6813_ECONOMY						:{LTBLUE}Economy: {ORANGE}{STRING}
 
STR_6814_TRAIN_REVERSING				:{LTBLUE}Train reversing: {ORANGE}{STRING}
 
STR_6815_DISASTERS						:{LTBLUE}Disasters: {ORANGE}{STRING}
 
STR_16816_CITY_APPROVAL				:{LTBLUE}City council's attitude towards area restructuring: {ORANGE}{STRING}
 
############ range for difficulty settings ends
 

	
 
 
STR_26816_NONE							:None
 
STR_6816_LOW							:Low
 
STR_6817_NORMAL							:Normal
 
STR_6818_HIGH							:High
 
STR_6819								:{BLACK}<
 
STR_681A								:{BLACK}>
 
STR_681B_VERY_SLOW						:Very Slow
 
STR_681C_SLOW							:Slow
 
STR_681D_MEDIUM							:Medium
 
STR_681E_FAST							:Fast
 
STR_681F_VERY_FAST						:Very Fast
 
STR_VERY_LOW							:Very Low
 
STR_6820_LOW							:Low
 
STR_6821_MEDIUM							:Medium
 
STR_6822_HIGH							:High
 
STR_6823_NONE							:None
 
STR_6824_REDUCED						:Reduced
 
STR_6825_NORMAL							:Normal
 
STR_6826_X1_5							:x1.5
 
STR_6827_X2								:x2
 
STR_6828_X3								:x3
 
STR_6829_X4								:x4
 
STR_682A_VERY_FLAT						:Very Flat
 
STR_682B_FLAT							:Flat
 
STR_682C_HILLY							:Hilly
lang/french.txt
Show inline comments
 
@@ -325,48 +325,51 @@ STR_MULTIPLAYER							:{BLACK}Multijoueu
 
STR_0148_GAME_OPTIONS					:{BLACK}Options
 

	
 
STR_0150_SOMEONE						:quelqu'un{SKIP}{SKIP}
 
STR_0151_MAP_OF_WORLD					:Carte du monde
 
STR_0152_TOWN_DIRECTORY					:Annuaire des Villes
 
STR_0153_SUBSIDIES						:Subventions
 

	
 
############ range for menu	starts
 
STR_0154_OPERATING_PROFIT_GRAPH			:Profit d'opération
 
STR_0155_INCOME_GRAPH					:Revenu
 
STR_0156_DELIVERED_CARGO_GRAPH			:Cargaison livrée
 
STR_0157_PERFORMANCE_HISTORY_GRAPH		:Historique de performance
 
STR_0158_COMPANY_VALUE_GRAPH			:Valeur de la compagnie
 
STR_0159_CARGO_PAYMENT_RATES			:Valeur des cargaisons
 
STR_015A_COMPANY_LEAGUE_TABLE			:Classement des compagnies
 
############ range for menu	ends
 

	
 
STR_015B_TRANSPORT_TYCOON_DELUXE		:{WHITE}OpenTTD
 
STR_015C_SAVE_GAME						:Sauvegarder la partie
 
STR_015D_LOAD_GAME						:Charger une partie
 
STR_015E_QUIT_GAME						:Abandonner la partie
 
STR_015F_QUIT							:Quitter le jeu
 
STR_0160_ARE_YOU_SURE_YOU_WANT_TO		:{YELLOW}Êtes vous sur de vouloir abandonner cette partie?
 
STR_0161_QUIT_GAME						:{WHITE}Abandonner
 
STR_SORT_TIP							:{BLACK}Sélectionne l'ordre de tri
 
STR_SORT_BY_NAME						:{BLACK}Nom
 
STR_SORT_BY_DATE						:{BLACK}Date
 

	
 
############ range for months starts
 
STR_0162_JAN							:Jan
 
STR_0163_FEB							:Fév
 
STR_0164_MAR							:Mar
 
STR_0165_APR							:Avr
 
STR_0166_MAY							:Mai
 
STR_0167_JUN							:Jun
 
STR_0168_JUL							:Jul
 
STR_0169_AUG							:Aut
 
STR_016A_SEP							:Sep
 
STR_016B_OCT							:Oct
 
STR_016C_NOV							:Nov
 
STR_016D_DEC							:Déc
 
############ range for months ends
 

	
 
STR_016E								:{TINYFONT}{STRING}{} {STRING}
 
STR_016F								:{TINYFONT}{STRING}{} {STRING}{}{NUMU16}
 
STR_0170								:{TINYFONT}{STRING}-
 
STR_0171_PAUSE_GAME						:{BLACK}Suspendre la partie
 
STR_0172_SAVE_GAME_ABANDON_GAME			:{BLACK}Sauvegarder, abandonner, quitter
 
STR_0173_DISPLAY_LIST_OF_COMPANY		:{BLACK}Afficher la liste des stations de la compagnie
 
STR_0174_DISPLAY_MAP					:{BLACK}Afficher la carte
 
STR_0175_DISPLAY_MAP_TOWN_DIRECTORY		:{BLACK}Afficher la carte, annuaire des villes
 
@@ -876,135 +879,171 @@ STR_MONTH_SEP							:Septembre
 
STR_MONTH_OCT							:Octobre
 
STR_MONTH_NOV							:Novembre
 
STR_MONTH_DEC							:Décembre
 

	
 
STR_HEADING_FOR_STATION					:{LTBLUE}En route pour {STATION}
 
STR_HEADING_FOR_STATION_VEL				:{LTBLUE}En route pour {STATION}, {VELOCITY}
 
STR_NO_ORDERS							:{LTBLUE}Aucun ordre
 
STR_NO_ORDERS_VEL						:{LTBLUE}Aucun ordre, {VELOCITY}
 

	
 
STR_PASSENGERS						:passagers
 
STR_BAGS									:sacs
 
STR_TONS									:tonnes
 
STR_LITERS								:litres
 
STR_ITEMS									:items
 
STR_CRATES								:caisses
 
STR_RES_OTHER							:autre
 
STR_NOTHING								:
 

	
 
STR_CANT_SHARE_ORDER_LIST				:{WHITE}Impossible de partager les ordres...
 
STR_CANT_COPY_ORDER_LIST				:{WHITE}Impossible de copier les ordres...
 
STR_END_OF_SHARED_ORDERS				:{SETX 10}- - Fin des ordres partagés - -
 

	
 
STR_TRAIN_IS_LOST						:{WHITE}Train {COMMA16} est perdu.
 
STR_TRAIN_IS_UNPROFITABLE				:{WHITE}Train {COMMA16} a eu un profit de {CURRENCY} l'an dernier
 
STR_EURO_INTRODUCE						:{BLACK}{BIGFONT}Union Monétaire Européenne !{}{}L'Euro est introduit en tant que monnaie unique pour les transactions dans votre pays !
 

	
 
# Start of order review system. 
 
# DON'T ADD OR REMOVE LINES HERE
 
STR_TRAIN_HAS_TOO_FEW_ORDERS					:{WHITE}Train {COMMA16} a trop peu d'ordres dans son itinéraire
 
STR_TRAIN_HAS_VOID_ORDER					:{WHITE}Train {COMMA16} a un ordre vide
 
STR_TRAIN_HAS_DUPLICATE_ENTRY					:{WHITE}Train {COMMA16} a des ordres en double
 
STR_TRAIN_HAS_INVALID_ENTRY					:{WHITE}Train {COMMA16} a une station invalide dans ses ordres
 
STR_ROADVEHICLE_HAS_TOO_FEW_ORDERS				:{WHITE}Véhicule {COMMA16} a trop peu d'ordres dans son itinéraire
 
STR_ROADVEHICLE_HAS_VOID_ORDER					:{WHITE}Véhicule {COMMA16} a un ordre vide
 
STR_ROADVEHICLE_HAS_DUPLICATE_ENTRY				:{WHITE}Véhicule {COMMA16} a des ordres en double
 
STR_ROADVEHICLE_HAS_INVALID_ENTRY				:{WHITE}Véhicule {COMMA16} a une station invalide dans ses ordres
 
STR_SHIP_HAS_TOO_FEW_ORDERS					:{WHITE}Navire {COMMA16} a trop peu d'ordres dans son itinéraire
 
STR_SHIP_HAS_VOID_ORDER						:{WHITE}Navire {COMMA16} a un ordre vide
 
STR_SHIP_HAS_DUPLICATE_ENTRY					:{WHITE}Navire {COMMA16} a des ordres en double
 
STR_SHIP_HAS_INVALID_ENTRY					:{WHITE}Navire {COMMA16} a une station invalide dans ses ordres
 
STR_AIRCRAFT_HAS_TOO_FEW_ORDERS					:{WHITE}Aéronef {COMMA16} a trop peu d'ordres dans son itinéraire
 
STR_AIRCRAFT_HAS_VOID_ORDER					:{WHITE}Aéronef {COMMA16} a un ordre vide
 
STR_AIRCRAFT_HAS_DUPLICATE_ENTRY				:{WHITE}Aéronef {COMMA16} a des ordres en double
 
STR_AIRCRAFT_HAS_INVALID_ENTRY					:{WHITE}Aéronef {COMMA16} a une station invalide dans ses ordres
 
# end of order system
 

	
 
STR_TRAIN_AUTORENEW_FAILED					:{WHITE}Le renouvellement automatique a échoué sur Train {COMMA16} (limite d'argent)
 
STR_ROADVEHICLE_AUTORENEW_FAILED				:{WHITE}Le renouvellement automatique a échoué sur Véhicule {COMMA16} (limite d'argent)
 
STR_SHIP_AUTORENEW_FAILED					:{WHITE}Le renouvellement automatique a échoué sur Navire {COMMA16} (limite d'argent)
 
STR_AIRCRAFT_AUTORENEW_FAILED					:{WHITE}Le renouvellement automatique a échoué sur Aéronef {COMMA16} (limite d'argent)
 

	
 
STR_CONFIG_PATCHES						:{BLACK}Options Avancées
 
STR_CONFIG_PATCHES_TIP					:{BLACK}Configurer les options avancées
 
STR_CONFIG_PATCHES_CAPTION				:{WHITE}Options Avancées
 

	
 
STR_CONFIG_PATCHES_OFF					:Désactivé
 
STR_CONFIG_PATCHES_ON					:Activé
 
STR_CONFIG_PATCHES_VEHICLESPEED			:{LTBLUE}Afficher vitesse du véhicule dans la barre d'état: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_BUILDONSLOPES		:{LTBLUE}Construction côtière et sur plans inclinés: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_EXTRADYNAMITE		:{LTBLUE}Permettre la suppression de plus de routes, ponts, tunnels, etc possédés par une ville: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_MAMMOTHTRAINS		:{LTBLUE}Permettre les trains plus longs: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_REALISTICACCEL		:{LTBLUE}Permettre les accélérations réalistes pour les trains: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_JOINSTATIONS			:{LTBLUE}Joindre les gares juxtaposées: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_FULLLOADANY			:{LTBLUE}Pleine cargaison par un seul type, si 'chargement complet': {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_INFLATION				:{LTBLUE}Inflation: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_NOTRAINSERVICE		:{LTBLUE}Désactiver l'entretien automatique des trains: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_SELECTGOODS			:{LTBLUE}Livrer cargaison seulement lorsqu'il y a une demande: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_LONGBRIDGES			:{LTBLUE}Permettre la construction de ponts longs: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_GOTODEPOT			:{LTBLUE}Permettre l'ordre d'aller au dépôt: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_BUILDXTRAIND			:{LTBLUE}Permettre la construction de ressources primaires: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_MULTIPINDTOWN		:{LTBLUE}Permettre plusieurs industries similaires par ville: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_SAMEINDCLOSE			:{LTBLUE}Permettre plusieurs industries similaires à proximité: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_LONGDATE				:{LTBLUE}Afficher la date complète dans la barre d'état: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_SIGNALSIDE			:{LTBLUE}Signaux ferroviaires du côté du sens de conduite: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_SHOWFINANCES			:{LTBLUE}Afficher le bilan de finances en fin d'année: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_NEW_NONSTOP			:{LTBLUE}Compatibilité TTDPatch "nonstop handling": {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_ROADVEH_QUEUE		:{LTBLUE}Road vehicle queueing (avec effets quantiques): {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_AUTOSCROLL			:{LTBLUE}Défiler la vue horizontalement avec le pointeur: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_BRIBE				:{LTBLUE}Permettre la corruption de la municipalité: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_NEW_DEPOT_FINDING	:{LTBLUE}Nouvelle recherche de dépôt: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_NONUNIFORM_STATIONS	:{LTBLUE}Gares non uniformes: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_NEW_TRAIN_PATHFIND	:{LTBLUE}Nouvel algorithme de recherche de route: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_BUILD_IN_PAUSE		:{LTBLUE}Construire pendant le mode pause: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_SMALL_AIRPORTS		:{LTBLUE}Toujours permettre les petits aéroports: {ORANGE}{STRING}
 

	
 
STR_CONFIG_PATCHES_LOST_TRAIN_DAYS		:{LTBLUE}Un train est perdu si aucun progrès n'est fait pendant: {ORANGE}{STRING} jours
 
STR_CONFIG_PATCHES_LOST_TRAIN_DAYS_DISABLED			:{LTBLUE}Un train est perdu si aucun progrès n'est fait pendant: {ORANGE}désactivé
 
STR_CONFIG_PATCHES_ORDER_REVIEW					:{LTBLUE}Vérif. des ordres des véhicules : {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_ORDER_REVIEW_OFF				:non
 
STR_CONFIG_PATCHES_ORDER_REVIEW_EXDEPOT				:oui, sauf véhicules stoppés
 
STR_CONFIG_PATCHES_ORDER_REVIEW_ON				:de tous les véhicules
 
STR_CONFIG_PATCHES_WARN_INCOME_LESS		:{LTBLUE}Alerte en cas de profit négatif pour un train: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_NEVER_EXPIRE_VEHICLES	:{LTBLUE}Les véhicules n'expirent jamais: {ORANGE}{STRING}
 
STR_CONFIG_AUTORENEW_VEHICLE			:{LTBLUE}Renouvellement automatique des vieux véhicules
 
STR_CONFIG_PATCHES_AUTORENEW_VEHICLE				:{LTBLUE}Renouveller automatiquement les véhicules quand ils sont vieux
 
STR_CONFIG_PATCHES_AUTORENEW_MONTHS				:{LTBLUE}Auto-renouveller le véhicule {ORANGE}{STRING}{LTBLUE} mois avant/après l'âge maximum
 
STR_CONFIG_PATCHES_AUTORENEW_MONEY				:{LTBLUE}Argent nécessaire pour le renouvellement automatique : {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_ERRMSG_DURATION		:{LTBLUE}Temps d'affichage des messages d'erreur: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_SNOWLINE_HEIGHT		:{LTBLUE}Altitude d'enneigement: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_STATION_SPREAD		:{LTBLUE}Etendue maximum des stations: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_SERVICEATHELIPAD	:{LTBLUE}Entretenir automatiquement les hélicoptères à l'heliport: {ORANGE}{STRING}
 

	
 
STR_CONFIG_PATCHES_MAX_TRAINS			:{LTBLUE}Nombre de trains max. par joueur: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_MAX_ROADVEH			:{LTBLUE}Nombre de véhicules routiers max. par joueur: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_MAX_AIRCRAFT			:{LTBLUE}Nombre d'avions max. par joueur: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_MAX_SHIPS			:{LTBLUE}Nombre de navires max. par joueur: {ORANGE}{STRING}
 

	
 
STR_CONFIG_PATCHES_AI_BUILDS_TRAINS		:{LTBLUE}Désactiver les trains pour l'ordinateur: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_AI_BUILDS_ROADVEH	:{LTBLUE}Désactiver les véhicules routiers pour l'ordinateur: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_AI_BUILDS_AIRCRAFT	:{LTBLUE}Désactiver les avions pour l'ordinateur: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_AI_BUILDS_SHIPS		:{LTBLUE}Désactiver les navires pour l'ordinateur: {ORANGE}{STRING}
 

	
 
STR_CONFIG_PATCHES_SERVINT_TRAINS		:{LTBLUE}Maintenance des trains tous les: {ORANGE}{STRING} jours
 
STR_CONFIG_PATCHES_SERVINT_TRAINS_DISABLED	:{LTBLUE}Maintenance des trains tous les: {ORANGE}désactivé
 
STR_CONFIG_PATCHES_SERVINT_ROADVEH		:{LTBLUE}Maintenance des véhicules routiers tous les: {ORANGE}{STRING} jours
 
STR_CONFIG_PATCHES_SERVINT_ROADVEH_DISABLED	:{LTBLUE}Maintenance des véhicules routiers tous les: {ORANGE}désactivé
 
STR_CONFIG_PATCHES_SERVINT_AIRCRAFT		:{LTBLUE}Maintenance des aéronefs tous les: {ORANGE}{STRING} jours
 
STR_CONFIG_PATCHES_SERVINT_AIRCRAFT_DISABLED	:{LTBLUE}Maintenance des aéronefs tous les: {ORANGE}désactivé
 
STR_CONFIG_PATCHES_SERVINT_SHIPS		:{LTBLUE}Maintenance des navires tous les: {ORANGE}{STRING} jours
 
STR_CONFIG_PATCHES_SERVINT_SHIPS_DISABLED			:{LTBLUE}Maintenance des navires tous les: {ORANGE}désactivé
 

	
 
STR_CONFIG_PATCHES_COLORED_NEWS_DATE	:{LTBLUE}Les journeaux en couleurs apparaissent en: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_STARTING_DATE		:{LTBLUE}Date de départ: {ORANGE}{STRING}
 
STR_CONFIG_PATCHES_SMOOTH_ECONOMY		:{LTBLUE}Permettre une économie stable (plus de petits changements)
 
STR_CONFIG_PATCHES_DRAG_SIGNALS_DENSITY		:{LTBLUE}Espacements des signaux en mode drag & drop : {ORANGE}{STRING} case(s)
 

	
 
STR_CONFIG_PATCHES_GUI					:{BLACK}Interface
 
STR_CONFIG_PATCHES_CONSTRUCTION			:{BLACK}Construction
 
STR_CONFIG_PATCHES_VEHICLES				:{BLACK}Véhicules
 
STR_CONFIG_PATCHES_STATIONS				:{BLACK}Stations
 
STR_CONFIG_PATCHES_ECONOMY				:{BLACK}Economie
 
STR_CONFIG_PATCHES_AI					:{BLACK}Compétiteurs
 

	
 
STR_CONFIG_PATCHES_DISABLED				:désactivé
 
STR_CONFIG_PATCHES_INT32				:{INT32}
 
STR_CONFIG_PATCHES_CURRENCY				:{CURRENCY}
 

	
 
STR_CONFIG_PATCHES_QUERY_CAPT			:{WHITE}Entrez une valeur
 

	
 

	
 
STR_CHEATS										:{WHITE}Triches
 
STR_CHEATS_TIP								:{BLACK}Les cases à cocher indiquent que vous avez déjà utilisé cette triche auparavant
 
STR_CHEATS_WARNING						:{BLACK}Attention ! Vous êtes sur le point de trahir vos adversaires. Gardez en tête qu'une telle honte sera gardée en mémoire pour l'éternité.
 
STR_CHEAT_MONEY								:{LTBLUE}Augmenter l'argent de {CURRENCY64}
 
STR_CHEAT_CHANGE_PLAYER				:{LTBLUE}Jouer en tant que joueur n°: {ORANGE}{COMMA16}
 
STR_CHEAT_EXTRA_DYNAMITE			:{LTBLUE}Bulldozer magique (enlèvement industries et objets fixes): {ORANGE}{STRING}
 
STR_CHEAT_CROSSINGTUNNELS			:{LTBLUE}Les tunnels peuvent se croiser: {ORANGE}{STRING}
 

	
 

	
 
STR_TOWNDIR_NAME						:{BLACK}Nom
 
STR_TOWNDIR_POPULATION					:{BLACK}Population
 
STR_TOWNDIR_SORT_TIP					:{BLACK}Ordre de classement
 
STR_SORT_BY_POPULATION					:{BLACK}Population
 

	
 
STR_HEADING_FOR_CHECKPOINT				:{LTBLUE}En route pour {CHECKPOINT}
 
STR_HEADING_FOR_CHECKPOINT_VEL			:{LTBLUE}En route pour {CHECKPOINT}, {VELOCITY}
 

	
 
STR_GO_TO_CHECKPOINT					:Passant par {CHECKPOINT}
 

	
 
STR_CHECKPOINTNAME_CITY					:Point de contrôle {TOWN}
 
STR_CHECKPOINTNAME_CITY_SERIAL			:Point de contrôle {TOWN} #{COMMA16}
 
STR_LANDINFO_CHECKPOINT					:Point de contrôle
 

	
 
STR_CHECKPOINT_VIEWPORT					:{WHITE}{CHECKPOINT}
 
STR_CHECKPOINT_VIEWPORT_TINY			:{TINYFONT}{WHITE}{CHECKPOINT}
 
STR_CHECKPOINT_RAW						:{CHECKPOINT}
 
STR_EDIT_CHECKPOINT_NAME				:{WHITE}Modifier nom du point de contrôle
 

	
 
STR_CANT_CHANGE_CHECKPOINT_NAME			:{WHITE}Impossible de modifier le nom du point de contrôle...
 
STR_CONVERT_RAIL_TO_CHECKPOINT_TIP		:{BLACK}Convertir rail en point de contrôle
 
STR_CANT_BUILD_TRAIN_CHECKPOINT			:{WHITE}Impossible de construire point de contrôle ici...
 
STR_CANT_REMOVE_TRAIN_CHECKPOINT		:{WHITE}Impossible de retirer point de contrôle ici...
 

	
 
STR_BUILD_AUTORAIL_TIP					:{BLACK}Construire les rails avec le mode AutoRail
 

	
 
STR_NO_TOWN_IN_SCENARIO					:{WHITE}...il n'y a pas de ville dans ce scenario
 

	
 
@@ -1046,53 +1085,54 @@ STR_MESSAGE_HISTORY					:{WHITE}Historiq
 
STR_MESSAGE_HISTORY_TIP			:{BLACK}Liste des messages récents
 
STR_MESSAGES_DISABLE_ALL		:{BLACK}Tout déscactiver
 
STR_MESSAGES_ENABLE_ALL			:{BLACK}Tout activer
 

	
 
STR_CONSTRUCT_COAL_MINE_TIP				:{BLACK}Construire une mine de charbon
 
STR_CONSTRUCT_FOREST_TIP				:{BLACK}Planter une forêt
 
STR_CONSTRUCT_OIL_RIG_TIP				:{BLACK}Construire une plateforme pétrolière
 
STR_CONSTRUCT_FARM_TIP					:{BLACK}Financer une ferme
 
STR_CONSTRUCT_COPPER_ORE_MINE_TIP		:{BLACK}Construire une mine de cuivre
 
STR_CONSTRUCT_OIL_WELLS_TIP				:{BLACK}Forer pour trouver du pétrole
 
STR_CONSTRUCT_GOLD_MINE_TIP				:{BLACK}Construire une mine d'or
 
STR_CONSTRUCT_DIAMOND_MINE_TIP			:{BLACK}Construire une mine de diamants
 
STR_CONSTRUCT_IRON_ORE_MINE_TIP			:{BLACK}Construire une mine de fer
 
STR_CONSTRUCT_FRUIT_PLANTATION_TIP		:{BLACK}Financer une plantation de fruits
 
STR_CONSTRUCT_RUBBER_PLANTATION_TIP		:{BLACK}Financer une plantation de caoutchouc
 
STR_CONSTRUCT_WATER_SUPPLY_TIP			:{BLACK}Financer une station de pompage
 
STR_CONSTRUCT_COTTON_CANDY_TIP			:{BLACK}Planter une forêt de barbe à papa
 
STR_CONSTRUCT_BATTERY_FARM_TIP			:{BLACK}Financer une ferme de piles
 
STR_CONSTRUCT_COLA_WELLS_TIP			:{BLACK}Forer pour trouver du cola
 
STR_CONSTRUCT_PLASTIC_FOUNTAINS_TIP		:{BLACK}Financer des fontaines à plastique
 
STR_CONSTRUCT_BUBBLE_GENERATOR_TIP		:{BLACK}Construire un générateur de bulles
 
STR_CONSTRUCT_TOFFEE_QUARRY_TIP			:{BLACK}Construire une carrière de caramel
 
STR_CONSTRUCT_SUGAR_MINE_TIP			:{BLACK}Construire une mine de sucre
 

	
 
STR_INDUSTRYDIR_NAME					:{BLACK}Nom
 
STR_INDUSTRYDIR_PRODUCTION				:{BLACK}Production
 
STR_INDUSTRYDIR_TYPE					:{BLACK}Type
 
STR_SORT_BY_PRODUCTION					:{BLACK}Production
 
STR_SORT_BY_TYPE					:{BLACK}Type
 
STR_SORT_BY_TRANSPORTED					:{BLACK}Transporté
 
STR_INDUSTRYDIR_CAPTION					:{WHITE}Industries
 
STR_INDUSTRYDIR_ITEM					:{ORANGE}{TOWN} {STRING}{BLACK} ({STRING})
 
STR_INDUSTRYDIR_ITEM					:{ORANGE}{TOWN} {STRING}{BLACK} ({STRING}){YELLOW} ({COMMA16}% transporté)
 
STR_INDUSTRYDIR_ITEM_TWO				:{ORANGE}{TOWN} {STRING}{BLACK} ({STRING}/{STRING}){YELLOW} ({COMMA16}%/{COMMA16}% transporté)
 
STR_INDUSTRYDIR_ITEM_NOPROD				:{ORANGE}{TOWN} {STRING}
 

	
 
STR_INDUSTRY_TOO_CLOSE				:{WHITE}...trop proche d'une autre industrie
 

	
 
STR_RAIL_REFIT_VEHICLE_TO_CARRY			:{BLACK}Réamenager le train pour d'autres marchandises
 
STR_RAIL_REFIT							:{WHITE}{STRING} (Réaménager)
 
STR_RAIL_REFIT_VEHICLE					:{BLACK}Réaménager le train
 
STR_RAIL_SELECT_TYPE_OF_CARGO_FOR		:{BLACK}Choix du type de marchandises à transporter
 
STR_RAIL_REFIT_TO_CARRY_HIGHLIGHTED		:{BLACK}Réaménager le train pour les marchandises sélectionnées
 
STR_RAIL_CAN_T_REFIT_VEHICLE			:{WHITE}Impossible de réaménager le train...
 

	
 

	
 
############ network gui strings
 

	
 
TEMP_STRING_NO_NETWORK						:{WHITE}L'interface réseau ne fonctionne pas pour le moment!
 

	
 
STR_NETWORK_MULTIPLAYER						:{WHITE}Multijoueur
 

	
 
STR_NETWORK_FIND_SERVER						:{BLACK}Trouver un serveur
 
STR_NETWORK_FIND_SERVER_TIP				:{BLACK}Cherche sur le réseau un serveur
 
STR_NETWORK_DIRECT_CONNECT				:{BLACK}Connection directe
 
STR_NETWORK_ENTER_IP							:{BLACK}Entrez l'adresse IP du serveur
 
STR_NETWORK_DIRECT_CONNECT_TIP		:{BLACK}Permet la connection directe à une IP connue
 
STR_NETWORK_START_SERVER					:{BLACK}Démarrer le serveur
 
@@ -1628,157 +1668,162 @@ STR_SV_STNAME_AIRPORT					:{STRING} Aéroport
 
STR_SV_STNAME_OILFIELD					:{STRING} Gisement
 
STR_SV_STNAME_MINES						:{STRING} Mines
 
STR_SV_STNAME_DOCKS						:{STRING} Docks
 
STR_SV_STNAME_BUOY_1					:{STRING} Bouée 1
 
STR_SV_STNAME_BUOY_2					:{STRING} Bouée 2
 
STR_SV_STNAME_BUOY_3					:{STRING} Bouée 3
 
STR_SV_STNAME_BUOY_4					:{STRING} Bouée 4
 
STR_SV_STNAME_BUOY_5					:{STRING} Bouée 5
 
STR_SV_STNAME_BUOY_6					:{STRING} Bouée 6
 
STR_SV_STNAME_BUOY_7					:{STRING} Bouée 7
 
STR_SV_STNAME_BUOY_8					:{STRING} Bouée 8
 
STR_SV_STNAME_BUOY_9					:{STRING} Bouée 9
 
STR_SV_STNAME_ANNEXE					:{STRING} Annexe
 
STR_SV_STNAME_SIDINGS					:{STRING} Voies de garage
 
STR_SV_STNAME_BRANCH					:{STRING} Embranchement
 
STR_SV_STNAME_UPPER						:Haut {STRING}
 
STR_SV_STNAME_LOWER						:Bas {STRING}
 
STR_SV_STNAME_HELIPORT					:{STRING} Heliport
 
STR_SV_STNAME_FOREST					:{STRING} Forêt
 

	
 
############ end of	savegame specific region!
 

	
 
##id 0x6800
 
STR_6800_DIFFICULTY_LEVEL				:{WHITE}Niveau de difficulté
 
STR_OPTIONS_SAVE_CHANGES				:{BLACK}Sauver
 

	
 
############ range for difficulty levels starts
 
STR_6801_EASY							:{BLACK}Facile
 
STR_6802_MEDIUM							:{BLACK}Moyen
 
STR_6803_HARD							:{BLACK}Difficile
 
STR_6804_CUSTOM							:{BLACK}Personnalisé
 
############ range for difficulty levels ends
 

	
 
############ range for difficulty settings starts
 
STR_6805_MAXIMUM_NO_COMPETITORS			:{LTBLUE}Nombre maximum d'opposants: {ORANGE}{COMMA16}
 
STR_6806_COMPETITOR_START_TIME			:{LTBLUE}Démarrage des opposants: {ORANGE}{STRING}
 
STR_6807_NO_OF_TOWNS					:{LTBLUE}Nombre de villes: {ORANGE}{STRING}
 
STR_6808_NO_OF_INDUSTRIES				:{LTBLUE}Nombre d'industries: {ORANGE}{STRING}
 
STR_6809_MAXIMUM_INITIAL_LOAN_000		:{LTBLUE}Prêt initial maximum: {ORANGE}{CURRENCY},000
 
STR_680A_INITIAL_INTEREST_RATE			:{LTBLUE}Taux d'interêt initial: {ORANGE}{COMMA16}%
 
STR_680B_VEHICLE_RUNNING_COSTS			:{LTBLUE}Coûts d'entretien: {ORANGE}{STRING}
 
STR_680C_CONSTRUCTION_SPEED_OF_COMPETITOR:{LTBLUE}Vitesse de développement des opposants: {ORANGE}{STRING}
 
STR_680D_INTELLIGENCE_OF_COMPETITORS	:{LTBLUE}Intelligence des opposants: {ORANGE}{STRING}
 
STR_680E_VEHICLE_BREAKDOWNS				:{LTBLUE}Pannes des véhicules: {ORANGE}{STRING}
 
STR_680F_SUBSIDY_MULTIPLIER				:{LTBLUE}Multiplicateur de subvention: {ORANGE}{STRING}
 
STR_6810_COST_OF_CONSTRUCTION			:{LTBLUE}Coût des constructions: {ORANGE}{STRING}
 
STR_6811_TERRAIN_TYPE					:{LTBLUE}Type de terrain: {ORANGE}{STRING}
 
STR_6812_QUANTITY_OF_SEA_LAKES			:{LTBLUE}Quantité de mer/lacs: {ORANGE}{STRING}
 
STR_6813_ECONOMY						:{LTBLUE}Economie: {ORANGE}{STRING}
 
STR_6814_TRAIN_REVERSING				:{LTBLUE}Demi-tour des trains: {ORANGE}{STRING}
 
STR_6815_DISASTERS						:{LTBLUE}Désastres: {ORANGE}{STRING}
 
STR_16816_CITY_APPROVAL						:{LTBLUE}Attitude du conseil municipal envers la restructuration de la zone : {ORANGE}{STRING}
 
############ range for difficulty settings ends
 

	
 
STR_6816_LOW							:Bas
 
STR_6817_NORMAL							:Normal
 
STR_6818_HIGH							:Élevé
 
STR_6819								:{BLACK}<
 
STR_681A								:{BLACK}>
 
STR_681B_VERY_SLOW						:Très Lent
 
STR_681C_SLOW							:Lent
 
STR_681D_MEDIUM							:Moyen
 
STR_681E_FAST							:Rapide
 
STR_681F_VERY_FAST						:Très Rapide
 
STR_VERY_LOW							:Très bas
 
STR_6820_LOW							:Bas
 
STR_6821_MEDIUM							:Moyen
 
STR_6822_HIGH							:Élevé
 
STR_6823_NONE							:Aucune
 
STR_6824_REDUCED						:Réduites
 
STR_6825_NORMAL							:Normales
 
STR_6826_X1_5							:x1.5
 
STR_6827_X2								:x2
 
STR_6828_X3								:x3
 
STR_6829_X4								:x4
 
STR_682A_VERY_FLAT						:Très plat
 
STR_682B_FLAT							:Plat
 
STR_682C_HILLY							:Collines
 
STR_682D_MOUNTAINOUS					:Montagneux
 
STR_682E_STEADY							:Stable
 
STR_682F_FLUCTUATING					:Fluctuant
 
STR_6830_IMMEDIATE						:Immédiat
 
STR_6831_3_MONTHS_AFTER_PLAYER			:3 mois après le joueur
 
STR_6832_6_MONTHS_AFTER_PLAYER			:6 mois après le joueur
 
STR_6833_9_MONTHS_AFTER_PLAYER			:9 mois après le joueur
 
STR_6834_AT_END_OF_LINE_AND_AT_STATIONS	:A la fin de la ligne et aux gares
 
STR_6835_AT_END_OF_LINE_ONLY			:A la fin de la ligne seulement
 
STR_6836_OFF							:Désactivé
 
STR_6837_ON								:Activé
 
STR_6838_SHOW_HI_SCORE_CHART			:{BLACK}Afficher le tableau des scores
 
STR_6839_PERMISSIVE						:Laxiste
 
STR_683A_TOLERANT						:Tolérant
 
STR_683B_HOSTILE						:Hostile
 

	
 

	
 
##id 0x7000
 
STR_7000								:
 
STR_7001								:{WHITE}{STRING}{BLACK}{STRING}
 
STR_7002_PLAYER_1						: (Joueur 1)
 
STR_7003_PLAYER_2						: (Joueur 2)
 
STR_7002_PLAYER							:(Joueur {COMMA16})
 
STR_7004_NEW_FACE						:{BLACK}Nouveau visage
 
STR_7005_COLOR_SCHEME					:{BLACK}Couleur
 
STR_7006_COLOR_SCHEME					:{GOLD}Couleur:
 
STR_7007_NEW_COLOR_SCHEME				:{WHITE}Nouvelle couleur
 
STR_7008_COMPANY_NAME					:{BLACK}Nom de la société
 
STR_7009_PRESIDENT_NAME					:{BLACK}Nom du P.D.G.
 
STR_700A_COMPANY_NAME					:Nom de la société
 
STR_700B_PRESIDENT_S_NAME				:Nom du P.D.G.
 
STR_700C_CAN_T_CHANGE_COMPANY_NAME		:{WHITE}Impossible de changer le nom de compagnie...
 
STR_700D_CAN_T_CHANGE_PRESIDENT			:{WHITE}Impossible de changer le nom du P.D.G. ...
 
STR_700E_FINANCES						:{WHITE}Finances: {STRING}{BLACK}{STRING}
 
STR_700F_EXPENDITURE_INCOME				:{WHITE}Dépenses/Revenus
 
STR_7010								:{WHITE}{NUMU16}
 
STR_7011_CONSTRUCTION					:{GOLD}Construction
 
STR_7012_NEW_VEHICLES					:{GOLD}Nouveaux Véhicules
 
STR_7013_TRAIN_RUNNING_COSTS			:{GOLD}Entretien des trains
 
STR_7014_ROAD_VEH_RUNNING_COSTS			:{GOLD}Entretien des véhicules
 
STR_7015_AIRCRAFT_RUNNING_COSTS			:{GOLD}Entretien des aéronefs
 
STR_7016_SHIP_RUNNING_COSTS				:{GOLD}Entretien des navires
 
STR_7017_PROPERTY_MAINTENANCE			:{GOLD}Entretien de la propriété
 
STR_7018_TRAIN_INCOME					:{GOLD}Revenu ferroviaire
 
STR_7019_ROAD_VEHICLES_INCOME			:{GOLD}Revenu routier
 
STR_701A_AIRCRAFT_INCOME				:{GOLD}Revenu aérien
 
STR_701B_SHIP_INCOME					:{GOLD}Revenu naval
 
STR_701C_LOAN_INTEREST					:{GOLD}Intérêts du prêt
 
STR_701D_OTHER							:{GOLD}Autres
 
STR_701E								:{BLACK}-{CURRENCY64}
 
STR_701F								:{BLACK}+{CURRENCY64}
 
STR_7020_TOTAL							:{WHITE}Total:
 
STR_7021								:{STRING}{STRING}
 
STR_7022_INCOME_GRAPH					:{WHITE}Graphique du Revenu
 
STR_7023								:{CURRCOMPACT}
 
STR_7024								:{COMMA32}
 
STR_7025_OPERATING_PROFIT_GRAPH			:{WHITE}Graphique du profit d'opération
 
STR_7026_BANK_BALANCE					:{WHITE}Equilibre bancaire
 
STR_7027_LOAN							:{WHITE}Prêt
 
STR_7028								:{BLACK}{CURRENCY64}
 
STR_7029_BORROW							:{BLACK}Emprunter {SKIP}{SKIP}{SKIP}{CURRENCY}
 
STR_702A_REPAY							:{BLACK}Rembourser {SKIP}{SKIP}{SKIP}{CURRENCY}
 
STR_7029_BORROW							:{BLACK}Emprunter {SKIP}{SKIP}{SKIP}{SKIP}{CURRENCY}
 
STR_702A_REPAY							:{BLACK}Rembourser {SKIP}{SKIP}{SKIP}{SKIP}{CURRENCY}
 
STR_702B_MAXIMUM_PERMITTED_LOAN			:{WHITE}...le prêt maximum est de {CURRENCY}
 
STR_702C_CAN_T_BORROW_ANY_MORE_MONEY	:{WHITE}Impossible d'emprunter plus...
 
STR_702D_LOAN_ALREADY_REPAYED			:{WHITE}...Prêt déjà remboursé
 
STR_702E_REQUIRED						:{WHITE}...{CURRENCY} nécessaires
 
STR_702F_CAN_T_REPAY_LOAN				:{WHITE}Impossible de rembourser...
 
STR_7030_SELECT_NEW_FACE_FOR_PRESIDENT	:{BLACK}Choix d'un nouveau visage pour le P.D.G.
 
STR_7031_CHANGE_THE_COMPANY_VEHICLE		:{BLACK}Change la couleur des véhicules
 
STR_7032_CHANGE_THE_PRESIDENT_S			:{BLACK}Change le nom du président directeur général
 
STR_7033_CHANGE_THE_COMPANY_NAME		:{BLACK}Change le nom de la compagnie
 
STR_7034_CLICK_ON_SELECTED_NEW_COLOR	:{BLACK}Cliquez pour choisir une couleur
 
STR_7035_INCREASE_SIZE_OF_LOAN			:{BLACK}Augmenter le prêt
 
STR_7036_REPAY_PART_OF_LOAN				:{BLACK}Rembourser une partie du prêt
 
STR_7037_PRESIDENT						:{WHITE}{STRING}{}{GOLD}(President)
 
STR_7038_INAUGURATED					:{GOLD}Inauguré en: {WHITE}{NUMU16}
 
STR_7039_VEHICLES						:{GOLD}Vehicules: 
 
STR_703A_TRAIN							:{WHITE}{COMMA16} train
 
STR_703B_TRAINS							:{WHITE}{COMMA16} trains
 
STR_703C_ROAD_VEHICLE					:{WHITE}{COMMA16} véhicule
 
STR_703D_ROAD_VEHICLES					:{WHITE}{COMMA16} véhicules
 
STR_703E_AIRCRAFT						:{WHITE}{COMMA16} aéronef
 
STR_703F_AIRCRAFT						:{WHITE}{COMMA16} aéronefs
 
STR_7040_SHIP							:{WHITE}{COMMA16} navires
 
STR_7041_SHIPS							:{WHITE}{COMMA16} navires
 
STR_7042_NONE							:{WHITE}Aucun
settings_gui.c
Show inline comments
 
@@ -422,78 +422,78 @@ static const WindowDesc _game_options_de
 
	WC_GAME_OPTIONS,0,
 
	WDF_STD_TOOLTIPS | WDF_STD_BTN | WDF_DEF_WIDGET | WDF_RESTORE_DPARAM | WDF_UNCLICK_BUTTONS,
 
	_game_options_widgets,
 
	GameOptionsWndProc
 
};
 

	
 

	
 
void ShowGameOptions()
 
{
 
	DeleteWindowById(WC_GAME_OPTIONS, 0);
 
	AllocateWindowDesc(&_game_options_desc);
 
}
 

	
 
typedef struct {
 
	int16 min;
 
	int16 max;
 
	int16 step;
 
	StringID str;
 
} GameSettingData;
 

	
 
static const GameSettingData _game_setting_info[] = {
 
	{0,7,1,0},
 
	{0,3,1,STR_6830_IMMEDIATE},
 
	{0,2,1,STR_6816_LOW},
 
	{0,2,1,STR_6816_LOW},
 
	{0,3,1,STR_26816_NONE},
 
	{100,500,50,0},
 
	{2,4,1,0},
 
	{0,2,1,STR_6820_LOW},
 
	{0,4,1,STR_681B_VERY_SLOW},
 
	{0,2,1,STR_6820_LOW},
 
	{0,2,1,STR_6823_NONE},
 
	{0,3,1,STR_6826_X1_5},
 
	{0,2,1,STR_6820_LOW},
 
	{0,3,1,STR_682A_VERY_FLAT},
 
	{0,3,1,STR_VERY_LOW},
 
	{0,1,1,STR_682E_STEADY},
 
	{0,1,1,STR_6834_AT_END_OF_LINE_AND_AT_STATIONS},
 
	{0,1,1,STR_6836_OFF},
 
	{0,2,1,STR_6839_PERMISSIVE},
 
};
 

	
 
static bool FORCEINLINE GetBitAndShift(uint32 *b)
 
{
 
	uint32 x = *b;
 
	*b >>= 1;
 
	return (x&1) != 0;
 
}
 

	
 
static GameOptions _opt_mod_temp;
 

	
 
static const int16 _default_game_diff[3][GAME_DIFFICULTY_NUM] = {
 
	{2, 2, 1, 2, 300, 2, 0, 2, 0, 1, 2, 0, 1, 0, 0, 0, 0, 0},
 
	{4, 1, 1, 1, 150, 3, 1, 3, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1},
 
	{7, 0, 2, 1, 100, 4, 1, 3, 2, 2, 0, 2, 3, 2, 1, 1, 1, 2},
 
	{2, 2, 1, 3, 300, 2, 0, 2, 0, 1, 2, 0, 1, 0, 0, 0, 0, 0},
 
	{4, 1, 1, 2, 150, 3, 1, 3, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1},
 
	{7, 0, 2, 2, 100, 4, 1, 3, 2, 2, 0, 2, 3, 2, 1, 1, 1, 2},
 
};
 

	
 
void SetDifficultyLevel(int mode, GameOptions *gm_opt)
 
{
 
	int i;
 
	assert(mode <= 3);
 

	
 
	gm_opt->diff_level = mode;
 
	if (mode != 3) { // not custom
 
		for(i = 0; i != GAME_DIFFICULTY_NUM; i++)
 
			((int*)&gm_opt->diff)[i] = _default_game_diff[mode][i];
 
	}
 
}
 

	
 
extern void StartupEconomy();
 

	
 
static void GameDifficultyWndProc(Window *w, WindowEvent *e)
 
{
 
	switch(e->event) {
 
	case WE_PAINT: {
 
		uint32 click_a, click_b, disabled;
 
		int i;
 
		int x,y,value;
 

	
0 comments (0 inline, 0 general)