Commit Graph

198 Commits

Author SHA1 Message Date
belugas aa0d37854d (svn r11543) -Codechange: Give a more adequate message when trying to place an industry required to be built over a house on any other type of tiles.
In reference to FS#1492, and other "bugs" like that one
2007-12-01 01:31:05 +00:00
belugas b10eea628d (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.
2007-11-27 17:13:49 +00:00
belugas 9402d4054a (svn r11532) -Feature[newgrf]: Add decrement(0x0D) / increment(0x0E) production operations from result of production callback cb29/35.
Only var 0x93 will be affected by these operations
2007-11-27 04:16:08 +00:00
maedhros 8e273e0f88 (svn r11528) -Fix (r11500): With smooth economy enabled, industries that should only decrease production would always increase it when more than 60% was transported. 2007-11-26 19:23:53 +00:00
skidd13 734b22e070 (svn r11526) -Codechange: Rename the function delta fitting to the naming style 2007-11-26 16:01:29 +00:00
skidd13 bdc7fd2d76 (svn r11523) -Codechange: Move the CHANCE macros to core/random_func.cpp cause they depend on Random()
-Codechange: Convert the CHANCE macros to functions and rename them fitting to the naming style
2007-11-25 15:35:25 +00:00
rubidium ea072322fa (svn r11504) -Fix [FS#1467]: removing docks/ship depots could result in non-canal water where canals should have been build. 2007-11-24 08:45:04 +00:00
glx c8add52504 (svn r11502) -Fix (r11144): don't do standard production change if callbacks 29/35 failed
-Fix (r11144): disable smooth economy for industries using callbacks 29/35
2007-11-23 16:50:54 +00:00
belugas 536be43411 (svn r11500) -Codechange: Smooth economy fine-tuning, making industries more responsive. Patch by Sirkoz. 2007-11-23 12:12:07 +00:00
glx ee81e00082 (svn r11499) -Fix (r11144): mul/div factor were wrong (off by two) 2007-11-23 04:17:41 +00:00
skidd13 71c4325c50 (svn r11481) -Codechange: Rename the HASBIT function to fit with the naming style 2007-11-19 21:02:30 +00:00
skidd13 8be526e499 (svn r11475) -Codechange: rename clamp and clampu to Clamp and ClampU to fit with the coding style 2007-11-19 18:38:10 +00:00
rubidium 4dcd71038d (svn r11442) -Feature: make news messages related to the industry (production) changes better configurable; you can now disable news messages popping up for industries you are not servicing. Patch by Alberth. 2007-11-15 22:20:33 +00:00
rubidium 9d85d9d41f (svn r11420) -Fix [FS#1006]: industry closure news not properly shown when the news item pops up after the industry has been removed from the map. 2007-11-12 18:32:04 +00:00
rubidium 21c02fee87 (svn r11412) -Fix (r11403): animation was not turned on properly.
-Fix (r11410): wrong assumption about random reseeds made the whole thing reseed way too often, making the animation look very ugly.
2007-11-11 18:22:06 +00:00
rubidium af5c2a785f (svn r11410) -Codechange: implement random triggers for industries. 2007-11-11 17:56:37 +00:00
rubidium d32604d59e (svn r11403) -Fix: NewIndustries GRF assume that tiles are already animated during construction. 2007-11-11 00:53:59 +00:00
glx 63b36d9330 (svn r11402) -Fix [FS#1382]: incorrect handling of industry behaviour 'must be in town with population large than 1200' 2007-11-11 00:04:52 +00:00
belugas f55fdfb7c4 (svn r11399) -Feature(ette): transparency settings can now be saved and thus remembered.
-Codechange: Wrap all transparency settings in accessors, hiding the implementation
-Change: Clicking "transparent building" menu will toggle Houses And Trees only.  The other options can be used in the transparency gui.
Initial patch by Smatz (FS#1349), with some rework by BigBB and your humble servant.
2007-11-10 01:17:15 +00:00
rubidium 9e69fc8114 (svn r11373) -Fix [FS#1398]: do not even think about building disabled industries. 2007-11-03 23:34:12 +00:00
rubidium a416f540fa (svn r11371) -Fix [FS#1396]: the industry protection only kicked in when it should not kick in. 2007-11-03 15:21:26 +00:00
glx 0204f501df (svn r11356) -Fix (r11305): funding industries in MP game was causing desync 2007-10-29 23:29:06 +00:00
rubidium 21981fd8cb (svn r11349) -Fix [FS#1372]: crash when moving "invalid" cargo to a station. 2007-10-27 11:20:47 +00:00
glx 0215607d91 (svn r11305) -Codechange: randomise layout when building an industry ingame 2007-10-20 00:20:23 +00:00
rubidium 95f2181a1d (svn r11303) -Fix: EnsureNoVehicle and EnsureNoVehicleOnGround were both used to check whether there was no vehicle on the ground, except that the former didn't take care of aircraft shadows. So now we only use EnsureNoVehicleOnGround. 2007-10-19 22:46:55 +00:00
glx 9371ac1307 (svn r11302) -Fix (r9520): typo 2007-10-19 21:14:38 +00:00
glx c706b31eb7 (svn r11301) -Fix: water check when building industries didn't work 2007-10-19 21:05:25 +00:00
glx f3d79154eb (svn r11293) -Fix: newgrf defined industry news messages use TTD format for args, which is not the same as our. So we must detect those strings and pass them the right params 2007-10-18 20:35:59 +00:00
glx ad0574c226 (svn r11285) -Fix: 'site unsuitable' was always shown instead specified message when trying to build industry ingame (Csaboka) 2007-10-17 15:47:49 +00:00
rubidium ba7c595d84 (svn r11276) -Codechange: be more consistent with naming of some accessors.
-Fix: make sure canals are never owned by water. Based on a patch by boekabart.
2007-10-16 19:48:58 +00:00
belugas a1e1d85361 (svn r11268) -Fix[FS#1336]: Call IsSlopeRefused whenever it is required. Looks like there was one spot missing. Thanks frosch 2007-10-15 18:36:20 +00:00
glx 9a190237ca (svn r11207) -Fix [FS#1301]: don't use smooth_economy for industries using production callbacks as they may have no production for more than a month 2007-10-05 17:53:45 +00:00
belugas 7525f791c7 (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.
2007-10-03 00:57:54 +00:00
rubidium 2b56d11276 (svn r11194) -Fix: industries with not all tiles custom slope checked (but at least one) would be build on wrongly sloped tiles. 2007-10-02 17:48:17 +00:00
rubidium 531fe3e070 (svn r11193) -Fix: be more compliant with the specifications of callback #2F (and undocumented side effects in TTDP in corner cases). 2007-10-02 16:56:45 +00:00
rubidium 32c0c3a644 (svn r11186) -Fix: only fill the accepted cargo fields once, not multiple times. 2007-09-30 14:29:45 +00:00
rubidium 136d726b6f (svn r11185) -Codechange: prepare some more code for the introduction of NewIndustries. Patch by Belugas. 2007-09-28 21:24:25 +00:00
glx c07e91fd78 (svn r11181) -Codechange: add support for newgrf callback 14A (Belugas) 2007-09-28 17:09:50 +00:00
glx 7cdbb50b5b (svn r11177) -Codechange: add support for newgrf callbacks 14B and 14C 2007-09-27 21:47:38 +00:00
glx 5e45e73037 (svn r11176) -Revert (r9867): as it is needed for newgrf callbacks 14B and 14C 2007-09-27 21:39:13 +00:00
rubidium a85e18c922 (svn r11171) -Fix [FS#1257]: disable autoslope for automatically changed stuff (like towns and industries) and enable it in the scenario editor. Patch by frosch. 2007-09-26 14:32:06 +00:00
rubidium ca7cab0253 (svn r11168) -Fix [FS#1256]: assert on terraforming of industries. Patch by frosch. 2007-09-26 14:14:51 +00:00
belugas ea2100e4e8 (svn r11160) -Fix: A gfx of 0xFF does not count when it's time to establish the size of the industry. 2007-09-26 01:24:12 +00:00
glx aa020847af (svn r11144) -Codechange: add support for newgrf callbacks 29 and 35 2007-09-22 23:40:35 +00:00
glx 90602b356a (svn r11142) -Codechange: prepare industry production change code for newgrf callbacks 29 and 35 2007-09-22 21:59:02 +00:00
rubidium 60f1eb21fa (svn r11139) -Codechange: add support for persistent storage for NewGRFs. 2007-09-22 13:56:38 +00:00
belugas 47dd4989a8 (svn r11137) -Feature: [NewGRF] Add support for bit 17 of property 1A for Industries. This bit enables the protection of the last instance of an industry type once raise. 2007-09-22 00:59:27 +00:00
rubidium fef64185b8 (svn r11107) -Feature: some tool so one can still build tunnels under rails (and other structures) when the owner of the structure built it on foundations and if you have enough "empty" space ofcourse. One could use the tool for some other construction needs too. Patch by frosch. 2007-09-14 22:27:40 +00:00
rubidium 6f296b9870 (svn r11102) -Codechange: remove some pointless addition+substractions. Patch by frosch. 2007-09-14 21:32:21 +00:00
belugas 518fd6aa4d (svn r11050) -Codechange: Use the translated gfx, not the original one. 2007-09-06 03:02:38 +00:00
rubidium a0559dd89e (svn r11041) -Fix (r10460) [FS#1195]: the industry's owner was saved twice instead of the owner and the founder. Patch by frosch. 2007-09-04 12:00:12 +00:00
rubidium b284b5fa92 (svn r11005) -Codechange: move the tiletype specific terraforming checks to the functions for those tile types.
-Codechange: barren the rail grounds on terraforming.
2007-08-30 17:17:04 +00:00
rubidium 5ce935c6eb (svn r10991) -Codechange: add documentation, enumification and some code simplifications to the terraforming code. Patch by frosch. 2007-08-27 21:18:04 +00:00
belugas 36c5b4e1ef (svn r10980) -Fix [FS#1158] : This will hopefully fix the case of an assert that happens when an industry uses a special gfx index (tile spec 0xFF). This 0xFF is the sentinel of a special check done for oil rigs, where water need to be around, but no tile will be constructed on it.
Problem is that the upper limit of gfx tiles is currently at 175.  So, of course the system will assert with 255 ;)
2007-08-26 00:23:32 +00:00
belugas 99158287fd (svn r10972) -Codechange: Implement the counterpart(GetTranslatedIndustryTileID) of getindustileid of TTDPatch. This allows to ensure that the ID of a tile (taken out of the map or not) is still a valid one regarding the possible override it may have been flagged to.
It is not the strict same thing, but is what we need regarding the slightly different approach we took for newindustries.
2007-08-24 00:23:35 +00:00
belugas d921cf88a3 (svn r10963) -Revert(10700): Although the idea was good, it was more prone of errors than usefull.
So now, it will be better to jump to the overriden tile when it is been marked as an override
2007-08-22 01:16:08 +00:00
belugas b5627afcea (svn r10962) -Codechange: protect yourself against an illicit substitution 2007-08-22 00:59:46 +00:00
belugas fafe33cdd2 (svn r10903) -Feature: [NewGRF] Add support for variable 44 of Variational Action 2 for Industries 2007-08-15 00:49:34 +00:00
rubidium ab7e36dda7 (svn r10813) -Fix (r10799): some destructors were performing too much during the pool cleanups, which could cause crashes as already removed pool items could then be dereferenced by other destructors. 2007-08-06 14:08:25 +00:00
rubidium 2dd7a5d296 (svn r10773) -Codechange: use pool.CleanPool instead of CleanPool(&pool) and similarly for AddBlock*. 2007-08-03 20:18:38 +00:00
rubidium e4149482ec (svn r10759) -Codechange: make the industry struct use the pool item class as super class. 2007-08-02 23:21:52 +00:00
belugas 3f7a7261d6 (svn r10701) -Codechange: Make sure to not use an out of bound index when the index is specified by a grf file. It has a different meaning then. 2007-07-27 03:07:05 +00:00
belugas 8ad3a6f8fd (svn r10700) -Codechange: Enable to jump (by default) to the overriding industry tile spec of the one been queried.
Only on certain very specific circumstances do we need the original spec
2007-07-27 02:41:29 +00:00
rubidium d624f66c79 (svn r10698) -Codechange [FS#1082]: simplify the code related to foundations. Primarily removal of (duplicated|magic) code and introduction of few helper functions to ease foundation determination. Patch by frosch. 2007-07-26 16:51:10 +00:00
rubidium 5bd241eb5b (svn r10697) -Codechange: give a more sensible names to some of the unkX variables. 2007-07-26 15:37:19 +00:00
rubidium 02ab86631e (svn r10696) -Codechange: remove duplication of the "make sprite transparent" code. 2007-07-26 14:07:11 +00:00
rubidium fe8e297995 (svn r10675) -Codechange: unhardcode the industry types used in several locations of the source code. 2007-07-24 19:56:43 +00:00
belugas b9b59ec169 (svn r10641) -Fix(r10638): Forgotten Son... err...include 2007-07-20 17:32:27 +00:00
belugas fabd64e1e6 (svn r10640) -Fix(r10638): little typo... 2007-07-20 17:25:07 +00:00
belugas f9d3463af1 (svn r10639) -Codechange: Give meaninfull name to a magic number 2007-07-20 17:14:03 +00:00
belugas d847b30c98 (svn r10638) -Codechange: Save the mapping of the industries and tiles, making them persistent. 2007-07-20 16:50:11 +00:00
belugas c0b044ac45 (svn r10635) -Codechange: Correct some typos and code beautifying (a little bit) 2007-07-20 14:49:41 +00:00
rubidium efc7fdf2fd (svn r10587) -Codechange: move the string/dparam related stuff from variables.h to strings.h 2007-07-16 09:16:58 +00:00
glx 6474a5a957 (svn r10575) -Fix r10573: misplaced ) 2007-07-15 00:45:02 +00:00
belugas 89d872a625 (svn r10573) -Codechange: Use function CheckIfCallBackAllowsAvailability for random map generation as well as for ingame random industry creation 2007-07-15 00:26:12 +00:00
rubidium 79d04412b0 (svn r10508) -Codechange: allow customizable animation schemes for industries. 2007-07-11 15:03:29 +00:00
rubidium e497167dfd (svn r10506) -Fix: the (manual) building of banks was always rejected. 2007-07-11 08:20:57 +00:00
rubidium 09eb6623ab (svn r10494) -Fix (r10490): possible null dereference in some exotic newgrfs. 2007-07-09 20:08:25 +00:00
rubidium 25511e0e26 (svn r10490) -Codechange: add support for industries on non-flat surfaces. 2007-07-09 18:53:43 +00:00
rubidium bb8923c336 (svn r10485) -Codechange: add a callback mechanism to determine whether building an industry is allowed at a given location. 2007-07-09 13:21:49 +00:00
rubidium 70d6fdeca0 (svn r10483) -Codechange: add support for callbacks to manipulate the building chance of farm fields and chopping chance for lumber mills. 2007-07-08 19:54:51 +00:00
maedhros 165dd778af (svn r10481) -Codechange: Show a news message with the new industry when primary industry prospecting succeeds. 2007-07-08 18:41:34 +00:00
rubidium 283a06e4a1 (svn r10477) -Codechange: add some callbacks to customise the acceptance of industries. 2007-07-08 17:40:04 +00:00
rubidium 9a55c79fd1 (svn r10460) -Codechange: add some more variables needed for newindustries regarding to the creation of the industries. 2007-07-07 08:53:19 +00:00
rubidium c86015203a (svn r10459) -Codechange: add helper functions to determine whether an industry is a primary industry and how much it costs to build such an industry. 2007-07-06 22:33:16 +00:00
rubidium 0d68a919d9 (svn r10451) -Add: support for "prospecting" raw industries, i.e. you pay an amount of money and then it might (with a given chance) build a raw industry somewhere on the map. 2007-07-06 07:24:10 +00:00
rubidium 86c14c239f (svn r10442) -Codechange: implement the industry production callback. 2007-07-05 05:41:56 +00:00
rubidium 1bdb72ebd4 (svn r10439) -Codechange: initial steps for customized industry productions. 2007-07-04 18:27:21 +00:00
belugas de43302419 (svn r10425) -Fix (r10418): do not compare bitmasks with HASBIT. Strike two. Forgotten code :) 2007-07-04 00:54:38 +00:00
rubidium bad85b08c2 (svn r10419) -Fix (r10418): do not compare bitmasks with HASBIT. Thanks to Maedhros for spotting this. 2007-07-03 19:25:06 +00:00
rubidium b67cfd4825 (svn r10418) -Codechange: implement/resurrect the industry production flags. 2007-07-03 19:16:34 +00:00
rubidium d73e490c52 (svn r10406) -Fix [FS#968]: only industries in the temperate climate should be affected by the "do not increase production" flag. 2007-07-01 17:21:25 +00:00
rubidium 735c47d7d7 (svn r10348) -Fix (r10347): compile errors; do not think it compiles fine when you run make on the wrong working copy. 2007-06-26 21:17:51 +00:00
rubidium 667e8eaaf8 (svn r10347) -Fix [FS#948]: industries with a very low production could never recover when using smooth economy.
-Fix: in smooth economy producing industries could not close, whereas they could close in non-smooth economy.
-Fix: in smooth economy the "do not increase production" flag of industries was ignored.
2007-06-26 21:11:17 +00:00
truelight 90fa779a24 (svn r10340) -Fix: make sure no industry production can ever hit < 32 with smooth_economy 2007-06-26 13:46:56 +00:00
rubidium e12e83ef5f (svn r10299) -Codechange [FS#931]: industry foundations should be drawn as all other foundations, i.e. with DrawFoundation, instead of writing the same functionality itself. 2007-06-24 10:20:05 +00:00
truelight 27a6e21975 (svn r10290) -Fix: with smooth_economy, when industry production hit 32, it stayed there for ever. Give it some chance to get out of that uber-lowness (although it is a very slim chance, at least it has one) 2007-06-22 23:53:16 +00:00
belugas 436eb69a39 (svn r10232) -Fix(r1): _numof_industry_table never was composed of 12 entries. Only 11.
It never hurt before, but it would have...
2007-06-20 03:03:00 +00:00
belugas 2ad0d708cc (svn r10226) -Codechange: Add support for newindustry tiles drawing.
Heavily based on Maedhros's newhouses implementation
2007-06-19 17:33:12 +00:00
rubidium 49220cc6f1 (svn r10205) -Codechange: refactor returning of cost, so it can be more easily modified. 2007-06-18 19:53:50 +00:00