Commit graph

168 commits

Author SHA1 Message Date
jason@long.name
22c0edc7c1 tiles.rc syntax: allow inheriting of another tile's images/attributes
To inherit, just put the name of tile you want to inherit from in parenthesis
at the beginning of the specification.
E.g.

road-1-1     (road) roads/1-1 (road-north)(road-south)

will define a tile named "road-1-1", which first starts with all the images
and properties of tile "road" and then layers on top of that the 'road/1-1'
image, and then sets the 'road-north' and 'road-south' flags.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@754 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:29:47 +00:00
jason@long.name
68717e3ea6 tiles.rc: move CONDBIT knowledge from source code to tiles.rc
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@746 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:10:50 +00:00
jason@long.name
92ba9642f2 TileSpec: fix bug with parsing of 'noburn'
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@744 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:10:44 +00:00
jason@long.name
c2cfeb540c tiles.rc: move BURNBIT knowledge from source code to tiles.rc
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@743 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:10:40 +00:00
jason@long.name
0a65ac514c TileConstants: replace BLBN, BLBNCN, BNCN constants with definitions
This will make it easier to find and replace uses of BULLBIT, BURNBIT, and
CONDBIT.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@741 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:10:34 +00:00
jason@long.name
91b3736886 tiles: transfer ZONEBIT knowledge to tiles.rc
and synthesize ZONEBIT when saving (for compatibility)

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@740 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:10:29 +00:00
jason@long.name
9bf2e91783 tile animation: synthesize ANIMBIT when saving (for compatibility)
Also, add some safety checks in case Tiles.get() is called with an out-of-range tile number.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@739 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-18 13:31:50 +00:00
jason@long.name
000036c303 tile animation: cleanup, remove obsolete ANIMBIT constant
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@737 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-17 20:59:06 +00:00
jason@long.name
3859ca16d7 tile animation: animation is now controlled by tiles.rc
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@732 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-17 20:11:54 +00:00
jason@long.name
cf6fce279c tiles.rc: rename tiles.dat to tiles.rc, bring TileSpec into main program
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@730 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-17 20:11:47 +00:00
jason@long.name
8793847415 TileConstants: simplify logic in isBridge()
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@726 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-07 14:11:02 +00:00
jason@long.name
6406c12c14 TileConstants: implement isCombustible()
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@725 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-07 13:16:54 +00:00
jason@long.name
873caa361b cleanup: move tile value comparisons into TileConstants class
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@688 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-28 01:55:58 +00:00
jason@long.name
f5e1793592 cleanup: move res/com/ind Zone Pop() functions to TileConstants
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@687 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-28 01:55:49 +00:00
jason@long.name
25751e73c4 cleanup: do not refetch the tile value when a property exists having it
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@686 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-28 01:55:41 +00:00
jason@long.name
cd7537768d road/rail deteriation: use isOverWater() instead of hard-coded numbers
Note- this will allow deteriation of bridges even when there is
traffic.  This is a change from previous versions.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@685 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-28 01:55:33 +00:00
jason@long.name
c272e200bf cleanup: isOverWater() should neutralize traffic, not the caller
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@684 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-28 01:55:25 +00:00
jason@long.name
599ea026f3 cleanup: move neutralizeRoad() to TileConstants
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@683 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-28 01:55:17 +00:00
jason@long.name
e2fd24ff10 tiles: document the underwater railroad tiles
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@682 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-28 01:55:08 +00:00
jason@long.name
9ff3e14eb5 cleanup: avoid comparisons with tile constants
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@681 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-28 01:55:00 +00:00
jason@long.name
906a0c4570 tiles: helper function- isTinyExplosion
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@680 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-28 01:52:36 +00:00
jason@long.name
6794888026 tiles: helper functions- isFire, isRadioactive, isFlood
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@679 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-28 01:52:27 +00:00
jason@long.name
f3af16e2e4 rail tool: fix bug where laying rail on moving traffic did not work
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@673 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-22 11:33:09 +00:00
jason@long.name
dce768ef45 toolstroke: fix bug in the bounds checking
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@653 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-17 16:47:32 +00:00
jason@long.name
4e27a04cc3 tiles: CLEAR is not doze-able
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@651 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-17 01:16:06 +00:00
jason@long.name
aacddfa6ef tiles: CLEAR is not a zone-center
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@650 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:46:46 +00:00
jason@long.name
66fc6f58d2 toolstroke: actually make sounds when tool is applied
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@649 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:46:33 +00:00
jason@long.name
47fdf7c3c2 toolstroke: do not pick random numbers when generating a tool preview
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@647 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:46:09 +00:00
jason@long.name
59c5547e87 toolstroke: fix bulldozer bug introduced by previous commit
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@646 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:45:59 +00:00
jason@long.name
52794b9c25 toolstroke: show the tool's effect as a preview when mouse is down
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@645 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:45:35 +00:00
jason@long.name
082e05f63c toolstroke: fix how tool results are reported
also, fix query tool functionality

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@643 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:45:13 +00:00
jason@long.name
1b19af8057 toolstroke: add sound support for tooleffect class
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@642 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:44:54 +00:00
jason@long.name
4d3649884d toolstroke: convert apply1 method
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@641 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:44:44 +00:00
jason@long.name
8c5d7c1ba8 toolstroke: replace apply3x3, etc. functions with generic applyZone()
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@640 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:44:35 +00:00
jason@long.name
422a6e96f9 toolstroke: convert RoadLikeTool completely to use ToolEffect
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@639 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:44:28 +00:00
jason@long.name
90ab295364 toolstroke: layWire, layRail: convert to ToolEffect
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@638 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:44:20 +00:00
jason@long.name
81bc4319b3 toolstroke: layRoad: convert to use ToolEffect
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@637 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:44:12 +00:00
jason@long.name
5c85cd0a64 toolstroke: continue refactoring for ToolEffect
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@636 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:44:03 +00:00
jason@long.name
5b5e278393 toolstroke: apply ToolEffect-conversion to fixZone()
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@635 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:43:46 +00:00
jason@long.name
c9b21e4f23 ToolPreview: fix a bug in how arrays are re-allocated
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@634 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:42:38 +00:00
jason@long.name
00738461cb toolstroke: convert fixSingle to use ToolEffect class
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@633 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:42:30 +00:00
jason@long.name
eb63e3817a ToolStroke: update Park tool to use new ToolEffect class
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@632 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:42:21 +00:00
jason@long.name
b3522c514c ToolEffect: stores effect of tool and then applies it as transaction
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@631 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:42:13 +00:00
jason@long.name
76c96640c1 ToolPreview: a helper class for translating the effect of a tool
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@630 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:42:06 +00:00
jason@long.name
1aa2e3d30f ToolPreview: a class for holding the effect of a tool
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@629 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:41:57 +00:00
jason@long.name
f6b55fa380 toolstroke: separate class for road-like tools
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@628 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:41:49 +00:00
jason@long.name
0fe2c2fe1d toolstroke: move bulldozer tool code to a separate file
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@627 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:41:40 +00:00
jason@long.name
6e585924a7 toolstroke: start implementing a check() method
This checks the overall result of applying a tool to see if there's
enough money for the whole operating, before applying any of it.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@626 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:41:33 +00:00
jason@long.name
0f0d063957 toolstroke: rename getPreview to getBounds
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@625 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:41:24 +00:00
jason@long.name
86a2f05201 toolstroke: on mouse up, fill the selected area with the tool
also- for roads, rails, and wires, force the selected area to be
single-unit width or height.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@624 d9718cc8-9f43-0410-858b-315f434eb58c
2013-05-16 23:36:36 +00:00