├── .gitignore ├── Materials ├── Levels │ ├── back.png │ ├── map1 │ │ ├── map.tmx │ │ └── tileset.png │ ├── map2 │ │ ├── map.tmx │ │ └── tileset.png │ ├── map3 │ │ ├── map.tmx │ │ └── tileset.png │ └── tileset.png ├── Scripts │ ├── ButtonObj.cs │ ├── Layer2D.cs │ ├── MyAssetPostProcessor.cs │ ├── MyCanvas.cs │ ├── TMXLoader.cs │ ├── TextObj.cs │ ├── Token.cs │ ├── TokenMgr.cs │ ├── Util.cs │ └── Vec2D.cs └── Sprites │ └── all.png ├── Projects └── TD │ ├── Assets │ ├── Materials.meta │ ├── Materials │ │ ├── mat_particle.mat │ │ └── mat_particle.mat.meta │ ├── Resources.meta │ ├── Resources │ │ ├── Levels.meta │ │ ├── Levels │ │ │ ├── map.tmx │ │ │ ├── map.tmx.meta │ │ │ ├── map.xml │ │ │ ├── map.xml.meta │ │ │ ├── tileset.png │ │ │ └── tileset.png.meta │ │ ├── Prefabs.meta │ │ └── Prefabs │ │ │ ├── Enemy.prefab │ │ │ ├── Enemy.prefab.meta │ │ │ ├── Field.prefab │ │ │ ├── Field.prefab.meta │ │ │ ├── Particle.prefab │ │ │ ├── Particle.prefab.meta │ │ │ ├── Shot.prefab │ │ │ ├── Shot.prefab.meta │ │ │ ├── Tower.prefab │ │ │ └── Tower.prefab.meta │ ├── Scenes.meta │ ├── Scenes │ │ ├── Main.unity │ │ └── Main.unity.meta │ ├── Scripts.meta │ ├── Scripts │ │ ├── Cost.cs │ │ ├── Cost.cs.meta │ │ ├── Cursor.cs │ │ ├── Cursor.cs.meta │ │ ├── CursorRange.cs │ │ ├── CursorRange.cs.meta │ │ ├── Enemy.cs │ │ ├── Enemy.cs.meta │ │ ├── EnemyGenerator.cs │ │ ├── EnemyGenerator.cs.meta │ │ ├── EnemyParam.cs │ │ ├── EnemyParam.cs.meta │ │ ├── Field.cs │ │ ├── Field.cs.meta │ │ ├── GameMgr.cs │ │ ├── GameMgr.cs.meta │ │ ├── Global.cs │ │ ├── Global.cs.meta │ │ ├── Gui.cs │ │ ├── Gui.cs.meta │ │ ├── Particle.cs │ │ ├── Particle.cs.meta │ │ ├── Shot.cs │ │ ├── Shot.cs.meta │ │ ├── Tower.cs │ │ ├── Tower.cs.meta │ │ ├── TowerParam.cs │ │ ├── TowerParam.cs.meta │ │ ├── Utility.meta │ │ ├── Utility │ │ │ ├── ButtonObj.cs │ │ │ ├── ButtonObj.cs.meta │ │ │ ├── Layer2D.cs │ │ │ ├── Layer2D.cs.meta │ │ │ ├── MyAssetPostProcessor.cs │ │ │ ├── MyAssetPostProcessor.cs.meta │ │ │ ├── MyCanvas.cs │ │ │ ├── MyCanvas.cs.meta │ │ │ ├── TMXLoader.cs │ │ │ ├── TMXLoader.cs.meta │ │ │ ├── TextObj.cs │ │ │ ├── TextObj.cs.meta │ │ │ ├── Token.cs │ │ │ ├── Token.cs.meta │ │ │ ├── TokenMgr.cs │ │ │ ├── TokenMgr.cs.meta │ │ │ ├── Util.cs │ │ │ ├── Util.cs.meta │ │ │ ├── Vec2D.cs │ │ │ └── Vec2D.cs.meta │ │ ├── WaveStart.cs │ │ └── WaveStart.cs.meta │ ├── Sprites.meta │ └── Sprites │ │ ├── all.png │ │ ├── all.png.meta │ │ ├── back.png │ │ └── back.png.meta │ └── ProjectSettings │ ├── AudioManager.asset │ ├── DynamicsManager.asset │ ├── EditorBuildSettings.asset │ ├── EditorSettings.asset │ ├── GraphicsSettings.asset │ ├── InputManager.asset │ ├── NavMeshAreas.asset │ ├── NetworkManager.asset │ ├── Physics2DSettings.asset │ ├── ProjectSettings.asset │ ├── ProjectVersion.txt │ ├── QualitySettings.asset │ ├── TagManager.asset │ └── TimeManager.asset ├── README.md └── README.txt /.gitignore: -------------------------------------------------------------------------------- 1 | Projects/TD/ProjectSettings/.DS_Store 2 | -------------------------------------------------------------------------------- /Materials/Levels/back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/syun77/Unity2D_TD/245d52b18a8da1a64c1813746b844eefb3506674/Materials/Levels/back.png -------------------------------------------------------------------------------- /Materials/Levels/map1/map.tmx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 9 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 10 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 11 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 12 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 13 | 3,3,3,3,6,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 14 | 1,1,1,1,4,1,1,1,1,1,5,3,3,3,6,1,1,1,1,1, 15 | 1,1,1,1,4,1,1,1,1,1,4,1,1,1,4,1,1,1,1,1, 16 | 1,1,1,1,4,1,1,1,1,1,4,1,1,1,4,1,1,1,1,1, 17 | 1,1,1,1,7,3,3,3,3,3,8,1,1,1,4,1,1,1,1,1, 18 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,1,1,1,1,1, 19 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,1,1,1,1,1, 20 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,1,1,5,3,1, 21 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,3,3,8,1,1, 22 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 23 | 24 | 25 | 26 | 27 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,14, 28 | 0,11,0,0,0,0,0,0,0,11,0,0,0,0,10,11,0,0,21,22, 29 | 0,0,0,11,10,0,0,0,0,10,0,0,0,0,0,0,0,0,9,0, 30 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0, 31 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 32 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 33 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 34 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 35 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 36 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 37 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 38 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,16, 39 | 0,0,10,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,23,24, 40 | 13,14,11,0,0,0,0,10,11,0,0,0,0,0,0,0,0,0,0,0, 41 | 21,22,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /Materials/Levels/map1/tileset.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/syun77/Unity2D_TD/245d52b18a8da1a64c1813746b844eefb3506674/Materials/Levels/map1/tileset.png -------------------------------------------------------------------------------- /Materials/Levels/map2/map.tmx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 9 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 10 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 11 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 12 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 13 | 3,3,3,3,6,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 14 | 1,1,1,1,4,1,1,1,1,1,5,3,3,3,6,1,1,1,1,1, 15 | 1,1,1,1,4,1,1,1,1,1,4,1,1,1,4,1,1,1,1,1, 16 | 1,1,1,1,4,1,1,1,1,1,4,1,1,1,4,1,1,1,1,1, 17 | 1,1,1,1,7,3,3,3,3,3,8,1,1,1,4,1,1,1,1,1, 18 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,1,1,1,1,1, 19 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,1,1,1,1,1, 20 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,1,1,5,3,1, 21 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,3,3,8,1,1, 22 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 23 | 24 | 25 | 26 | 27 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,14, 28 | 0,11,0,0,0,0,0,0,0,11,0,0,0,0,10,11,0,0,21,22, 29 | 0,0,0,11,10,0,0,0,0,10,0,0,0,0,0,0,0,0,9,0, 30 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0, 31 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 32 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 33 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 34 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 35 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 36 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 37 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 38 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,16, 39 | 0,0,10,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,23,24, 40 | 13,14,11,0,0,0,0,10,11,0,0,0,0,0,0,0,0,0,0,0, 41 | 21,22,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0 42 | 43 | 44 | 45 | 46 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 47 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 48 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 49 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 50 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 51 | 26,25,25,25,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 52 | 0,0,0,0,25,0,0,0,0,0,25,25,25,25,25,0,0,0,0,0, 53 | 0,0,0,0,25,0,0,0,0,0,25,0,0,0,25,0,0,0,0,0, 54 | 0,0,0,0,25,0,0,0,0,0,25,0,0,0,25,0,0,0,0,0, 55 | 0,0,0,0,25,25,25,25,25,25,25,0,0,0,25,0,0,0,0,0, 56 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0, 57 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0, 58 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,25,25,0, 59 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,25,25,25,0,0, 60 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 61 | 62 | 63 | 64 | -------------------------------------------------------------------------------- /Materials/Levels/map2/tileset.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/syun77/Unity2D_TD/245d52b18a8da1a64c1813746b844eefb3506674/Materials/Levels/map2/tileset.png -------------------------------------------------------------------------------- /Materials/Levels/map3/map.tmx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 9 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 10 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 11 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 12 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 13 | 3,3,3,3,6,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 14 | 1,1,1,1,4,1,1,1,1,1,5,3,3,3,6,1,1,1,1,1, 15 | 1,1,1,1,4,1,1,1,1,1,4,1,1,1,4,1,1,1,1,1, 16 | 1,1,1,1,4,1,1,1,1,1,4,1,1,1,4,1,1,1,1,1, 17 | 1,1,1,1,7,3,3,3,3,3,8,1,1,1,4,1,1,1,1,1, 18 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,1,1,1,1,1, 19 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,1,1,1,1,1, 20 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,4,1,1,5,3,1, 21 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,3,3,8,1,1, 22 | 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 23 | 24 | 25 | 26 | 27 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,14, 28 | 0,11,0,0,0,0,0,0,0,11,0,0,0,0,10,11,0,0,21,22, 29 | 0,0,0,11,10,0,0,0,0,10,0,0,0,0,0,0,0,0,9,0, 30 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0, 31 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 32 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 33 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 34 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 35 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 36 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 37 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 38 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,16, 39 | 0,0,10,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,23,24, 40 | 13,14,11,0,0,0,0,10,11,0,0,0,0,0,0,0,0,0,0,0, 41 | 21,22,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0 42 | 43 | 44 | 45 | 46 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 47 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 48 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 49 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 50 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 51 | 26,25,25,25,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 52 | 0,0,0,0,25,0,0,0,0,0,25,25,25,25,25,0,0,0,0,0, 53 | 0,0,0,0,25,0,0,0,0,0,25,0,0,0,25,0,0,0,0,0, 54 | 0,0,0,0,25,0,0,0,0,0,25,0,0,0,25,0,0,0,0,0, 55 | 0,0,0,0,25,25,25,25,25,25,25,0,0,0,25,0,0,0,0,0, 56 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0, 57 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0, 58 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,25,25,0, 59 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,25,25,25,0,0, 60 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 61 | 62 | 63 | 64 | 65 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 66 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 67 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 68 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 69 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 70 | 28,28,28,28,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 71 | 0,0,0,0,28,0,0,0,0,0,28,28,28,28,28,0,0,0,0,0, 72 | 0,0,0,0,28,0,0,0,0,0,28,0,0,0,28,0,0,0,0,0, 73 | 0,0,0,0,28,0,0,0,0,0,28,0,0,0,28,0,0,0,0,0, 74 | 0,0,0,0,28,28,28,28,28,28,28,0,0,0,28,0,0,0,0,0, 75 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,0,0, 76 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28,28, 77 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,28,28,28, 78 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,28,28,28,0,0, 79 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 80 | 81 | 82 | 83 | -------------------------------------------------------------------------------- /Materials/Levels/map3/tileset.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/syun77/Unity2D_TD/245d52b18a8da1a64c1813746b844eefb3506674/Materials/Levels/map3/tileset.png -------------------------------------------------------------------------------- /Materials/Levels/tileset.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/syun77/Unity2D_TD/245d52b18a8da1a64c1813746b844eefb3506674/Materials/Levels/tileset.png -------------------------------------------------------------------------------- /Materials/Scripts/ButtonObj.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using UnityEngine.UI; 4 | 5 | /// 6 | /// uGUI Button操作モジュール 7 | /// 8 | public class ButtonObj : MonoBehaviour { 9 | 10 | /// uGUI Button 11 | Button _button = null; 12 | 13 | /// uGUI Text 14 | // ※有効にするための条件 15 | // ・Textはボタンの直下の階層にあること 16 | // ・オブジェクト名に"Text"という文字が含まれていること 17 | Text _text = null; 18 | public string Label 19 | { 20 | get { return _text.text; } 21 | set { _text.text = value; } 22 | } 23 | /// 書式付きでテキストを設定する 24 | public void FormatLabel(string format, params object[] arg0) 25 | { 26 | Label = string.Format(format, arg0); 27 | } 28 | 29 | /// 表示フラグ 30 | public bool Visible 31 | { 32 | get { return enabled; } 33 | set { enabled = value; } 34 | } 35 | 36 | /// 有効フラグ 37 | public bool Enabled 38 | { 39 | get { return _button.interactable; } 40 | set { _button.interactable = value; } 41 | } 42 | 43 | void Start () { 44 | // ボタンを取得 45 | _button = GetComponent