├── .gitignore ├── META-INF └── MANIFEST.MF ├── pom.xml ├── res └── stage │ └── demo.txt └── src └── main └── java ├── module-info.java └── mrmathami ├── thegame ├── Config.java ├── GameController.java ├── GameEntities.java ├── GameField.java ├── GameStage.java ├── Main.java ├── drawer │ ├── BossEnemyDrawer.java │ ├── EntityDrawer.java │ ├── GameDrawer.java │ ├── MachineGunBulletDrawer.java │ ├── MachineGunTowerDrawer.java │ ├── MountainDrawer.java │ ├── NormalBulletDrawer.java │ ├── NormalEnemyDrawer.java │ ├── NormalTowerDrawer.java │ ├── RoadDrawer.java │ ├── SmallerEnemyDrawer.java │ ├── SniperBulletDrawer.java │ ├── SniperTowerDrawer.java │ ├── SpawnerDrawer.java │ ├── TankerEnemyDrawer.java │ └── TargetDrawer.java └── entity │ ├── AbstractEntity.java │ ├── DestroyListener.java │ ├── DestroyableEntity.java │ ├── EffectEntity.java │ ├── GameEntity.java │ ├── LivingEntity.java │ ├── SpawnListener.java │ ├── UpdatableEntity.java │ ├── bullet │ ├── AbstractBullet.java │ └── NormalBullet.java │ ├── enemy │ ├── AbstractEnemy.java │ └── NormalEnemy.java │ └── tile │ ├── AbstractTile.java │ ├── Mountain.java │ ├── Road.java │ ├── Target.java │ ├── spawner │ ├── AbstractSpawner.java │ └── NormalSpawner.java │ └── tower │ ├── AbstractTower.java │ └── NormalTower.java └── utilities ├── Pair.java ├── ThreadFactoryBuilder.java └── UnorderedPair.java /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/.gitignore -------------------------------------------------------------------------------- /META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Main-Class: mrmathami.thegame.Main 3 | -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/pom.xml -------------------------------------------------------------------------------- /res/stage/demo.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/res/stage/demo.txt -------------------------------------------------------------------------------- /src/main/java/module-info.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/module-info.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/Config.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/Config.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/GameController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/GameController.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/GameEntities.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/GameEntities.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/GameField.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/GameField.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/GameStage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/GameStage.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/Main.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/BossEnemyDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/BossEnemyDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/EntityDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/EntityDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/GameDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/GameDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/MachineGunBulletDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/MachineGunBulletDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/MachineGunTowerDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/MachineGunTowerDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/MountainDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/MountainDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/NormalBulletDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/NormalBulletDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/NormalEnemyDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/NormalEnemyDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/NormalTowerDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/NormalTowerDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/RoadDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/RoadDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/SmallerEnemyDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/SmallerEnemyDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/SniperBulletDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/SniperBulletDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/SniperTowerDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/SniperTowerDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/SpawnerDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/SpawnerDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/TankerEnemyDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/TankerEnemyDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/drawer/TargetDrawer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/drawer/TargetDrawer.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/AbstractEntity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/AbstractEntity.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/DestroyListener.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/DestroyListener.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/DestroyableEntity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/DestroyableEntity.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/EffectEntity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/EffectEntity.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/GameEntity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/GameEntity.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/LivingEntity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/LivingEntity.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/SpawnListener.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/SpawnListener.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/UpdatableEntity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/UpdatableEntity.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/bullet/AbstractBullet.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/bullet/AbstractBullet.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/bullet/NormalBullet.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/bullet/NormalBullet.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/enemy/AbstractEnemy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/enemy/AbstractEnemy.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/enemy/NormalEnemy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/enemy/NormalEnemy.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/tile/AbstractTile.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/tile/AbstractTile.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/tile/Mountain.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/tile/Mountain.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/tile/Road.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/tile/Road.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/tile/Target.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/tile/Target.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/tile/spawner/AbstractSpawner.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/tile/spawner/AbstractSpawner.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/tile/spawner/NormalSpawner.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/tile/spawner/NormalSpawner.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/tile/tower/AbstractTower.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/tile/tower/AbstractTower.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/thegame/entity/tile/tower/NormalTower.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/thegame/entity/tile/tower/NormalTower.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/utilities/Pair.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/utilities/Pair.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/utilities/ThreadFactoryBuilder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/utilities/ThreadFactoryBuilder.java -------------------------------------------------------------------------------- /src/main/java/mrmathami/utilities/UnorderedPair.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhminhmr/thegame/HEAD/src/main/java/mrmathami/utilities/UnorderedPair.java --------------------------------------------------------------------------------