335 GetSlopeTilehProc *get_slope_tileh_proc; |
335 GetSlopeTilehProc *get_slope_tileh_proc; |
336 } TileTypeProcs; |
336 } TileTypeProcs; |
337 |
337 |
338 |
338 |
339 enum { |
339 enum { |
340 WC_MAIN_WINDOW = 0x0, |
340 WC_MAIN_WINDOW = 0x00, |
341 WC_MAIN_TOOLBAR = 0x1, |
341 WC_MAIN_TOOLBAR = 0x01, |
342 WC_STATUS_BAR = 0x2, |
342 WC_STATUS_BAR = 0x02, |
343 WC_BUILD_TOOLBAR = 0x3, |
343 WC_BUILD_TOOLBAR = 0x03, |
344 WC_NEWS_WINDOW = 0x4, |
344 WC_NEWS_WINDOW = 0x04, |
345 WC_TOWN_DIRECTORY = 0x5, |
345 WC_TOWN_DIRECTORY = 0x05, |
346 WC_STATION_LIST = 0x6, |
346 WC_STATION_LIST = 0x06, |
347 WC_TOWN_VIEW = 0x7, |
347 WC_TOWN_VIEW = 0x07, |
348 WC_SMALLMAP = 0x8, |
348 WC_SMALLMAP = 0x08, |
349 WC_TRAINS_LIST = 0x9, |
349 WC_TRAINS_LIST = 0x09, |
350 WC_ROADVEH_LIST = 0xA, |
350 WC_ROADVEH_LIST = 0x0A, |
351 WC_SHIPS_LIST = 0xB, |
351 WC_SHIPS_LIST = 0x0B, |
352 WC_AIRCRAFT_LIST = 0xC, |
352 WC_AIRCRAFT_LIST = 0x0C, |
353 WC_VEHICLE_VIEW = 0xD, |
353 WC_VEHICLE_VIEW = 0x0D, |
354 WC_VEHICLE_DETAILS = 0xE, |
354 WC_VEHICLE_DETAILS = 0x0E, |
355 WC_VEHICLE_REFIT = 0xF, |
355 WC_VEHICLE_REFIT = 0x0F, |
356 WC_VEHICLE_ORDERS = 0x10, |
356 WC_VEHICLE_ORDERS = 0x10, |
357 WC_STATION_VIEW = 0x11, |
357 WC_STATION_VIEW = 0x11, |
358 WC_VEHICLE_DEPOT = 0x12, |
358 WC_VEHICLE_DEPOT = 0x12, |
359 WC_BUILD_VEHICLE = 0x13, |
359 WC_BUILD_VEHICLE = 0x13, |
360 WC_BUILD_BRIDGE = 0x14, |
360 WC_BUILD_BRIDGE = 0x14, |
361 WC_ERRMSG = 0x15, |
361 WC_ERRMSG = 0x15, |
362 WC_ASK_ABANDON_GAME = 0x16, |
362 WC_ASK_ABANDON_GAME = 0x16, |
363 WC_QUIT_GAME = 0x17, |
363 WC_QUIT_GAME = 0x17, |
364 WC_BUILD_STATION = 0x18, |
364 WC_BUILD_STATION = 0x18, |
365 WC_BUS_STATION = 0x19, |
365 WC_BUS_STATION = 0x19, |
366 WC_TRUCK_STATION = 0x1A, |
366 WC_TRUCK_STATION = 0x1A, |
367 WC_BUILD_DEPOT = 0x1B, |
367 WC_BUILD_DEPOT = 0x1B, |
368 WC_COMPANY = 0x1D, |
368 WC_COMPANY = 0x1D, |
369 WC_FINANCES = 0x1E, |
369 WC_FINANCES = 0x1E, |
370 WC_PLAYER_COLOR = 0x1F, |
370 WC_PLAYER_COLOR = 0x1F, |
371 WC_QUERY_STRING = 0x20, |
371 WC_QUERY_STRING = 0x20, |
372 WC_SAVELOAD = 0x21, |
372 WC_SAVELOAD = 0x21, |
373 WC_SELECT_GAME = 0x22, |
373 WC_SELECT_GAME = 0x22, |
374 WC_TOOLBAR_MENU = 0x24, |
374 WC_TOOLBAR_MENU = 0x24, |
375 WC_INCOME_GRAPH = 0x25, |
375 WC_INCOME_GRAPH = 0x25, |
376 WC_OPERATING_PROFIT = 0x26, |
376 WC_OPERATING_PROFIT = 0x26, |
377 WC_TOOLTIPS = 0x27, |
377 WC_TOOLTIPS = 0x27, |
378 WC_INDUSTRY_VIEW = 0x28, |
378 WC_INDUSTRY_VIEW = 0x28, |
379 WC_PLAYER_FACE = 0x29, |
379 WC_PLAYER_FACE = 0x29, |
380 WC_LAND_INFO = 0x2A, |
380 WC_LAND_INFO = 0x2A, |
381 WC_TOWN_AUTHORITY = 0x2B, |
381 WC_TOWN_AUTHORITY = 0x2B, |
382 WC_SUBSIDIES_LIST = 0x2C, |
382 WC_SUBSIDIES_LIST = 0x2C, |
383 WC_GRAPH_LEGEND = 0x2D, |
383 WC_GRAPH_LEGEND = 0x2D, |
384 WC_DELIVERED_CARGO = 0x2E, |
384 WC_DELIVERED_CARGO = 0x2E, |
385 WC_PERFORMANCE_HISTORY = 0x2F, |
385 WC_PERFORMANCE_HISTORY = 0x2F, |
386 WC_COMPANY_VALUE = 0x30, |
386 WC_COMPANY_VALUE = 0x30, |
387 WC_COMPANY_LEAGUE = 0x31, |
387 WC_COMPANY_LEAGUE = 0x31, |
388 WC_BUY_COMPANY = 0x32, |
388 WC_BUY_COMPANY = 0x32, |
389 WC_PAYMENT_RATES = 0x33, |
389 WC_PAYMENT_RATES = 0x33, |
390 WC_ENGINE_PREVIEW = 0x35, |
390 WC_ENGINE_PREVIEW = 0x35, |
391 WC_MUSIC_WINDOW = 0x36, |
391 WC_MUSIC_WINDOW = 0x36, |
392 WC_MUSIC_TRACK_SELECTION = 0x37, |
392 WC_MUSIC_TRACK_SELECTION = 0x37, |
393 WC_SCEN_LAND_GEN = 0x38, // also used for landscaping toolbar |
393 WC_SCEN_LAND_GEN = 0x38, // also used for landscaping toolbar |
394 WC_ASK_RESET_LANDSCAPE = 0x39, |
394 WC_ASK_RESET_LANDSCAPE = 0x39, |
395 WC_SCEN_TOWN_GEN = 0x3A, |
395 WC_SCEN_TOWN_GEN = 0x3A, |
396 WC_SCEN_INDUSTRY = 0x3B, |
396 WC_SCEN_INDUSTRY = 0x3B, |
397 WC_SCEN_BUILD_ROAD = 0x3C, |
397 WC_SCEN_BUILD_ROAD = 0x3C, |
398 WC_BUILD_TREES = 0x3D, |
398 WC_BUILD_TREES = 0x3D, |
399 WC_SEND_NETWORK_MSG = 0x3E, |
399 WC_SEND_NETWORK_MSG = 0x3E, |
400 WC_DROPDOWN_MENU = 0x3F, |
400 WC_DROPDOWN_MENU = 0x3F, |
401 WC_BUILD_INDUSTRY = 0x40, |
401 WC_BUILD_INDUSTRY = 0x40, |
402 WC_GAME_OPTIONS = 0x41, |
402 WC_GAME_OPTIONS = 0x41, |
403 WC_NETWORK_WINDOW = 0x42, |
403 WC_NETWORK_WINDOW = 0x42, |
404 WC_INDUSTRY_DIRECTORY = 0x43, |
404 WC_INDUSTRY_DIRECTORY = 0x43, |
405 WC_MESSAGE_HISTORY = 0x44, |
405 WC_MESSAGE_HISTORY = 0x44, |
406 WC_CHEATS = 0x45, |
406 WC_CHEATS = 0x45, |
407 WC_PERFORMANCE_DETAIL = 0x46, |
407 WC_PERFORMANCE_DETAIL = 0x46, |
408 WC_CONSOLE = 0x47, |
408 WC_CONSOLE = 0x47, |
409 WC_EXTRA_VIEW_PORT = 0x48, |
409 WC_EXTRA_VIEW_PORT = 0x48, |
410 WC_CLIENT_LIST = 0x49, |
410 WC_CLIENT_LIST = 0x49, |
411 WC_NETWORK_STATUS_WINDOW = 0x4A, |
411 WC_NETWORK_STATUS_WINDOW = 0x4A, |
412 WC_CUSTOM_CURRENCY = 0x4B, |
412 WC_CUSTOM_CURRENCY = 0x4B, |
413 WC_REPLACE_VEHICLE = 0x4C, |
413 WC_REPLACE_VEHICLE = 0x4C, |
414 WC_HIGHSCORE = 0x4D, |
414 WC_HIGHSCORE = 0x4D, |
415 WC_ENDSCREEN = 0x4E, |
415 WC_ENDSCREEN = 0x4E, |
416 WC_SIGN_LIST = 0x4F, |
416 WC_SIGN_LIST = 0x4F, |
417 WC_GENERATE_LANDSCAPE = 0x50, |
417 WC_GENERATE_LANDSCAPE = 0x50, |
418 WC_GENERATE_PROGRESS_WINDOW = 0x51, |
418 WC_GENERATE_PROGRESS_WINDOW = 0x51, |
419 WC_OK_CANCEL_QUERY = 0x52, |
419 WC_OK_CANCEL_QUERY = 0x52, |
420 }; |
420 }; |
421 |
421 |
422 |
422 |
423 enum { |
423 enum { |
424 EXPENSES_CONSTRUCTION = 0, |
424 EXPENSES_CONSTRUCTION = 0, |
425 EXPENSES_NEW_VEHICLES = 1, |
425 EXPENSES_NEW_VEHICLES = 1, |
426 EXPENSES_TRAIN_RUN = 2, |
426 EXPENSES_TRAIN_RUN = 2, |
427 EXPENSES_ROADVEH_RUN = 3, |
427 EXPENSES_ROADVEH_RUN = 3, |
428 EXPENSES_AIRCRAFT_RUN = 4, |
428 EXPENSES_AIRCRAFT_RUN = 4, |
429 EXPENSES_SHIP_RUN = 5, |
429 EXPENSES_SHIP_RUN = 5, |
430 EXPENSES_PROPERTY = 6, |
430 EXPENSES_PROPERTY = 6, |
431 EXPENSES_TRAIN_INC = 7, |
431 EXPENSES_TRAIN_INC = 7, |
432 EXPENSES_ROADVEH_INC = 8, |
432 EXPENSES_ROADVEH_INC = 8, |
433 EXPENSES_AIRCRAFT_INC = 9, |
433 EXPENSES_AIRCRAFT_INC = 9, |
434 EXPENSES_SHIP_INC = 10, |
434 EXPENSES_SHIP_INC = 10, |
435 EXPENSES_LOAN_INT = 11, |
435 EXPENSES_LOAN_INT = 11, |
436 EXPENSES_OTHER = 12, |
436 EXPENSES_OTHER = 12, |
437 }; |
437 }; |
438 |
438 |
439 // special string constants |
439 // special string constants |
440 enum SpecialStrings { |
440 enum SpecialStrings { |
441 |
441 |
442 // special strings for town names. the town name is generated dynamically on request. |
442 // special strings for town names. the town name is generated dynamically on request. |
443 SPECSTR_TOWNNAME_START = 0x20C0, |
443 SPECSTR_TOWNNAME_START = 0x20C0, |
444 SPECSTR_TOWNNAME_ENGLISH = SPECSTR_TOWNNAME_START, |
444 SPECSTR_TOWNNAME_ENGLISH = SPECSTR_TOWNNAME_START, |
445 SPECSTR_TOWNNAME_FRENCH, |
445 SPECSTR_TOWNNAME_FRENCH, |
446 SPECSTR_TOWNNAME_GERMAN, |
446 SPECSTR_TOWNNAME_GERMAN, |
447 SPECSTR_TOWNNAME_AMERICAN, |
447 SPECSTR_TOWNNAME_AMERICAN, |
448 SPECSTR_TOWNNAME_LATIN, |
448 SPECSTR_TOWNNAME_LATIN, |
449 SPECSTR_TOWNNAME_SILLY, |
449 SPECSTR_TOWNNAME_SILLY, |
460 SPECSTR_TOWNNAME_SWISS, |
460 SPECSTR_TOWNNAME_SWISS, |
461 SPECSTR_TOWNNAME_DANISH, |
461 SPECSTR_TOWNNAME_DANISH, |
462 SPECSTR_TOWNNAME_TURKISH, |
462 SPECSTR_TOWNNAME_TURKISH, |
463 SPECSTR_TOWNNAME_ITALIAN, |
463 SPECSTR_TOWNNAME_ITALIAN, |
464 SPECSTR_TOWNNAME_CATALAN, |
464 SPECSTR_TOWNNAME_CATALAN, |
465 SPECSTR_TOWNNAME_LAST = SPECSTR_TOWNNAME_CATALAN, |
465 SPECSTR_TOWNNAME_LAST = SPECSTR_TOWNNAME_CATALAN, |
466 |
466 |
467 // special strings for player names on the form "TownName transport". |
467 // special strings for player names on the form "TownName transport". |
468 SPECSTR_PLAYERNAME_START = 0x70EA, |
468 SPECSTR_PLAYERNAME_START = 0x70EA, |
469 SPECSTR_PLAYERNAME_ENGLISH = SPECSTR_PLAYERNAME_START, |
469 SPECSTR_PLAYERNAME_ENGLISH = SPECSTR_PLAYERNAME_START, |
470 SPECSTR_PLAYERNAME_FRENCH, |
470 SPECSTR_PLAYERNAME_FRENCH, |
471 SPECSTR_PLAYERNAME_GERMAN, |
471 SPECSTR_PLAYERNAME_GERMAN, |
472 SPECSTR_PLAYERNAME_AMERICAN, |
472 SPECSTR_PLAYERNAME_AMERICAN, |
473 SPECSTR_PLAYERNAME_LATIN, |
473 SPECSTR_PLAYERNAME_LATIN, |
474 SPECSTR_PLAYERNAME_SILLY, |
474 SPECSTR_PLAYERNAME_SILLY, |
475 SPECSTR_PLAYERNAME_LAST = SPECSTR_PLAYERNAME_SILLY, |
475 SPECSTR_PLAYERNAME_LAST = SPECSTR_PLAYERNAME_SILLY, |
476 |
476 |
477 SPECSTR_ANDCO_NAME = 0x70E6, |
477 SPECSTR_ANDCO_NAME = 0x70E6, |
478 SPECSTR_PRESIDENT_NAME = 0x70E7, |
478 SPECSTR_PRESIDENT_NAME = 0x70E7, |
479 SPECSTR_SONGNAME = 0x70E8, |
479 SPECSTR_SONGNAME = 0x70E8, |
480 |
480 |
481 // reserve 32 strings for the *.lng files |
481 // reserve 32 strings for the *.lng files |
482 SPECSTR_LANGUAGE_START = 0x7100, |
482 SPECSTR_LANGUAGE_START = 0x7100, |
483 SPECSTR_LANGUAGE_END = 0x711f, |
483 SPECSTR_LANGUAGE_END = 0x711f, |
484 |
484 |
485 // reserve 32 strings for various screen resolutions |
485 // reserve 32 strings for various screen resolutions |
486 SPECSTR_RESOLUTION_START = 0x7120, |
486 SPECSTR_RESOLUTION_START = 0x7120, |
487 SPECSTR_RESOLUTION_END = 0x713f, |
487 SPECSTR_RESOLUTION_END = 0x713f, |
488 |
488 |
489 // reserve 32 strings for screenshot formats |
489 // reserve 32 strings for screenshot formats |
490 SPECSTR_SCREENSHOT_START = 0x7140, |
490 SPECSTR_SCREENSHOT_START = 0x7140, |
491 SPECSTR_SCREENSHOT_END = 0x715F, |
491 SPECSTR_SCREENSHOT_END = 0x715F, |
492 |
492 |
493 // Used to implement SetDParamStr |
493 // Used to implement SetDParamStr |
494 STR_SPEC_DYNSTRING = 0xF800, |
494 STR_SPEC_DYNSTRING = 0xF800, |
495 STR_SPEC_USERSTRING = 0xF808, |
495 STR_SPEC_USERSTRING = 0xF808, |
496 }; |
496 }; |
497 |
497 |
498 typedef void PlaceProc(TileIndex tile); |
498 typedef void PlaceProc(TileIndex tile); |
499 |
499 |
500 enum { |
500 enum { |