summaryrefslogtreecommitdiff
path: root/macros.h
AgeCommit message (Collapse)Author
2006-03-24(svn r4092) CodeChange : Named sprites instead of magic numbers plus ↵belugas
create/use helper macro/enum for recoloring scheme
2006-03-03(svn r3747) Change HASBIT() to return 0/1 instead of 0/value of tested bit, ↵tron
because the name suggests it does the former and current behavior broke in some places in very subtle ways (for example HASBIT(x, 0) != HASBIT(y, 1) doesn't work, returning a bool after HASBIT(x, 9) neither)
2006-02-03(svn r3529) - Fix: [ 1415782 ] crash in string code with openbsd/zaurus; ↵Darkvater
alignment issues (thanks Tron for the help)
2006-02-01(svn r3511) More whitespace ([FS#46] by Rubidium)tron
2005-12-20(svn r3322) - Fix: Network window crash when it receives invalid information ↵Darkvater
for example from the integrated nightly, so validate the network-input when it is received - CodeChange: added str_validate(char *str) function that checks if a string contains only printable characters and if not, replaces those characters by question marks. Also move IsValidAsciiChar() to string.h
2005-12-13(svn r3290) - Fix: "[ 1360054 ] Rename Sign, Cause Game Crash, nightly ↵peter1138
version r3213": Added filter to test for valid character input.
2005-11-16(svn r3205) Some more uses for GB/SBtron
2005-10-05(svn r3019) -Codechange: Replace explicit shifting/anding/oring with GB and SBtron
2005-09-08(svn r2924) Introduce the ALIGN() macro which aligns values to multiples of ↵tron
a power of 2, for exact semantics see the commment in macros.h
2005-07-30(svn r2758) Add the AB() macro to add a value to a bit range and use it in a ↵tron
few places, also make use of GB and SB nearby
2005-07-24(svn r2702) -Codechange: Cleaned up the sprite code and replaced many magic ↵celestar
numbers by enums. There remains work in gfx.c to move the "transparency" and "recolor" bits around to make space for more sprites. However, 2800 additional sprites can now be loaded. There also remains cleanup and Doxygen work on many of the header files.
2005-07-24(svn r2701) Insert Id tags into all source filestron
2005-07-21(svn r2669) Shuffle some more stuff around to reduce dependenciestron
2005-07-17(svn r2596) Add macros ROL and ROR to ROtate values Left/Right. Also shorten ↵tron
the parameter names for GB and SB to increase readability
2005-06-25(svn r2487) Replace TILE_XY by TileXY/TileDiffXYtron
2005-06-01(svn r2390) - Codechange: Fix some warnings on GCC 4.0.0hackykid
2005-05-22(svn r2358) Add macros for getting (GB) and setting (SB) a range of bitstron
Use them exemplarily to prettify (Get|Set)Tile(Type|Height)
2005-03-25(svn r2060) Clean up some string construction and remove now unused macrotron
2005-02-22(svn r1904) Remove some more unused stufftron
2005-02-22(svn r1898) Remove some unused macros from macros.h and move some others to ↵tron
more appropriate headers
2005-02-05(svn r1809) Remove unused function str_is_below()tron
2005-02-05(svn r1808) Use strcmp() instead of home brewed function str_eq()tron
2005-01-31(svn r1751) - Feature: New PathFinder (NPF).matthijs
- Supports trains, road vehicles and ships. - Uses A* pathfinding (same codebase as the new ai). - Currently unlimited search depth, so might perform badly on large maps/networks (especially ships). - Will always find a route if there is one. - Allows custom penalties for obstacles to be set in openttd.cfg (npf_ values). - With NPF enabled, ships can have orders that are very far apart. Be careful, this will break (ships get lost) when the old pathfinder is used again. - Feature: Disabling 90 degree turns for trains and ships. - Requires NPF to be enabled. - Ships and trains can no longer make weird 90 degree turns on tile borders. - Codechange: Removed table/directions.h. - table/directions.h contained ugly static tables but was included more than once. The tables, along with a few new ones are in npf.[ch] now. Better suggestions for a location? - Fix: Binary heap in queue.c did not allocate enough space, resulting in a segfault. - Codechange: Rewritten FindFirstBit2x64, added KillFirstBit2x64. - Codechange: Introduced constant INVALID_TILE, to replace the usage of 0 as an invalid tile. Also replaces TILE_WRAPPED. - Codechange: Moved TileAddWrap() to map.[ch] - Add TileIndexDiffCByDir(), TileIndexDiffCByDir(). - Codechange: Moved IsTrainStationTile() to station.h - Add: IsRoadStationTile() and GetRoadStationDir().
2005-01-28(svn r1706) Implement ScaleByMapSize() and ScaleByMapSize1D()tron
These scale a number relative to the map size/circumference. Use them to scale the amount of map objects. Of course at the moment they return just the input, because there are no bigger/smaller maps yet.
2005-01-25(svn r1676) Increase the size of TileIndex and TileIndexDiff to 32bits and ↵tron
adapt the save/load data and some other parts of the code to that change WARNING: If i made any mistake here it WILL lead to corrupted savegames!
2005-01-16(svn r1536) Move GET_TILEHEIGHT, GET_TILETYPE and IS_TILETYPE to map.h, turn ↵tron
them into inline functions and add some asserts
2005-01-09(svn r1447) Move TILE_ADD(), TILE_ADDXY() and SafeTileAdd() to map.[ch] and ↵tron
make the latter map size agnostic
2005-01-09(svn r1445) -Fix: reversing a train also reverses the UP and DOWN status for ↵truelight
the realistic acceleration calculation -Fix: there was a big bug in setting the UP and DOWN flags making it easy possible for a overloaded train to go up a mountain. This is no longer possible. They will hang at a certain height
2005-01-08(svn r1437) -Fix: Safetileadd preprocessor magic is the same as for GCC and ↵darkvater
no longer extern
2005-01-07(svn r1416) Print sensible information in SafeTileAdd() if gcc is usedtron
2005-01-07(svn r1415) Move TILE_FROM_XY and TILE_XY to map.h and push TILE_[XY] bits ↵tron
from map.h into map.c. Now the whole source except map.c is independent of TILE_[XY]_BITS!
2005-01-07(svn r1414) Move TileIndex, TILE_MASK and GET_TILE_[XY] to map.h and turn ↵tron
the latter into inline functions names Tile[XY]
2005-01-05(svn r1386) Move TileIndexDiff to map.htron
Move _tileoffs_by_dir to map.[ch] and encapsulate it in TileOffsByDir()
2004-12-18(svn r1153) -Fix: FindCatchmentRadius is now a function that uses the enums ↵truelight
instead of magic numbers (tnx to Stumo)
2004-12-15(svn r1117) Move map arrays and some related macros into their own files ↵tron
map.c and map.h
2004-12-08(svn r979) Allow more realistically sized catchment areasCelestar
2004-12-04(svn r942) -Merged branch/network back into the trunktruelight
2004-11-24(svn r793) Merge INLINE -> inline replacement (revision 376)tron
2004-09-13(svn r240) -Fix: desync on subsidy generationsignde
-Fix: sometimes commands got executed to early on some clients -Feature: universal event packets for transmitting subsidys
2004-09-13(svn r237) -Fix: [1025836] Company value problem (again). Now company value ↵darkvater
rightly shows the value, including ALL your money. -Fix: Graphs now accomodate 64bit numbers (so the company value graph doesn't plummet into -... if value is too big) -Strgen: added CURRCOMPACT64 for this, and 64bit versions of several macros.
2004-09-12(svn r223) -Fix: Const correctness and miscellaneous fixes. Thank you Tron ↵darkvater
for your diligent fixing of warnings (and some possibly bugs) (Tron) -CodeLayout: Remove trailing spaces and Windows linebreaks
2004-09-10(svn r194) -Codechange: stripping trailing-spaces. Please keep this that way!truelight
2004-08-11(svn r23) -Some omments on the code (blathijs)darkvater
2004-08-09(svn r1) Import of revision 975 of old (crashed) SVNtruelight