Commit Graph

241 Commits

Author SHA1 Message Date
belugas b51d58a44c (svn r6485) -NewGRF Feature: Match the order of TTDPatch's currencies with those used in OTTD.
This will not reorder OTTD's currencies, but will make it so that
currencies affected by a grf will be those aimed by the writer.
2006-09-20 00:34:06 +00:00
belugas f9ea48bf3d (svn r6454) -Fix(r6108) : Allow custom currency to display both prefix and suffix
-Codechange : Divide rate of conversion from grf by 1000, to match OTTD internal system
2006-09-15 02:52:17 +00:00
belugas c05c81f35c (svn r6289) -Fix(r6108) : case 0x48 (generic text) should not have been set over newstations.
It grabbed everyting. Instead, we are now using ids for that purpose,  0xC9, oxD0, 0xDC (FS#304 by Osai)
- Protect newgrf text from entries of 1 char and fewer
- Protect currency name from an overrun of ids
Thanks to glx
2006-09-01 02:56:02 +00:00
rubidium 27cee58ab8 (svn r6204) -Cleanup: replace non-indentation with spaces; like '}<TAB>else {' -> '} else {', tabs between code and comment, etc. 2006-08-28 18:53:03 +00:00
belugas a4d69aa9f7 (svn r6131) -Codechange : Complete all missing _ttdpatch_flags entries
-Feature : both unifiedmaglevmode are now set.
Maglev and monorail are not allowed to run on each other tracks and will not be.
Setting those flags will allow grfsets as the Norvegian one to be loaded
-Codechange : link the TTDPatch's irregularstations with OTTD's nonuniform_stations
-Codechange : Reformat the whole array (thanks Rubidium, it sure looks better now)
2006-08-25 19:18:16 +00:00
belugas c9b32982fc (svn r6108) -NewGRF Feature: Implement currencies replacment via grf file.
All properties can now be modified i.e:
Introduction date for euro conversion
Currency name, decimal separator, currency symbol (before or after amount)
and the rate compared to the base currency, the british pound
2006-08-25 00:41:10 +00:00
rubidium e159ada7a2 (svn r5975) -Cleanup: use ORIGINAL_BASE_YEAR & ORIGINAL_MAX_YEAR where the functions really depend on the original date format.
-Cleanup: use DAYS_TILL_ORIGINAL_BASE_YEAR where the date variables are in the old date format and conversions are needed.
-Cleanup: replace one (forgotten) instance of uint16 with Date.
2006-08-20 12:39:17 +00:00
truelight 5fb6c9e1cc (svn r5974) -Codechange: added casts all around the place to make Windows 64bit happy (michi_cc) 2006-08-20 12:09:32 +00:00
rubidium 7cfd3eb618 (svn r5934) -Cleanup: forgot some conversions to Year and to Date
-Cleanup: use _cur_year instead of _date for some (year based) comparisons
-Cleanup: remove a magic number in favour of another (less) magic number
2006-08-17 20:22:35 +00:00
rubidium 3cab5f30c0 (svn r5926) -Codechange: make _cur_year contain the full year, instead of the offset since 1920
-Codechange: store all year related variables that are _not_ stored in a savegame/transported over the network in the same format as _cur_year
2006-08-16 11:39:55 +00:00
tron 7c9165827e (svn r5787) Rename width, height and unk of struct DrawTileSeqStruct to size_{x,y,z} 2006-08-06 08:23:19 +00:00
Darkvater 7b95782c9d (svn r5685) - Codechange: s/FiosCheckFileExists/FioCheckFileExists/ to unify the naming of these functions. 2006-07-31 22:15:39 +00:00
belugas 5606e6d7b6 (svn r5496) -CodeChange: Removed two compiler warnings
- add newline at end of file in currency.c
 - remove unused (for now) CargosChangeInfo
2006-07-14 17:54:04 +00:00
tron 2b27073156 (svn r5391) Miscellaneous, mostly bracing and whitespace, nothing spectacular 2006-06-27 21:25:53 +00:00
peter1138 dfa60b0832 (svn r5201) - NewGRF: add loading of default refit costs. This information is not yet used 2006-06-09 16:35:07 +00:00
peter1138 5e3dd8dd78 (svn r5105) - NewGRF: Move callbackmask from *VehicleInfo to EngineInfo. This simplifies code that works with more than one vehicle type. 2006-06-04 18:22:32 +00:00
peter1138 4aa2054b1a (svn r5059) - NewGRF: store a GRFFile pointer reference for each pointer, instead of just the GRF ID. 2006-05-31 17:31:08 +00:00
peter1138 08092832e4 (svn r4965) - NewGRF: add support for action 0x06 (modify sprite data) for pseudo sprites 2006-05-23 20:59:01 +00:00
belugas 6f86766b21 (svn r4928) CodeChange : Rename functions referring to "Vehicle" for "Feature".
Mainly because newgrf deals with more than just vehicles.
2006-05-20 18:10:39 +00:00
peter1138 910aa90bd3 (svn r4917) - NewGRF: remove _custom_sprites_base, now used only to rejig vehicle images from ttd games, as we redetermine all vehicle images after game load anyway. 2006-05-20 08:12:59 +00:00
peter1138 d40bc5a264 (svn r4897) - NewGRF: don't allow addition of empty strings in action 4 2006-05-17 13:05:44 +00:00
peter1138 5a65e3301e (svn r4896) - NewGRF: add support for vehicle property 0x25 (user defined data) used by variable 0x42. 2006-05-17 08:20:36 +00:00
peter1138 e29d60b21b (svn r4869) - NewGRF: support setting train list vehicle width to 32 instead of 29 pixels, for sets which use 32 pixel long engines/wagons. 2006-05-14 20:58:12 +00:00
belugas 4938d0a011 (svn r4838) Newgrf : Add empty base for newcargos 2006-05-12 00:27:12 +00:00
peter1138 bdcbe2af5c (svn r4832) - NewGRF: add support for original string ID to newgrf text handling. So far, this is used for vehicles when no English or American translation is provided. 2006-05-11 16:27:46 +00:00
peter1138 0bbd367245 (svn r4824) - NewGRF: add support for getting/setting miscellaneous grf flags (param 0x9E) 2006-05-11 12:41:02 +00:00
peter1138 151e79231d (svn r4821) - NewGRF: simplify parameter retrieval in Action 0x0D 2006-05-11 09:54:11 +00:00
peter1138 90be3fadf7 (svn r4818) - NewGRF: add support for reading another GRF file's parameters, and warn if GRF Resource Management is tried. 2006-05-10 21:55:44 +00:00
peter1138 bd28390b2e (svn r4817) - NewGRF: allow partial support for parameter retrieval in action D. 2006-05-10 21:41:16 +00:00
peter1138 03b96da61b (svn r4816) - NewGRF: action 7/9 improvements:
- split of parameter retrieving to separate function,
  - handle param size for grf parameters,
  - add more grfid (param 0x88) tests.
2006-05-10 21:34:57 +00:00
peter1138 d2fc3431a1 (svn r4811) - NewGRF: only check a sprite set's feature when assigning a sprite result sprite group. 2006-05-10 06:23:43 +00:00
peter1138 e33db100b9 (svn r4781) - NewGRF: give _traininfo_vehicle_pitch a proper declaration 2006-05-08 10:01:34 +00:00
peter1138 a56ef34f8d (svn r4777) - NewGRF: moving warning message about feature callbacks above station code and change minimum length for action 3 from 7 to 6 bytes. 2006-05-07 17:43:03 +00:00
peter1138 d3fea69041 (svn r4769) - Newstations: add newstations ttdpatch flag 2006-05-07 11:41:44 +00:00
peter1138 31a54a6835 (svn r4767) - Newstations: fix loading / use of custom ground sprites 2006-05-07 10:58:53 +00:00
peter1138 ec1edb127a (svn r4763) - Newstations: revert r4762, instead map bit the palette modifier from bit 14 to bit 31 on GRF load. 2006-05-06 22:55:21 +00:00
peter1138 0a532f8491 (svn r4760) - Newstations: change the way custom stations are allocated when loading from GRF, as the current way was flawed (reallocing memory which is referenced elsewhere) 2006-05-06 22:20:16 +00:00
peter1138 82037a5abe (svn r4752) - NewGRF: brokenness slipped through... 2006-05-06 20:27:32 +00:00
peter1138 416f8ec5fb (svn r4751) - NewGRF: when assigning new texts, ignore the feature byte as some sets use generic feature always. Also, don't add vehicle id shifts if the vehicle id is out of range. 2006-05-06 20:20:02 +00:00
peter1138 a55ac6efac (svn r4738) - Newstations: attach all sprite group cargo types, not just the default and purchase pseudo types, to a station spec. 2006-05-04 19:15:02 +00:00
peter1138 b4a254cd43 (svn r4722) - Newstations: release station sprite layout data when uninitializing NewGRF data. 2006-05-03 21:07:44 +00:00
peter1138 debfc88862 (svn r4720) - Newstations: instead of literally copying sprite layout data, just copy the pointer to the existing data. 2006-05-03 20:42:45 +00:00
peter1138 76411cef63 (svn r4719) - Newstations: instead of drawing nothing, fall back to the default sprite layout if a station layout specifies so. 2006-05-03 20:35:41 +00:00
peter1138 6b01384faf (svn r4716) - NewGRF: fix problem with loading custom station class id; use BSWAP32() only on variables, not functions. 2006-05-03 19:31:00 +00:00
peter1138 a8bd882577 (svn r4704) - NewGRF: in Action 0x03, set the engine type's GRF ID on the 'default' cargo type, not for each specific cargo. Fixes '(undefined string)' issues, as some engines weren't set properly. 2006-05-02 21:58:02 +00:00
peter1138 b1f436df59 (svn r4658) - NewGRF: add Action 0xNN comments before each action handler. This mainly aids code navigation... 2006-05-02 09:31:59 +00:00
peter1138 b1e928e889 (svn r4657) - NewGRF: use grf_load_byte() in favour of array accesses 2006-05-02 09:18:51 +00:00
Darkvater 08e10e167f (svn r4655) - Fix [NewGRF r4654]: /me bangs head against the wall....gaah 2006-05-01 21:47:30 +00:00
Darkvater c0cf93a9b0 (svn r4654) - Fix [NewGRF]: Properly read in the GRFID. This fixes GRFID checking and activation/deactivation. Do swap the GRFID for displaying purposes. 2006-05-01 21:45:35 +00:00
peter1138 6ed002db53 (svn r4652) - NewGRF: support loading of foundation and canal graphics from NewGRF files via action 5 2006-05-01 18:57:43 +00:00
peter1138 6942f235cc (svn r4651) - NewGRF: support loading of catenary sprites from NewGRF files. This actually works by replacing our hardcoded sprites. 2006-05-01 16:54:18 +00:00
peter1138 4e85de164c (svn r4650) - NewGRF: use the correct type for _cur_spriteid 2006-05-01 16:52:43 +00:00
peter1138 f4dcf22f2c (svn r4645) - NewGRF: pretend to be the last alpha version of TTDPatch in our version value. 2006-05-01 12:07:44 +00:00
peter1138 ddbb61199b (svn r4632) - NewGRF: support loading of helicopter rotor sprites (mart3p) 2006-04-30 18:41:16 +00:00
peter1138 967752fe7c (svn r4631) - NewGRF: fix incorrect length check 2006-04-30 18:39:31 +00:00
belugas 187013b6a3 (svn r4593) CodeChange : Renamed spec (when using StationSpec) to statspec.
This is following the same scheme as for IndustrySpec
2006-04-27 18:28:56 +00:00
peter1138 a0c9b03801 (svn r4588) - NewGRF: silence a false compiler warning 2006-04-27 06:33:21 +00:00
peter1138 2f01c7d990 (svn r4583) - NewGRF: Revamp sprite group loading to support advanced varadjusts and variable size. These are not yet processed, however. 2006-04-26 20:44:28 +00:00
peter1138 b81e6dd6a2 (svn r4582) - NewGRF: include an additional check to see if a spriteset id is within range. 2006-04-26 20:18:29 +00:00
peter1138 2b96c107fa (svn r4581) - NewGRF: replace replicated action 2 code with two functions to simplify code somewhat. Also check that a sprite id is
valid.
2006-04-26 19:42:05 +00:00
peter1138 7555d8528b (svn r4559) - NewGRF: keep a record of which grf an engine is defined in. Will be used in the future. 2006-04-23 22:25:33 +00:00
peter1138 72d3fabb58 (svn r4552) - NewGRF: fix braino... in r4550, new_scheme should true when the version is 7 or higher, not less than 7... 2006-04-23 18:37:53 +00:00
peter1138 70bd867d71 (svn r4551) - NewGRF: add string handling for newstations. 2006-04-23 18:37:06 +00:00
peter1138 baebc8d47e (svn r4550) - NewGRF: update string system to new rules: a grf version of less than 6 uses the old scheme, of 7 or more uses the new scheme. (Moving targets, yay...) 2006-04-23 18:27:53 +00:00
peter1138 b54ebaba70 (svn r4549) - NewGRF: store the grf version from Action 0x08. 2006-04-23 18:03:55 +00:00
peter1138 14b6860e62 (svn r4546) - NewGRF: add support for Action 0x05, type 0x04: replacement signal graphics. Thanks to Purno for supplying data to test
with.
2006-04-23 15:57:34 +00:00
peter1138 b5ce99c52d (svn r4540) - NewGRF: don't treat integer values as boolean. 2006-04-23 11:13:06 +00:00
peter1138 c77f77304a (svn r4539) - NewGRF: always check that the action 0x2 feature matches the action 0x1, not just on 'normal' sprite groups. 2006-04-23 10:50:09 +00:00
peter1138 f74a683f90 (svn r4537) - NewGRF: replace if cascade with a switch block in the sprite group loader 2006-04-23 09:46:23 +00:00
Darkvater 5a8d992eaa (svn r4529) - Codechange: Use proper naming for hex numbers in debug prints eg. 0xF3A6. Use fixed lengths where applicable (newgrf). Unfortunately '%#X' is unusable since it gives 0XFF3 and '%#x' gives 0xff3 while we want 0xFF3 :P 2006-04-22 13:56:16 +00:00
Darkvater e3280971b1 (svn r4527) - Feature [NewGRF]: Add support for specifying parameters to GRF files. Usage: "mygrf = 1". You can pass up to 128 parameters, each one seperated by a comma or a space-character. Big thanks to peter1138 for the inspiration and examples. 2006-04-22 13:17:13 +00:00
peter1138 2e7034f059 (svn r4517) - NewGRF: fix and complete the feature list 2006-04-22 06:54:25 +00:00
peter1138 0b3659b41a (svn r4510) - NewGRF bounds checking:
- check Engine ID is within range
  - don't try setting a vehicle name if the string id is not a valid Engine ID
2006-04-21 20:59:04 +00:00
peter1138 ae94d7b26f (svn r4496) - NewGRF: switch custom engine names from storing a char* to using the new StringID based text system. Vehicle name
translations now work.
2006-04-21 07:06:31 +00:00
belugas aab91d287a (svn r4493) Newgrf : Action 04. Beginning of implementation.
Some TODOs left, but the core is there.
Thanks to Peter1138 for code, advice and patience
And to Patchman for letting us define a lot of langids :)
2006-04-21 03:00:20 +00:00
peter1138 92d8af75db (svn r4486) - NewGRF: Create and use a memory pool to manage sprite groups. This
reduces the amount of house keeping we do and the chance of memory 
leaks.
2006-04-20 20:51:57 +00:00
peter1138 9ed8c6d4ac (svn r4483) - NewGRF: Dynamically allocate memory for 'real' spritegroups. This removes the limit of 16 loading/unloading states, although will result in less memory usage as most of the time the full fixed allocation wasn't used. 2006-04-20 13:33:40 +00:00
peter1138 0c889ec8c6 (svn r4474) - NewGRF: Skip non-fatal errors when not in stage 2. 2006-04-19 07:50:16 +00:00
celestar 22f82bba2e (svn r4463) -Codechange. Include vehicle.h directly instead of implicitly via station.h in a number of source files 2006-04-18 05:16:13 +00:00
peter1138 e3cd311d35 (svn r4453) - NewGRF: fix two compile warnings. 2006-04-16 20:24:10 +00:00
peter1138 2766728629 (svn r4452) - NewGRF: switch to unsigned ints for array indices. 2006-04-16 18:57:07 +00:00
Darkvater b5bbc23b2c (svn r4447) - NewGRF: It seems I committed printing action NOP Action 0x0C which is mainly used for comments. So leave it in, but fix the created warning. Use proper action name for check_length() in Action 0x10 2006-04-16 11:33:26 +00:00
Darkvater 12770adba6 (svn r4439) - NewGRF: Add support for Action 0x10. This also required an extra pre-stage (before initialize and activation) to scan the GRF file for GOTO labels. Big thanks for peter1138 for the guidance and answers, as well as parts of the code. 2006-04-15 21:27:59 +00:00
peter1138 3e8423f5d8 (svn r4431) - NewGRF: rename nfo_line to _nfo_line, to avoid confusing Darkvater ;) 2006-04-15 16:40:54 +00:00
Darkvater 5c9acdb182 (svn r4429) - CodeChange[newgrf]: Action0, prop 0x0D. use calloc to allocate memory and zero it out and change the loop a little 2006-04-15 16:03:45 +00:00
peter1138 1a1148c247 (svn r4414) - NewGRF: Don't execute sprite replacements (action 0x0A) in the
initialization stage.
2006-04-14 15:58:38 +00:00
peter1138 96e794be2d (svn r4356) - NewGRF: Load more newstation properties. 2006-04-11 13:00:06 +00:00
peter1138 64a237b192 (svn r4355) - NewGRF: Minor clean up; use the correct return type and remove extraneous brackets. 2006-04-11 10:53:07 +00:00
peter1138 5e345e0e7f (svn r4352) - NewGRF Codechange: dynamically allocate the memory used to store custom station data. This saves us approximately 40KB per GRF file, if there are no stations defined. 2006-04-11 10:05:52 +00:00
peter1138 32622f2c7b (svn r4339) - Comment Change: NewGRF, update comments for units of speed 2006-04-09 18:08:20 +00:00
celestar a7d8ad0004 (svn r4150) -Feature: Merged elrails into trunk. Thanks to Tron for lots of code and proofreading, thanks to peter1138 for another lot of code and ideas. 2006-03-29 16:30:26 +00:00
peter1138 56c3f42397 (svn r3684) - NewGRF: Support loading of miscellaneous flags (not used yet) 2006-02-28 08:13:15 +00:00
peter1138 d6cb4c82da (svn r3678) - NewGRF Codechange: remove redundant braces and temporary variables. 2006-02-27 15:35:22 +00:00
tron 49c7eb934b (svn r3613) Some more const, indentation, whitespace and similar stuff 2006-02-18 14:41:24 +00:00
peter1138 9936e39924 (svn r3606) - NewGRF: Convert from TTDP railtype values to our own railtypes. (These are currently the same, but won't be forever...) 2006-02-15 12:53:36 +00:00
peter1138 b5b4491471 (svn r3603) - NewGRF: Support loading of AI rank data 2006-02-13 22:19:23 +00:00
peter1138 67573ed605 (svn r3586) - NewGRF: Load callback masks for all vehicle types. 2006-02-11 07:34:05 +00:00
peter1138 500a7e6627 (svn r3546) - NewGRF feature: Implement rail vehicle 'property' 0x1A: allows shuffling order of rail vehicle purchase list (and replace vehicle list) 2006-02-04 21:48:46 +00:00
peter1138 b88904f345 (svn r3524) - Split newgrf features from engine.[ch] into newgrf_engine.[ch], and add the new files to project files. 2006-02-03 12:55:21 +00:00
tron b844aa2db3 (svn r3520) Remove unused parameters from some functions 2006-02-02 07:15:46 +00:00