Commit Graph

362 Commits (bad5d6d6a250ee406bd787d522f180908cc2e009)

Author SHA1 Message Date
peter1138 f767baba58 (svn r12839) -Codechange: Allocate temporary engine data when loading GRFs as needed instead of statically. 16 years ago
peter1138 3b7558b89c (svn r12798) -Feature: Add some support for NewGRF station animation. (Thanks to mart3p for samples and fixes) 16 years ago
rubidium ca1f8fbe2e (svn r12761) -Codechange: lots of minor whitespace coding style fixes around operators. 16 years ago
rubidium 6dc210b171 (svn r12751) -Codechange: do what has been done in r11862 in a different way so it uses less memory. 16 years ago
rubidium e61dcab79d (svn r12648) -Feature: allow four different non-stop types in a single game instead of two. The "TTDP compatible order" setting now only sets the default behaviour of new trains.
-Feature: allow three different load type in a single game instead of two. One can choose full load all and full load any instead of full load being governed by the "full load any" patch setting.
16 years ago
rubidium 877ca99198 (svn r12495) -Codechange: reduce the dependency on newgrf_station.h (especially because newgrf_station.h includes a lot of stuff). 16 years ago
rubidium df1d9bd880 (svn r12490) -Codechange: rename engine.h to engine_func.h and remove unneeded inclusions of engine.h and/or replace them with engine_type.h. 16 years ago
rubidium c51b81c247 (svn r12489) -Codechange: split station.h into station_base.h and station_func.h. 16 years ago
glx 1df06c7ef1 (svn r12454) -Fix (r12452): incorrect calculation for 'first vehicle in this chain of vehicles with the same ID' (thx DaleStan)
-Fix (r12452): wrong loading of random action 2 type 84 for non vehicle (though it shouldn't happen, but who knows ;))
16 years ago
glx 90616adcb0 (svn r12452) -Feature: [NewGRF] Add random action 2 type 84. For vehicles only. 16 years ago
peter1138 d275282e4d (svn r12450) -Codechange: Use a pointer instead of several array dereferences. 17 years ago
belugas 7aab471a76 (svn r12449) -Feature[newGRF]: Add support for var A2/22 for action 7/9/D: Diificulty level 17 years ago
smatz 1f13638d03 (svn r12368) -Codechange: use explicit body for loops and conditions and remove -Wno-empty-body from the configure script 17 years ago
peter1138 99be0592e7 (svn r12341) -Fix (r11224) [FS#1827]: GRM buffer for cargos was incorrect size. 17 years ago
frosch 81f4fd8aff (svn r12333) -Fix: Switch grfstatus from 'activated' back to 'will-be-active' between reservation- and activation-stage.
This fixes action7/9 conditions 0x06 to 0x0A to return the same in those two stages.
17 years ago
peter1138 e40b66861c (svn r12317) -Fix [FS#1815]: Map string IDs that are embedded from other strings. 17 years ago
peter1138 b913a135c0 (svn r12316) -Codechange: Support loading full range of 0xD0xx NewGRF strings which
includes 0xD000 to 0xD3FF (yes, 0xD0xx makes a lot of sense, really...) 
and handle 0xD400 to 0xD7FF strings which map to 0xD000 to 0xD3FF 
(obviously).
17 years ago
peter1138 6c4060a59a (svn r12295) -Codechange: Make plane speed option available to NewGRFs 17 years ago
peter1138 f6e4dc4d8c (svn r12209) -Fix: [NewGRF] Support using any base price for rail and road vehicles' running cost, and show running cost of wagons if they have it. 17 years ago
peter1138 0e997be11e (svn r12205) -Codechange: rename RailVehicleInfo::running_cost_base to running_cost, inline with other vehicle types (It is the factor, not the base) 17 years ago
belugas a6fbbf92fc (svn r12158) -Codechange: merge all the sprite recolouring mapping under a single function
-Fix: Handle the bridge recolouring mapping as the other features.  Although not specified by the specs, it seems to be implicit.
17 years ago
frosch a13899ee8e (svn r12149) -Codechange: Merge 'ground_sprite' and 'ground_pal' of DrawTileSprites into one PalSpriteID 17 years ago
frosch ae996a270b (svn r12148) -Codechange: Merge 'image' and 'pal' of DrawTileSeqStruct into one PalSpriteID 17 years ago
frosch 0aece5ed6b (svn r12124) -Codechange: Move newgrf-variables that are common to VarAction2 and Action7/9/D to their own function.
-Fix: Add some variables that were missing in one or both cases.
17 years ago
peter1138 d6670eed6b (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use. 17 years ago
peter1138 57aacb50c8 (svn r12119) -Codechange: Rename grfspec_feature to match code style, and expose in header for use elsewhere. 17 years ago
belugas d465b23ee2 (svn r12118) -Codechange: Put the two descriptions of bridges in an array instead of two single variables, following the transport type it represents 17 years ago
belugas 6a717aa49b (svn r12111) -Codechange: Rename Bridge to BridgeSpec, out of consistensy with other Specs in used. 17 years ago
belugas 831e678120 (svn r12069) -Feature[newGRF]: Specify the purchase, rail and road description of a bridge. 17 years ago
belugas 0ee48fc6d3 (svn r12064) -Codechange : Give grf bridges their own ResetBridges function, and put bridge spec in table/bridge_land.h, where it should be. 17 years ago
glx b5055f73fe (svn r12059) -Fix (r12041): industries prop 24 is a word 17 years ago
maedhros 0cb2a7fa17 (svn r12052) -Fix [FS#1737] (r11494): The cargo translation table was loaded at the right time, but all the other global variables were now loaded too early. ;) 17 years ago
belugas 6e761a18d6 (svn r12041) -Codechange: Add the loader and the property for action 00 industries, prop 24, nearby station name.
No assignation yet, no real work either.
17 years ago
peter1138 1268a70466 (svn r12019) -Codechange: Add support for passenger engine designation for AI-use, NewGRF property 0x08 for trains. 17 years ago
frosch 5d9326ff03 (svn r12001) -Fix: When skipping Action 11 or 12, also skip belonging sprites. 17 years ago
frosch 4a1ad2c85f (svn r11973) -Fix (r11726, r11947)[FS#1683]: Use grass tiles for corner shores, if shores got replaced by ActionA. 17 years ago
belugas ba1f3b4834 (svn r11963) -Fix(r11961): Forgot to specify the meaning of the magical 6 substraction 17 years ago
belugas fa39916fe9 (svn r11961) -Feature[newGRF]: Add support for Action 0D, var 13: informations about current map size. 17 years ago
peter1138 9d754a7f76 (svn r11938) -Codechange: support loading of canal/river properties (though still ignored) 17 years ago
glx 4e847a9c52 (svn r11888) -Codechange: simplify sorting of the strings in town names dropdown 17 years ago
rubidium fcee6dad93 (svn r11862) -Fix [FS#1559]: when two NewGRFs 'fight' to define the same cargo it could happen that the strings are defined by one cargo and the 'action2' by another and when one assumes that both come from the same NewGRF... So store the GRF ID with the strings. To be extra sure add the same protection mechanism to industries and towns too. 17 years ago
peter1138 7475bf20ec (svn r11846) -Fix [FS#1651]: implicit conversion from unsigned to signed int caused compilation failure with MSVC. 17 years ago
rubidium 9c0c798dd8 (svn r11834) -Codechange: only include settings_type.h if needed. 17 years ago
rubidium 90acd52f22 (svn r11828) -Codechange: include table/* as the last includes and remove an unneeded include from openttd.h. 17 years ago
peter1138 0f7392bd61 (svn r11822) -Codechange: Replaced fixed size custom name array. Names are now attached to their object directly and there is
no limit to the amount of names.
-Fix: NewGRF engines could not be renamed.
17 years ago
rubidium 2fc62eab05 (svn r11818) -Codechange: split player.h into smaller pieces. 17 years ago
frosch 49f741aaa3 (svn r11807) -Codechange: Make Action5 handler more upwards- and TTDP-compatible by allowing specifiing more sprites than needed. 17 years ago
peter1138 0645689a87 (svn r11803) -Fix: unlikely but possible infinite loop leading to undefined behaviour 17 years ago
rubidium c004cc1fd9 (svn r11801) -Codechange: remove some unneeded includes from some header files. 17 years ago
rubidium 2d2e1e3863 (svn r11800) -Codechange: move some functions to a more logical location + some type safety. 17 years ago
peter1138 a5101fb403 (svn r11799) -Codechange: no need to special-case helicopter rotor 'overrides' 17 years ago
peter1138 1cabc8eb63 (svn r11784) -Codechange: set up initial engine data in one place 17 years ago
rubidium b09d957f31 (svn r11777) -Codechange: split the string header and make do not include it when it's not necessary. 17 years ago
peter1138 0c4e3b83e4 (svn r11761) -Codechange: Use appropriate variable types for NewGRF engine overrides, and adjust scope while there. 17 years ago
belugas a021159e4e (svn r11757) -Fix(r11727): Don't use a function's default parameter when the value can be (more adequately, even better) computed from another source.
Thanks peter1138.
17 years ago
belugas 87a68bd80f (svn r11748) -Codechange: Remove magic numbers introduced on r11746 and r11727
-Codechange: A few bad coding style inadvertendly applied too
17 years ago
belugas a7ac4f656c (svn r11746) -Fix(r11727): Make sure that action 0A does follow the same new ordering of shore sprites. It was not considered in the missing shore patch 17 years ago
rubidium fa0d8d352d (svn r11728) -Fix [FS#1577]: if there are no houses that can be build in a specific year yet, force the houses with the earliest introduction year to be available. 17 years ago
belugas 361b12eff0 (svn r11726) -Feature[newGRF]: Extend the Action 5, feature 0D usage. Patch by BigBB 17 years ago
rubidium 50b6804b3b (svn r11721) -Fix: do not disable NewGRFs for 'eternity' during games. 17 years ago
peter1138 6da72ec156 (svn r11720) -Codechange: [NewGRF] Add support for bit 30 of station tile layouts; forcing a sprite to always be opaque. 17 years ago
rubidium 445a733eb6 (svn r11719) -Codechange: split sound.h in a header with types and one with functions. 17 years ago
maedhros ad061e6d60 (svn r11712) -Fix (r9315): Add more house string id ranges to MapGRFStringID so NewGRFs use the proper string ids. 17 years ago
rubidium 722613f7f3 (svn r11706) -Codechange: split vehicle.h and remove another bunch of useless includes. 17 years ago
rubidium db73addb43 (svn r11702) -Codechange: move all date related stuff to date*. 17 years ago
rubidium 81bf9f8503 (svn r11692) -Codechange: move some functions from 'functions.h' to a more logical place and remove about 50% of the includes of 'functions.h' 17 years ago
rubidium 00c9d3ef20 (svn r11691) -Codechange: move+rename helpers.hpp and only include it when it is really needed. 17 years ago
rubidium 507463e420 (svn r11684) -Codechange: split gfx.h in a type and functional header. 17 years ago
rubidium 1f6043458c (svn r11682) -Codechange: move some 'generic' geometry related types into a single file and do not include gfx.h everywhere to get a Point type. 17 years ago
rubidium 766551b0bc (svn r11677) -Codechange: move price and command related types/functions to their respective places. 17 years ago
rubidium 8427b8bad2 (svn r11675) -Codechange: split the string types from the string functions. 17 years ago
belugas 0223de5442 (svn r11665) -Fix: Animation informations should not be copied from original industry tile spec, while doing an action 00, industry tile, prop 08.
Fix directly inspired by Csaboka
17 years ago
rubidium 818a23e7f2 (svn r11664) -Codechange: use more specific ("rail_type.h" instead of "rail.h" that includes way more than only "rail_type.h") includes at some places. 17 years ago
rubidium c231998248 (svn r11650) -Fix: 'initialised' NewGRFs could still be deactivated in the later 'activation' pass. 17 years ago
glx 78fd9216f2 (svn r11645) -Fix (r8128): station ground tiles may have transparency or company colour 17 years ago
belugas c8f4810dac (svn r11635) -Codechange: Give a more informative debug message when encountering unknown newgrf feature in action 00 handling.(FS#1551, Bilbo) 17 years ago
glx bfda3c82f1 (svn r11600) -Cleanup: remove extra out-of-memory checks, since it's now done in *allocT functions. 17 years ago
glx 9b4aadf8dd (svn r11544) -Fix [FS#1501]: revert r11453 as it translated cargo when it should not 17 years ago
belugas b98847e489 (svn r11534) -Feature(newgrf): Implement property 23h for Industries.
This will add a cost to the removal of an industry using the cheat magic bulldozer.
Note that the removal of regular or newgrf industries without specified removal cost will have no cost applied to.
This is a difference from original spec, where a default base cost is added.
17 years ago
skidd13 815b8d8df1 (svn r11510) -Codechange: merge the IS_*INSIDE* functions and rename them fitting to the naming style 17 years ago
rubidium 3ff1cf32c3 (svn r11509) -Fix: off-by-one error in some sprite numbers; increase sprite number counter before loading the next sprite instead of after doing so. 17 years ago
glx b78801fa33 (svn r11494) -Fix [FS#1461] (r11450): cargo translation table was now loaded too late ;) 17 years ago
skidd13 3ae50673a3 (svn r11484) -Codechange: Remove the doubled function SetBitT and rename the remaining to fit with the naming style 17 years ago
skidd13 6801cceda1 (svn r11482) -Codechange: Remove the doubled function ClrBitT and rename the remaining to fit with the naming style 17 years ago
skidd13 c0a2c0c23e (svn r11481) -Codechange: Rename the HASBIT function to fit with the naming style 17 years ago
skidd13 98f66552be (svn r11475) -Codechange: rename clamp and clampu to Clamp and ClampU to fit with the coding style 17 years ago
glx 76d9c20f01 (svn r11453) -Fix (r11450): unrevert r11239, as we now need it 17 years ago
glx 4c4ea8cfdf (svn r11450) -Fix [FS#1432](r8886): cargo translation table was loaded too early 17 years ago
glx bad3d28184 (svn r11443) -Fix: [NewGRF] Action 0 <id> is an extended byte 17 years ago
rubidium af0616729a (svn r11433) -Fix: starting OpenTTD with DOS files made it look weird out of the box.
-Change: make extra sprites (the ones not in the TTD GRFs) replaceable using Action 5.
-Feature: make replacing contiguous subsets of sprites in for some types possible in Action 5.
Note to GRF authors: when you replaced OpenTTD sprites that are not from the TTD GRF files using Action A, your GRF will not have the intended result anymore as the sprite numbers have changed. You should replace the Action A with an Action 5 from now on.
17 years ago
glx d4e8889d5f (svn r11429) -Fix (r11129): some TextID to StringID 'translations' didn't follow our format 17 years ago
glx 60ccc5bbce (svn r11423) -Codechange: store grfid when adding an override 17 years ago
glx 74ee13aba8 (svn r11381) -Fix [FS#1227]: redo the fix in a less breaking way 17 years ago
glx 354fdbc0c9 (svn r11380) -Revert (r11191, r11196): it worked, but broke cargo loading 17 years ago
rubidium 50d51e83bb (svn r11358) -Fix: condition types 0x0B and 0x0C are also valid for variable 0x88 in action 7/9. 17 years ago
rubidium 3722b834ef (svn r11355) -Fix [FS#1377]: loading too many GRFs was not handled gracefully causing crashes and such. 17 years ago
belugas b604d40584 (svn r11346) -Codechange: Add marker has_newwater to the loaded grf features. Not in used yet. 17 years ago
glx 08503f5ba5 (svn r11341) -Codechange: add missing callback ID enums, add stub for house property 20 and reorder unimplemented action 0 properties 17 years ago
rubidium fcce47172d (svn r11330) -Add: OTTD version checking for NewGRFs. This allows NewGRFs to do something different for different versions of OpenTTD, like disabling it for too low versions or loading different graphics. 17 years ago
rubidium 1d9542ce2d (svn r11321) -Codechange: add support to load different graphics for halftile slopes using a NewGRF. Patch by frosch. 17 years ago
glx 3b08339a10 (svn r11302) -Fix (r9520): typo 17 years ago
belugas 5691c77494 (svn r11283) -Fix(r11282): a typo. Don't ask. 17 years ago
belugas ebd7b63733 (svn r11282) -Fix[FS#1344]: Use the right pointer when evaluating the size of the layouts. 17 years ago
maedhros ee4823857f (svn r11265) -Feature: Make more advanced rail types more expensive to build. 17 years ago
glx 21547b46ef (svn r11253) -Fix (r9411): industries can still use cargo they define, even if these cargo are disabled by a grf loaded later 17 years ago
glx 73fcdf77e0 (svn r11252) -Revert r11239, Fix r9620: cargo translation was not done correctly 17 years ago
belugas a8936b771b (svn r11251) -Fix[FS#1318]: Newindustries must not rely on the old check placement functions. It is the the job of callbacks. Therefor, upon substitution, disable the said check.
Warning, plenty of industries are going to be generated ;)
17 years ago
glx 401048898e (svn r11239) -Fix (r10495): don't do cargo translation when loading grfs, but do it once all grfs are loaded. This ensure correct accept/produced cargo when a grf uses cargo defined in a grf loaded after itself 17 years ago
rubidium ffba1cc208 (svn r11233) -Fix [FS#1303]: handle some wrong written station NewGRFs a little more gracefully than segfaulting. 17 years ago
glx 7810424862 (svn r11232) -Fix (r10495): industry tile override works like house override, so handle it in the same way 17 years ago
rubidium 91ac131014 (svn r11228) -Codechange: implement the "moreanimation" feature of TTDP, so we can properly support newindustries. 17 years ago
rubidium 1bf8d64eb8 (svn r11224) -Fix: GRM for cargos has registration entries for both cargo IDs and cargo bitmasks, not only cargo IDs. 17 years ago
rubidium d8c0298250 (svn r11205) -Codechange: remove some, now obsolete, checks. 17 years ago
belugas 151b50e13b (svn r11204) -Feature: [NewGRF] Add support for Action 00 for Industries and IndustryTiles.
Thanks to :Csaboka for original concept, specs & help. Dalestan for technical explanations.
Pikkabird & Georges for detailled comments on their grf works.  The Alpha testers (You know who you are).
And finally (but not least) Maedhros (newhouses), peter1138(newgrf) Rubidium and glx (numerous and welcome patches)
Remember: it certainly can be buggy.  But be sure that behaviour has been tested in TTDP (if you can) before raising a flag.
17 years ago
belugas fa1322a740 (svn r11203) -Codechange: Raise the TTDPatch version a little higher, as some new features will be shortly exploitable 17 years ago
belugas 23eed48a92 (svn r11197) -Fix: It is not useful to reset the override of an entity every time a new grf file is been submitted.
Since newhouses showed the way to newindustries(meaning I copied/adapted a lot of code and processes from it), the behaviour was there for newhouses too.
17 years ago
glx a2ed316770 (svn r11196) -Fix (r11191): _cur_stage was incorrect for GLS_ACTIVATION stage 17 years ago
rubidium 54c7430e46 (svn r11195) -Fix: creation chances for industries during gameplay and during map generation were swapped. 17 years ago
belugas 6edbf53177 (svn r11192) -Fix: Little typo with bigger consequences when trying to remove a newindustries aware grf 17 years ago
glx 06059e1f2e (svn r11191) -Fix [FS#1227]: GLS_ACTIVATION stage must be done immediatly after GLS_RESERVE stage, before the GLS_RESERVE stage for the next newgrf. 17 years ago
belugas 41ecae2783 (svn r11164) -Fix(r11161): a rogue space roaming in the night... removed 17 years ago
belugas 926a87d8a7 (svn r11162) -Fix: Acceptance is not a cargo, but rather a level of... acceptance :) So don't need to get cargo name out of it (glx) 17 years ago
belugas 7923f78ed0 (svn r11161) -Fix: Allow to transform coordinates in negative ones when gfx of 0xFF allows it 17 years ago
rubidium 893842a8a3 (svn r11150) -Fix [FS#1202]: NewGRF action 3 does not necessarily need an action 1 to be defined. Patch by frosch. 17 years ago
glx b1fa49d3fa (svn r11144) -Codechange: add support for newgrf callbacks 29 and 35 17 years ago
rubidium d578a0868e (svn r11132) -Fix: NewGRFs seem to assume that STR_NULL is an empty string or so. 17 years ago
glx e9f9aa3d1c (svn r11129) -Fix: update some TextID to StringID 'translations' to reflect changes in language files 17 years ago
truelight e545220563 (svn r11095) -Codechange: don't abuse 'file_pos' by storing the file_slot in it too, but use a nice seperate variable for it
-Note: on a side-note, this allows files bigger than 16+ MiB, needed for tar-support
17 years ago
belugas 77440b09e4 (svn r10955) -Fix: The substitute prop (0x08) of industry tiles does not behave as prop 0x08 of industry. Therefore, do not disable the old industry with value of 0xFF. Not a bug fix, just a spec compliance correction... 17 years ago
maedhros c4f77a2f26 (svn r10836) -Fix [FS#1014]: Make sure the third cargo type accepted by houses is valid in
the current climate when copying properties from existing houses and using
action 0 property 0F.
17 years ago
peter1138 a6aba9c83d (svn r10628) -Fix (r10606,FS#1055): Revert r10606 and fix the plural problem another way. 17 years ago
peter1138 bcc93b45bc (svn r10606) -Fix (r8826): plural and single cargo names were mixed up. 17 years ago
rubidium 009a47dfcd (svn r10521) -Fix: some NewGRFs did not check whether the newindustries bit was set, which breaks with a not-yet-finished-implementation of newindustries. 17 years ago
rubidium a616f0bd1e (svn r10514) -Codechange: add support for getting the nearest industry with a given type. 17 years ago
rubidium d1ef87f914 (svn r10508) -Codechange: allow customizable animation schemes for industries. 17 years ago
belugas 7ca5c337ca (svn r10495) -Codechange: Add the Action 00 property handlers for Industries and Industry tiles 17 years ago
belugas 5f49ffa3ff (svn r10457) -Codechange: Load the newly read definitions of Industries and Industry tiles.
No, this is not the final commit for newindustries (far from it), just another step.
17 years ago
belugas 8df65af2d3 (svn r10456) -Codechange: Enable loading newgrf strings for Industries 17 years ago
belugas e7678f47be (svn r10448) -Codechange: Industry Tiles and Houses share almost the same spritegroup format. 17 years ago
rubidium 4c356457e6 (svn r10442) -Codechange: implement the industry production callback. 17 years ago
maedhros 6fbfa4498c (svn r10436) -Cleanup: Doxygenise some comments, update others, and make a few statements more consistent with everything else. 17 years ago
maedhros 78d74efd3a (svn r10435) -Fix (r9315): numinfo starts from 1, not 0, so make it possible to define a house with a local id of 255. 17 years ago
maedhros fd475d47d8 (svn r10434) -Fix (r9315): When setting multiple house overrides in one Action 0, don't override them all with the first ID. 17 years ago
maedhros d938a4ffe6 (svn r10433) -Codechange: Remove FOR_EACH_OBJECT by moving the for loops in the Action 0
handlers outside the switch statements. This allows ignoring only the invalid
IDs when changing the properties for many objects, rather than ignoring the
whole block if one ID is invalid.
17 years ago
rubidium 627aa240ba (svn r10298) -Fix [FS#903]: show the subdirectory below the default data directory in this filename in the newgrf list. The directory was removed in r9560 because then it used to full path instead of the path relative to the data directory, but since the inclusion of "search paths" that is not necessary anymore. 17 years ago
glx 623a848cca (svn r10211) -Feature: [NewGRF] Add support for action 0F 17 years ago
rubidium 7fbd4e4ab4 (svn r10180) -Fix (r10167): do not reset the 2cc loaded feature setting when a (later) newgrf does not have 2cc. 17 years ago
maedhros 8765343e2e (svn r10178) -Fix: Don't deactivate newgrf files when skipping the rest of the file during the initialisation stage. 17 years ago
belugas 0f0b58d429 (svn r10167) -Codechange: Change the flagging system of grf loaded feature from a bitset to a bool evaluation.
Like easier to read and faster to evaluate :)
17 years ago
truelight 5d55a9435b (svn r10157) -Fix: use as indentified for PNGs, the place of the image as it was in the grf, not the internal SpriteID 17 years ago