Commit graph

389 commits

Author SHA1 Message Date
Jason Long
5929101335 tiles.rc: update documentation of tiles.rc format 2014-06-20 12:23:58 -04:00
Jason Long
951c0fecbf api: fix use of hi-bits in stadium-handling code 2014-06-20 12:23:43 -04:00
Jason Long
e913626f60 MakeTiles: use constant (STD_SIZE) to represent standard tile size of 16px 2014-06-20 11:46:26 -04:00
Jason Long
d207232fea MakeTiles: refactor: load images at parse time
this will allow me to detect and load animations (in a future commit)
2014-06-20 11:46:05 -04:00
Jason Long
cb84994ce8 MakeTiles: refactor: pushing caching down a level 2014-06-20 11:45:54 -04:00
Jason Long
300acc7381 api: setTile() no longer accepts upper bits
also- eliminate "rawTile" from TileBehavior class and subclasses
2014-06-20 11:41:57 -04:00
Jason Long
69e50258e7 cleanup: better to use 'tile' than 'rawTile' in TerrainBehavior 2014-06-20 11:41:50 -04:00
Jason Long
c6586c322f cleanup: remove superfluous assignment of .tile property
the .tile property should already have the right value when this
method is entered
2014-06-20 11:41:46 -04:00
Jason Long
f4fdb09481 graphics: change where images are loaded from when running the gui
tiles.png used to be at the root of the jar,
now it is in the '16x16' subdirectory (or '32x32' or '8x8' or 'sm'
depending on what resolution is being loaded)
2014-06-16 20:39:00 -04:00
Jason Long
c0f1d6a486 MakeTiles: output to a graphics directory instead of a specific file 2014-06-16 20:35:32 -04:00
Jason Long
eb97e1c27c MakeTiles: remove support for width/height specifier 2014-06-16 20:32:03 -04:00
Jason Long
bb6ac09e5d MakeTiles: write unique index for each output file 2014-06-16 20:32:02 -04:00
Jason Long
bff42f0cf9 MakeTiles: allow non-integer tile names; generate an idx file 2014-06-16 20:32:01 -04:00
Jason Long
0bf95f4b19 MakeTiles: refactor to simplify main() method body 2014-06-16 20:32:00 -04:00
Jason Long
7b890e9d89 tiles: add name property to spec 2014-06-16 20:31:59 -04:00
Jason Long
35acab9d30 TODO file- document where to find original Scenario stuff 2014-03-06 13:30:31 -05:00
jason@long.name
cf626bc30c docs: document the CityRect class
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@920 d9718cc8-9f43-0410-858b-315f434eb58c
2014-03-05 01:58:38 +00:00
jason@long.name
bde6014165 docs: document the Tiles class
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@919 d9718cc8-9f43-0410-858b-315f434eb58c
2014-03-05 01:58:31 +00:00
jason@long.name
a8710741d9 docs: add inline documentation for various Sprite classes
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@918 d9718cc8-9f43-0410-858b-315f434eb58c
2014-03-05 01:58:19 +00:00
jason@long.name
8b0c6df05c update TODO file
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@917 d9718cc8-9f43-0410-858b-315f434eb58c
2014-03-05 01:58:11 +00:00
jason@long.name
73800b13bf tools: make translation strings optional for tools
If a translation string is not defined for the tool name, icon name,
or tool description, then an automatic string is generated.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@915 d9718cc8-9f43-0410-858b-315f434eb58c
2014-01-05 22:13:51 +00:00
jason@long.name
ec0d9ffee6 tools: define default tool colors
so that colors do not need to be explicitly specified every time
a new tool is defined.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@914 d9718cc8-9f43-0410-858b-315f434eb58c
2014-01-05 22:13:44 +00:00
jason@long.name
2a77ddb26c tools: define size/cost of tool as regular properties of the tool
rather than using a giant switch block to determine size/cost

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@913 d9718cc8-9f43-0410-858b-315f434eb58c
2014-01-05 22:13:36 +00:00
jason@long.name
2d8e8ba86d tornado: add logic for when tornado runs out of steam
This is code from the original C/C++ release, modified to fix
what I perceived as a bug. After the tornado runs for 200 ticks,
there is a 0.2% chance of termination each tick.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@912 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-22 16:32:39 +00:00
jason@long.name
84d8906a88 overlay-map: remove upper tile number limit
also- refactor a for-loop into a separate method to avoid having
code indented too far

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@911 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-21 21:34:59 +00:00
jason@long.name
145c1ae944 graphics: use generated 3x3px tile array
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@910 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-21 21:31:11 +00:00
jason@long.name
968994b714 graphics: 3x3px versions of the road/traffic graphics
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@909 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-21 21:31:03 +00:00
jason@long.name
54ad2c98ef graphics: more 3x3px source images
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@908 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-21 21:30:38 +00:00
jason@long.name
ea8571f237 graphics: begin work on making source images for 3x3px tile array
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@907 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-21 21:30:19 +00:00
jason@long.name
ca55c1112c tiles: parse 'building' attribute at initialize time
rather than per-use

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@906 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-14 22:10:30 +00:00
jason@long.name
ae13414b34 refactor: make TileSpec do its own reference resolving
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@905 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-14 22:10:21 +00:00
jason@long.name
447a78b4d7 tiles: keep a mapping of tile names to the tile spec
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@904 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-14 22:10:14 +00:00
jason@long.name
2b093b3273 tiles.rc: dynamically determine number of tiles
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@903 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-14 22:10:06 +00:00
jason@long.name
7f1dad1083 train-sprite: use constants
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@902 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-13 01:38:46 +00:00
jason@long.name
c5b6b9db4a cleanup: use getTile() instead of direct access where possible
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@901 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 16:02:20 +00:00
jason@long.name
0d82d3514c cleanup: no longer need to apply LOMASK
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@900 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 16:02:17 +00:00
jason@long.name
c2286465a7 api: TileConstants- never accept "raw" tile numbers
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@899 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 16:02:13 +00:00
jason@long.name
78d094c8ac api: use masked tile number for tile-check methods
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@898 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 16:02:07 +00:00
jason@long.name
a8713b682e api: getTile() now returns masked tile number
use getTileRaw() to get the raw tile number

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@897 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 16:02:02 +00:00
jason@long.name
8ce6a1fdd5 tiles.rc: re-allow bulldozing dead zones
That is, we allow tiles that belong to zones whose center tile has been destroyed
(e.g. from a fire) to be individually bulldozed. This used to be allowed by setting
the BULLBIT on those tiles when the center tile is destroyed (see killZone() method)
but now that we no longer use BULLBIT, we need to test whether the center tile still
exists when deciding if a tile can be bulldozed.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@896 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 16:01:58 +00:00
jason@long.name
6d7e94bf97 tiles.rc: synthesize BULLBIT when saving file
this allows files to correctly load in older versions of Micropolis

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@895 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 16:01:54 +00:00
jason@long.name
454409cecf tiles.rc: eliminate BULLBIT and use annotation instead
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@894 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 16:01:48 +00:00
jason@long.name
dbb7029ec2 tiles.rc: annotate tiles that can be bulldozed
these tiles can be bulldozed clean using the bulldozer

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@893 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 16:01:45 +00:00
jason@long.name
721e135fee tool-effect: treat tiles outside of city boundary as dirt
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@892 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 02:48:06 +00:00
jason@long.name
2c517c476b cleanup: use named constants in isRiverEdge
instead of hard-coded numbers

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@891 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 02:48:00 +00:00
jason@long.name
3d2eaa62ff cleanup: do not use TileConstants. prefix when not needed
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@890 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-06 02:47:51 +00:00
jason@long.name
f8d3532cf7 cleanup: use constants for RivEdge table (in MapGenerator)
replace hard-coded numbers with constants and constants plus offsets

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@889 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-03 02:18:44 +00:00
jason@long.name
58ffb6c73b api: provide isTilePowered() to check whether a given location has power
instead of requiring front-end to test for PWRBIT

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@888 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-03 01:04:22 +00:00
jason@long.name
a47ceac844 tiles.rc: remove tile information for 7 unused tile numbers (amongst roads tiles)
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@887 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-02 01:44:57 +00:00
jason@long.name
1026fdf34f make-tiles: allow tile specification to be empty
this fixes a build-crash bug if a tile is not given any images

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@886 d9718cc8-9f43-0410-858b-315f434eb58c
2013-12-02 01:44:52 +00:00