Commit graph

216 commits

Author SHA1 Message Date
Yair Morgenstern
6cd78ca926 Minor performance enhancements for unit movement 2018-05-01 21:42:13 +03:00
Yair Morgenstern
fb1f381f06 Added FreeType, which lets us use whatever fonts we want 2018-05-01 21:41:02 +03:00
yairm210
eac8afef75
Sped up FindShortestPath alg
When finding shortest path, we no longer check intermediary tiles for the next step, since they will always have a longer path than the edge tiles (since from there, we need to pass through an edge tile anyway)
2018-04-29 13:31:10 +03:00
Yair Morgenstern
8d2edfefc7 Civilopedia help now shows correct text
Sped up pollicy-related actions
2018-04-27 15:24:31 +03:00
Yair Morgenstern
8268c0c561 Fixed settler automation performance problem - now actually viable for phone use
All kinds of other small performance-boosting bits and bobs
2018-04-26 23:43:36 +03:00
Yair Morgenstern
f4af9f7d80 Fixed (slow) performance issues in TechPickerScreen 2018-04-26 23:06:45 +03:00
Yair Morgenstern
ace5a6efbf Worker automation fixed - ready for big update! 2018-04-26 21:29:20 +03:00
Yair Morgenstern
4d10e11482 Added Egypt, other civs can now build wonders! 2018-04-25 23:47:03 +03:00
Yair Morgenstern
23bd52fc66 Changed all usages of GetTilesInDisttance to center around TileInfo, not TileMap 2018-04-25 22:59:44 +03:00
Yair Morgenstern
6fcf9ec93e Fixed bug where if 2 tiles were of same "ranking", the worker would try and switch back and forth between them. 2018-04-25 22:19:35 +03:00
Yair Morgenstern
9816cd57da Added "explored tiles" to civinfo, moved worker automation to separate class 2018-04-25 22:09:24 +03:00
Yair Morgenstern
9d7399dd48 Enemy civs now pick technologies and advance!
Fixed bug where workers would try to move and improve unreachable tiles, crashing the game
2018-04-24 23:00:58 +03:00
Yair Morgenstern
c6136acbec Moved tile ranking and construction picking to Automation 2018-04-24 21:44:47 +03:00
Yair Morgenstern
5eec4deb84 Fixed bug where melee attacker would always move to attack, even if attackee was right next to it 2018-04-24 21:42:53 +03:00
Yair Morgenstern
fe09351db7 Ranged enemy units don't move towards their targets
Cities under attack now switch to training combat units
2018-04-23 18:58:19 +03:00
Yair Morgenstern
7ff81ac901 When a unit takes over a city, it now gets moved to that city 2018-04-21 23:00:23 +03:00
Yair Morgenstern
453e25ffe7 City's tiles and worked tiles are now saved in the CityInfo and not in the TileInfo 2018-04-21 22:56:52 +03:00
Yair Morgenstern
17307f16f9 Can now conquer cities! =D 2018-04-20 11:33:56 +03:00
Yair Morgenstern
7e2015572c No longer displays population images for enemy cities 2018-04-18 15:34:41 +03:00
Yair Morgenstern
42ed4e5749 No longer displays red circle in attackable tiles (from range) but not viewed - gave away enemy positions! 2018-04-18 15:33:53 +03:00
Yair Morgenstern
d0f3a10728 Moved notifications to CivInfo, notifications on enemy actions removed 2018-04-18 00:00:31 +03:00
Yair Morgenstern
51148ac347 Can no longer pick branch completion policies 2018-04-17 23:59:34 +03:00
Yair Morgenstern
bfe43b67c1 Added Settler and Worker enemy actions 2018-04-17 23:58:10 +03:00
Yair Morgenstern
c6ebb733a1 Added Greece to civilizations, city names no come from the Civilizations json 2018-04-17 23:57:06 +03:00
Yair Morgenstern
221a8668fa Selected unit now has a white circle around it 2018-04-17 21:56:58 +03:00
Yair Morgenstern
05d61e4982 Fixed bug where when exploring new tiles, map would not show them until something else happened (map click, etc.) 2018-04-14 23:10:24 +03:00
Yair Morgenstern
532dc75c34 Fixed bug where game would crash if the currently selected unit was destroyed 2018-04-12 21:58:38 +03:00
Yair Morgenstern
34c1047b65 Fixed bug where enemy units were viewable despite the tile being unexplored 2018-04-12 21:52:00 +03:00
Yair Morgenstern
e9c69eed6f Attackable units now have red circle marking their location 2018-04-12 21:43:52 +03:00
Yair Morgenstern
ca7fb9c3be Multiple IDE-suggested fixes 2018-04-11 23:46:00 +03:00
Yair Morgenstern
52b2fa1ef5 Explored but unvisible tiles now fade to black, instead of to background olor (which is blueish) 2018-04-11 22:35:09 +03:00
Yair Morgenstern
dd3d4b605f Added archer 2018-04-11 22:34:20 +03:00
Yair Morgenstern
32efae340b Unit table now displays ranged strength for ranged units 2018-04-09 19:09:08 +03:00
Yair Morgenstern
2bac292ce6 When displaying tiles that unit can move to, we now mark those tiles with a blue circle rather than "gray out" all other tiles - gives a much better visual cue 2018-04-09 16:40:22 +03:00
Yair Morgenstern
8798f02217 Select next idle is no longer enables if an ENEMY unit is idle 2018-04-09 12:54:33 +03:00
Yair Morgenstern
90baebc63d Throw exception when attempting to move a unit to a tile that already contains one 2018-04-09 11:08:20 +03:00
Yair Morgenstern
af47880f48 Don't random-walk to tiles that have units in them! 2018-04-09 11:04:13 +03:00
Yair Morgenstern
b59e235df5 Ranged attacks can reach attackee if tile is in range 2018-04-09 11:03:55 +03:00
Yair Morgenstern
3045fe040d Only display unit on tile if tile is visible 2018-04-09 11:03:25 +03:00
Yair Morgenstern
abaf39a15c Ranged units don't get damaged when attacking 2018-04-09 11:02:53 +03:00
Yair Morgenstern
4de9ee106f City button padding expanded, warrior now has 2 strength as it should 2018-04-08 16:13:54 +03:00
Yair Morgenstern
9978ec5264 Added 15% flanking bonus when enemy is surrounded by more than one melee unit 2018-04-08 10:02:52 +03:00
Yair Morgenstern
e476e5862d TileTable no longer displays health of civilian units 2018-04-08 10:00:24 +03:00
Yair Morgenstern
d8a5acb6f2 Battletable only displays combat if the enemy unit is viewable or if the enemy ciity's tile has been explored 2018-04-08 08:58:42 +03:00
Yair Morgenstern
a72c1c7d95 Select next idle unit only selects units belonging to the player 2018-04-08 08:55:53 +03:00
Yair Morgenstern
3ca20951e5 Stats string does not display decimal points 2018-04-08 08:55:06 +03:00
Yair Morgenstern
f662cd910d Added a table in city screen, to show a breakdown of the ciy stats 2018-04-05 13:59:22 +03:00
Yair Morgenstern
39cc236fae City labels are colored according to civ, and scale down when zooming in 2018-04-05 12:47:10 +03:00
Yair Morgenstern
8b176f062b Added unit maintainance costs to civ 2018-04-05 11:53:12 +03:00
Yair Morgenstern
e5e0c5daa5 Now displays defender name properly, and not attacker name 2018-04-05 11:19:31 +03:00
Yair Morgenstern
461bea0cbc Healing units now attempt to go to better tiles to heal there
Fixed bug where units moving from A to B would move multiple times between turns, effectively "jumping" distances
2018-04-05 11:04:40 +03:00
Yair Morgenstern
c56a67211c Now can't see units that we're not supposed to see =) 2018-04-04 23:17:27 +03:00
Yair Morgenstern
7ff9f17943 Added battle modifiers, specifically - terrain defence bonuses 2018-04-04 23:10:16 +03:00
Yair Morgenstern
4e36aa0d5a No longer attempts to attack city that contains a unit
Battle visualization bug fixed
2018-04-04 17:37:59 +03:00
Yair Morgenstern
36c2afd026 Enemy units don't advance towards units they can't see (not viewable to civ) 2018-04-04 17:16:28 +03:00
Yair Morgenstern
541c73a9a5 Organized city and unit combat, now barbarian warriors spawn in the beginning and so you have to protect your workers or whatever 2018-04-04 17:13:01 +03:00
Yair Morgenstern
889072c725 Enemy troops now have movement and will attack 2018-04-02 23:14:42 +03:00
Yair Morgenstern
5d00adb7fe Added GetTile function to MapUnit, which simplifies and normalizes a lot of the unit logic
Battle simulation and actual battle work as expected!
2018-04-02 15:16:28 +03:00
Yair Morgenstern
bd1a191b15 Battle tabl now shows results of battle, added Barbarian civ 2018-04-01 15:01:48 +03:00
Yair Morgenstern
f71c605210 Notifications scroll no longer blocks map scrolling 2018-03-23 12:25:51 +03:00
Yair Morgenstern
4e7d1bfaec Non-idle units are faded out, to show they can't move this turn 2018-03-23 11:01:23 +03:00
Yair Morgenstern
96c217fec8 Added unit icons with the background according to owner 2018-03-22 23:45:28 +02:00
Yair Morgenstern
a8051bc930 Moved CityButton from TileGroup to WorldTileGroup 2018-03-21 22:03:37 +02:00
Yair Morgenstern
3959706ab9 Changed placement of notifications and unit commands in world screen for an unobstructed central view 2018-03-21 21:10:28 +02:00
Yair Morgenstern
c8c1ecc4da Old borders now disappear when borders expand 2018-03-21 19:07:05 +02:00
Yair Morgenstern
e496148e21 Tiles are now larger, population and units placed in a more visually pleasing way 2018-03-19 23:30:54 +02:00
Yair Morgenstern
66f900e4ec Changed terrain visualization - is now plain color awith overlays for terrain feature, looks really good! 2018-03-16 13:09:43 +02:00
Yair Morgenstern
eadf7b01db Added enable/disable functions to textbuttons, can now stop moving and automated units even when out of movement 2018-03-13 22:07:06 +02:00
Yair Morgenstern
53e332e9e8 Tutorials moved to a separate json file 2018-03-12 23:33:03 +02:00
Yair Morgenstern
b659e3b37d All GameBasics are now LinkedHashLists, and so retain order as in the json files 2018-03-12 18:35:57 +02:00
Yair Morgenstern
f59102a2a0 Policy pick and free tech pick moved to when clicking on next turn button 2018-03-11 23:25:57 +02:00
Yair Morgenstern
5db5272810 When generating map, we no longer get terrain areas that have only 1 or 2 tiles 2018-03-10 22:15:42 +02:00
Yair Morgenstern
c4736f0467 Map generation now generates areas coontaining the same terrain, rather than have each tile be a random terrain - much closerr to what you get in the real Civ game, even though we're pretty far from there 2018-03-10 22:01:10 +02:00
Yair Morgenstern
414025dbbe Fixed crash when starting new game 2018-03-07 22:35:41 +02:00
Yair Morgenstern
7f8e1707be Entiirely removed Linq - now only using Kotlin extensions! 2018-03-07 21:51:33 +02:00
Yair Morgenstern
1a4a9d416c Unit control transferred to UnitTable 2018-03-07 18:37:16 +02:00
Yair Morgenstern
146c4111fd tile groups moved to tile map holder, as they should be 2018-03-03 23:38:28 +02:00
Yair Morgenstern
064aee2f07 Split unit actions to a separate file (unitactions), because of all the separate cases 2018-03-03 23:30:27 +02:00
Yair Morgenstern
f2c790aec4 Finisher policies are now unpickable 2018-03-03 22:22:00 +02:00
Yair Morgenstern
abe3d76df7 Changed click listeners to lambdas 2018-03-03 21:54:02 +02:00
Yair Morgenstern
9b29944c2b All coe converted to Kotlin! 2018-03-02 15:34:24 +02:00
Yair Morgenstern
113f3965fc Converted all logic/map files to Kotlin 2018-02-25 00:07:40 +02:00
Yair Morgenstern
18be9e37b2 Converted all GameBasics to Kotlin 2018-02-24 22:43:41 +02:00
Yair Morgenstern
49c0707be1 First Kotlin change - FullStats and CivStats 2018-02-24 20:18:08 +02:00
Yair Morgenstern
9253c40085 Added Kotlin! 2018-02-23 15:36:13 +02:00
Yair Morgenstern
397556f81f Deleted unneccesary files, minor changes that were pointed out by code inspection 2018-02-23 13:31:45 +02:00
Yair Morgenstern
6a2f4a07f1 Major overhaul - all tree items now have transient pointers to their parents, eliiminating the need for static calls for Civilization.Current and the like - neccesary if we want to have multiple civilizations 2018-02-23 12:57:52 +02:00
Yair Morgenstern
4d6b5c997d Split generating the map to a separate class
Fixed bug loading game when multiple cities
2018-02-05 23:19:58 +02:00
Yair Morgenstern
1c1756721a - Slightly improved tile ranking when determining next tile
- Now does not display unexplored tiles in city screen - cleaner view
2018-02-03 22:06:55 +02:00
Yair Morgenstern
ce7a7916c1 - Fixed bug when picking legalism with less than 4 cities
- Added City Center indication, made population image in city screen more prominent and clickable
2018-02-03 21:49:46 +02:00
Yair Morgenstern
7cbddd883b Split WorldScreen functionality into components - civ stats table, tile info table, tile map holder, notificaations scroll, idle unit button
Added yield on tiles
2018-01-31 22:45:21 +02:00
Yair Morgenstern
561fd417ed policy picker screen now opens rom boolean 2018-01-23 21:52:25 +02:00
Yair Morgenstern
b6d235a4d0 Automated actions should now choose best and closest tile to work on, differentiated pre- and post- turn actions 2018-01-22 22:57:17 +02:00
Yair Morgenstern
dd6805d179 City stats now update when adopting policy 2018-01-20 23:23:30 +02:00
Yair Morgenstern
80e3d16895 Load game does not crash when there are notifications
Automated workers no longer complete improvements in a single turn
City screen does not display building catagories which are irrelevant
2018-01-19 13:20:42 +02:00
Yair Morgenstern
d8a7c379e7 Moved more functions to their proper places 2018-01-13 23:21:20 +02:00
Yair Morgenstern
a992dff6fe Split CityInfo into areas of concern - separate files for Stats, Expansion and Population 2018-01-13 23:11:53 +02:00
Yair Morgenstern
3bb849726a Split CivInfo's responsibility into separate classes: Tech,Policy,GoldenAge,GreatPerson and ScienceVictory managers. 2018-01-12 12:37:31 +02:00
Yair Morgenstern
85ffcc58ee Added CivilizationPolicies, added great person pick when completing Liberty 2018-01-11 22:50:59 +02:00
Yair Morgenstern
546472b528 Organized classes into folders 2018-01-11 22:22:51 +02:00