Commit graph

245 commits

Author SHA1 Message Date
jason@long.name
9e9d1b2e9b TileConstants: remove hardcoded tile values from OverlayMapView
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@787 d9718cc8-9f43-0410-858b-315f434eb58c
2013-08-11 22:43:13 +00:00
jason@long.name
9c6e987f65 cleanup: remove no-longer-used isBigZone()
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@786 d9718cc8-9f43-0410-858b-315f434eb58c
2013-08-11 22:43:09 +00:00
jason@long.name
2eee88e529 getPollutionValue: move to TileConstants
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@785 d9718cc8-9f43-0410-858b-315f434eb58c
2013-08-11 22:43:04 +00:00
jason@long.name
6f3029fc92 getPollutionValue: use isFire and isRadioactive instead of comparing numbers
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@784 d9718cc8-9f43-0410-858b-315f434eb58c
2013-08-11 22:42:59 +00:00
jason@long.name
9c209fa6b2 TileConstants: isConstructed() returns true if tile >= ROADBASE
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@783 d9718cc8-9f43-0410-858b-315f434eb58c
2013-08-11 22:42:54 +00:00
jason@long.name
d60bbad2e1 TileConstants: continue moving tile number logic to central location (rails and wires)
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@782 d9718cc8-9f43-0410-858b-315f434eb58c
2013-08-11 04:07:14 +00:00
jason@long.name
b4f7e09d74 TileConstants: move tile number comparisons to central location (road numbers)
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@781 d9718cc8-9f43-0410-858b-315f434eb58c
2013-08-11 04:07:11 +00:00
jason@long.name
1c4eb5a346 engine bugfix: when downgrading full res to little houses, preserve pwrbit
This fixes the bug where a powered RES zone will temporarily flash
"no power" when it downgrades from full to partial.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@780 d9718cc8-9f43-0410-858b-315f434eb58c
2013-08-11 04:07:07 +00:00
jason@long.name
a32769259c tiles.rc: mark bridges, underwater wire, tunnel as Non-burnable
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@779 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-28 19:48:04 +00:00
jason@long.name
5adc2cd57a keyboard: set keymap on content pane, not root pane.
This way, when the menu bar is active, the normal menu key sequences
(such as ESCAPE) will still work normally.

One quirk is the following-
* MINUS will still zoom out while the menu is active,
but PLUS will not work.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@778 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-26 20:05:46 +00:00
jason@long.name
9e3e681a81 keyboard: ESC will now close the current notification, if one is open
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@777 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-25 20:48:28 +00:00
jason@long.name
c5872a6e9f keyboard: ESC while dragging mouse will cancel the current op
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@776 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-25 20:48:19 +00:00
jason@long.name
40bfdc241a build.xml: when spawning subprocess, do not let it read from stdin
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@775 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-25 20:48:10 +00:00
jason@long.name
bbb48f4e91 keyboard: let ESCAPE be used to close New City dialog
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@774 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-25 20:48:01 +00:00
jason@long.name
0465be13c1 keyboard: add hotkeys for Zones and Overlays menus
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@773 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-25 20:47:51 +00:00
jason@long.name
b4c3a8327e zoom-levels: add menu options for Zoom In and Zoom Out
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@772 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-25 20:47:42 +00:00
jason@long.name
f0f101b78d keyboard: define access keys for more menus
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@771 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-25 20:47:32 +00:00
jason@long.name
f55492f8b8 keyboard: add shortcut keys to Game menu
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@770 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-25 20:47:19 +00:00
jason@long.name
a1fc7c20a2 zoom-levels: fix to recognize the numpad "-" key to zoom out
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@769 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-22 16:03:49 +00:00
jason@long.name
b52415aa3d bulldozer: fix adjacent roads/wires/etc. when bulldozing
This patch restores the correct bulldozer behavior regarding adjacent
roads, wires, and rails that was lost when the toolstroke series
of patches were applied.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@768 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-22 16:03:33 +00:00
jason@long.name
060fdc4b94 drawing-area: fix so that keyboard zoom works even when a button has focus
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@767 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-21 15:35:01 +00:00
jason@long.name
6851224c10 drawing-area: scale sprite images with tile resolution
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@766 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-21 15:34:56 +00:00
jason@long.name
1429407d9f drawing-area: fix where sprites are drawn when zoom level is not 16px
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@765 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-21 15:34:51 +00:00
jason@long.name
4a38afc40f drawing-area: fix crash bug caused by not loading sprite images
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@764 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-21 15:34:46 +00:00
jason@long.name
298d789df2 overlay-map: fix selection rectangle for non-default zoom levels
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@763 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-21 15:34:41 +00:00
jason@long.name
1e21066cf2 drawing-area: allow zooming in and out with keyboard
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@762 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-21 15:34:36 +00:00
jason@long.name
45b84f0cbb tile animation: make nuclear swirl handled same as coal smoke
that is, it starts only when setZonePower() is called for that zone,
and it automatically stops when killZone() is invoked.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@761 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:35:12 +00:00
jason@long.name
7540682a06 tile animation: make industrial zone smoke animations initiated by tiles.rc
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@760 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:35:09 +00:00
jason@long.name
0c497aa434 tile animation: use tiles.rc to control termination of coal plant smoke
when the coal plant is killed

Also, this sets up a framework to handle industrial zones in the same way.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@759 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:35:05 +00:00
jason@long.name
a190bbf88b engine: only use PWRBIT flag on zone center tiles
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@758 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:35:02 +00:00
jason@long.name
ba7ade2fa4 tile-animation: let tiles.rc determine coal plant's smoke animation
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@757 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:34:58 +00:00
jason@long.name
1ce5080705 drawing-area: allow zooming from 8px to 32px, using unique graphics source for each level
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@756 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:29:53 +00:00
jason@long.name
ee449d59a4 tiles.rc: use inheritance to define roads with traffic
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@755 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:29:50 +00:00
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
103999e578 drawing-area: allow zooming in to 32px tiles
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@753 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:29:44 +00:00
jason@long.name
d452c45d21 drawing-area: hold in-memory tile images in an object, rather than static variables
This will allow changing tile sizes on a per-window basis.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@752 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:29:40 +00:00
jason@long.name
8a9af13de9 MakeTiles: allow making generated images of an SVG image in a subdirectory
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@751 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:29:37 +00:00
jason@long.name
b5e86ff388 MakeTiles: when converting an SVG file, specify DPI rather than expected width/height
This way we can handle multi-tile SVG source files (e.g. for the larger zones) correctly.

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@750 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:29:35 +00:00
jason@long.name
ef575b4125 MakeTiles: fix bug in SVG->PNG logic
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@749 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:29:32 +00:00
jason@long.name
f5b0089abc MakeTiles: when generating intermediate images, use a staging directory
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@748 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:29:28 +00:00
jason@long.name
e3dcff2804 MakeTiles: impl support for SVG files
SVG files are converted to PNG files at the appropriate resolution
by calling out to Inkscape.exe (must be installed somewhere)

git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@747 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:29:25 +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
b65e83ec79 tiles.rc: annotate conductive tiles
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@745 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:10:47 +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
cc4ba189ce tiles.rc: annotate tiles with "noburn" if they are not combustible
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@742 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-20 21:10:37 +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
568377ccc8 tile animation: another cleanup item - unpowered zone should not animate
git-svn-id: https://micropolis.googlecode.com/svn/trunk/micropolis-java@738 d9718cc8-9f43-0410-858b-315f434eb58c
2013-07-17 21:05:32 +00:00