i have no words

This commit is contained in:
koneko 2025-02-07 18:40:37 +01:00
parent d573b34731
commit 8b0a65a205
16 changed files with 208 additions and 287 deletions

BIN
public/TiledTDThree64.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 143 KiB

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<tileset version="1.10" tiledversion="1.11.0" name="TiledTDThree64" tilewidth="64" tileheight="64" tilecount="140" columns="14"> <tileset version="1.10" tiledversion="1.11.0" name="TiledTDThree64" tilewidth="64" tileheight="64" tilecount="140" columns="14">
<image source="c:\Work\Projects\Matej\towerdefense-tiles\TiledTDThree64.png" width="896" height="640"/> <image source="./TiledTDThree64.png" width="896" height="640"/>
</tileset> </tileset>

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 KiB

View File

@ -28,31 +28,31 @@
], ],
"paths": [ "paths": [
[ [
[8, 0], [0, 8],
[8, 1], [1, 8],
[8, 2], [2, 8],
[8, 3], [3, 8],
[8, 4], [4, 8],
[8, 5], [5, 8],
[8, 6], [6, 8],
[8, 7], [7, 8],
[8, 8], [8, 8],
[8, 9], [9, 8],
[8, 10], [10, 8],
[8, 11], [11, 8],
[8, 12], [12, 8],
[8, 13], [13, 8],
[8, 14], [14, 8],
[8, 15], [15, 8],
[8, 16], [16, 8],
[8, 17], [17, 8],
[8, 18], [18, 8],
[8, 19], [19, 8],
[8, 20], [20, 8],
[8, 21], [21, 8],
[8, 22], [22, 8],
[8, 23], [23, 8],
[8, 24] [24, 8]
] ]
] ]
}, },

View File

@ -1,6 +1,6 @@
{ {
"name": "The Turn", "name": "The Turn",
"description": "A winding path presents new defensive challenges. Watch out for quick enemies!", "description": "Start using some better strategies for this one.",
"mapImage": { "mapImage": {
"url": "/assets/maps/02_the_turn.png" "url": "/assets/maps/02_the_turn.png"
}, },
@ -41,17 +41,40 @@
[10, 4], [10, 4],
[11, 4], [11, 4],
[12, 4], [12, 4],
[11, 6], [12, 5],
[11, 7], [12, 6],
[11, 8], [12, 7],
[11, 9], [12, 8],
[12, 9],
[12, 10],
[11, 10], [11, 10],
[11, 11], [10, 10],
[2, 10], [9, 10],
[2, 11], [8, 10],
[2, 12], [7, 10],
[2, 13], [6, 10],
[2, 14], [5, 10],
[4, 10],
[3, 10],
[3, 11],
[3, 12],
[3, 13],
[3, 14],
[4, 14],
[5, 14],
[6, 14],
[7, 14],
[8, 14],
[9, 14],
[10, 14],
[11, 14],
[12, 14],
[13, 14],
[14, 14],
[15, 14],
[16, 14],
[17, 14],
[18, 14],
[19, 14], [19, 14],
[20, 14], [20, 14],
[20, 13], [20, 13],
@ -63,7 +86,10 @@
[20, 7], [20, 7],
[20, 6], [20, 6],
[20, 5], [20, 5],
[20, 4] [21, 5],
[22, 5],
[23, 5],
[24, 5]
] ]
] ]
}, },
@ -73,30 +99,30 @@
{ {
"firstCreepSpawnTick": 500, "firstCreepSpawnTick": 500,
"spawnIntervalTicks": 1000, "spawnIntervalTicks": 1000,
"creeps": [0, 0, 0, 0] "creeps": [0, 0, 0, 0, 0]
},
{
"firstCreepSpawnTick": 5000,
"spawnIntervalTicks": 800,
"creeps": [1, 1, 1]
} }
], ],
"offeredGems": [0, 1] "offeredGems": [0, 0, 0, 0]
}, },
{ {
"waves": [ "waves": [
{ {
"firstCreepSpawnTick": 500, "firstCreepSpawnTick": 500,
"spawnIntervalTicks": 800, "spawnIntervalTicks": 1000,
"creeps": [0, 1, 0, 1, 0] "creeps": [1, 1, 1, 1, 1]
},
{
"firstCreepSpawnTick": 5000,
"spawnIntervalTicks": 600,
"creeps": [1, 1, 1, 1]
} }
], ],
"offeredGems": [0, 1, 2] "offeredGems": [0, 1, 2, 3]
},
{
"waves": [
{
"firstCreepSpawnTick": 500,
"spawnIntervalTicks": 1000,
"creeps": [2, 2, 2, 2, 2]
}
],
"offeredGems": [0, 1, 2, 3]
} }
] ]
} }

View File

@ -28,66 +28,66 @@
], ],
"paths": [ "paths": [
[ [
[8, 0], [0, 8],
[8, 1], [1, 8],
[8, 2], [2, 8],
[8, 3], [3, 8],
[8, 4],
[8, 5],
[8, 6],
[8, 7],
[8, 8],
[7, 8],
[6, 8],
[5, 8],
[4, 8], [4, 8],
[4, 9], [5, 8],
[4, 10], [6, 8],
[4, 11], [7, 8],
[4, 12], [8, 8],
[4, 13], [8, 7],
[4, 14], [8, 6],
[4, 15], [8, 5],
[4, 16], [8, 4],
[4, 17], [9, 4],
[4, 18], [10, 4],
[4, 19], [11, 4],
[4, 20], [12, 4],
[4, 21], [13, 4],
[4, 22], [14, 4],
[4, 23], [15, 4],
[4, 24] [16, 4],
[17, 4],
[18, 4],
[19, 4],
[20, 4],
[21, 4],
[22, 4],
[23, 4],
[24, 4]
], ],
[ [
[8, 0], [0, 8],
[8, 1], [1, 8],
[8, 2], [2, 8],
[8, 3], [3, 8],
[8, 4], [4, 8],
[8, 5], [5, 8],
[8, 6], [6, 8],
[8, 7], [7, 8],
[8, 8], [8, 8],
[9, 8], [8, 9],
[10, 8], [8, 10],
[11, 8], [8, 11],
[12, 8], [8, 12],
[12, 9], [9, 12],
[12, 10], [10, 12],
[12, 11], [11, 12],
[12, 12], [12, 12],
[12, 13], [13, 12],
[12, 14], [14, 12],
[12, 15], [15, 12],
[12, 16], [16, 12],
[12, 17], [17, 12],
[12, 18], [18, 12],
[12, 19], [19, 12],
[12, 20], [20, 12],
[12, 21], [21, 12],
[12, 22], [22, 12],
[12, 23], [23, 12],
[12, 24] [24, 12]
] ]
] ]
}, },

View File

@ -1,128 +0,0 @@
{
"name": "Mission 1",
"description": "This is the first mission",
"mapImage": {
"url": "/assets/maps/mission_01.png"
},
"gameMap": {
"rows": 17,
"columns": 25,
"cells": [
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
],
"paths": [
[
[0, 4],
[1, 4],
[2, 4],
[3, 4],
[4, 4],
[5, 4],
[6, 4],
[7, 4],
[8, 4],
[9, 4],
[10, 4],
[11, 4],
[12, 4],
[12, 5],
[12, 6],
[12, 7],
[12, 8],
[12, 9],
[12, 10],
[11, 10],
[10, 10],
[9, 10],
[8, 10],
[7, 10],
[6, 10],
[5, 10],
[4, 10],
[3, 10],
[3, 11],
[3, 12],
[3, 13],
[3, 14],
[4, 14],
[5, 14],
[6, 14],
[7, 14],
[8, 14],
[9, 14],
[10, 14],
[11, 14],
[12, 14],
[13, 14],
[14, 14],
[15, 14],
[16, 14],
[17, 14],
[18, 14],
[19, 14],
[20, 14],
[20, 13],
[20, 12],
[20, 11],
[20, 10],
[20, 9],
[20, 8],
[20, 7],
[20, 6],
[20, 5],
[21, 5],
[22, 5],
[23, 5],
[24, 5]
]
]
},
"rounds": [
{
"waves": [
{
"firstCreepSpawnTick": 500,
"spawnIntervalTicks": 1000,
"creeps": [0, 0, 0, 0, 0]
}
],
"offeredGems": [0, 0, 0, 0]
},
{
"waves": [
{
"firstCreepSpawnTick": 500,
"spawnIntervalTicks": 1000,
"creeps": [1, 1, 1, 1, 1]
}
],
"offeredGems": [0, 1, 2, 3]
},
{
"waves": [
{
"firstCreepSpawnTick": 500,
"spawnIntervalTicks": 1000,
"creeps": [2, 2, 2, 2, 2]
}
],
"offeredGems": [0, 1, 2, 3]
}
]
}

View File

@ -55,51 +55,51 @@
} }
}, },
"tiled/01_first_steps.tmx": { "tiled/01_first_steps.tmx": {
"scale": 0.75, "scale": 0.33,
"selectedLayer": 0, "selectedLayer": 0,
"viewCenter": { "viewCenter": {
"x": 800.6666666666665, "x": 639.3939393939394,
"y": 543.3333333333333 "y": 433.33333333333326
} }
}, },
"tiled/02_the_turn.tmx": { "tiled/02_the_turn.tmx": {
"scale": 1, "scale": 0.33,
"selectedLayer": 0, "selectedLayer": 0,
"viewCenter": { "viewCenter": {
"x": 800.5, "x": 869.6969696969697,
"y": 543.5 "y": 203.03030303030323
} }
}, },
"tiled/03_fork_in_the_road.tmx": { "tiled/03_fork_in_the_road.tmx": {
"scale": 1, "scale": 0.33,
"selectedLayer": 0, "selectedLayer": 0,
"viewCenter": { "viewCenter": {
"x": 800.5, "x": 2693.9393939393935,
"y": 543.5 "y": 239.3939393939395
} }
}, },
"tiled/04_crossroads.tmx": { "tiled/04_crossroads.tmx": {
"scale": 1, "scale": 1,
"selectedLayer": 0, "selectedLayer": 0,
"viewCenter": { "viewCenter": {
"x": 800.5, "x": 646.5,
"y": 543.5 "y": 543
} }
}, },
"tiled/05_the_maze.tmx": { "tiled/05_the_maze.tmx": {
"scale": 1.6494375, "scale": 0.5,
"selectedLayer": 0, "selectedLayer": 0,
"viewCenter": { "viewCenter": {
"x": 799.9696866355955, "x": 896,
"y": 544.1248910613467 "y": 406
} }
}, },
"tiled/06_multiple_fronts.tmx": { "tiled/06_multiple_fronts.tmx": {
"scale": 1.6494375, "scale": 0.75,
"selectedLayer": 0, "selectedLayer": 0,
"viewCenter": { "viewCenter": {
"x": 799.9696866355955, "x": 873.3333333333333,
"y": 544.1248910613467 "y": 474.6666666666666
} }
}, },
"tiled/Mission01.tmx": { "tiled/Mission01.tmx": {
@ -107,7 +107,7 @@
"selectedLayer": 0, "selectedLayer": 0,
"viewCenter": { "viewCenter": {
"x": 833, "x": 833,
"y": 628.5 "y": 629
} }
} }
}, },
@ -115,7 +115,7 @@
"last.externalTilesetPath": "/home/koneko/Programing/js/towerdefense/public", "last.externalTilesetPath": "/home/koneko/Programing/js/towerdefense/public",
"map.height": 17, "map.height": 17,
"map.lastUsedExportFilter": "All Files (*)", "map.lastUsedExportFilter": "All Files (*)",
"map.lastUsedFormat": "json", "map.lastUsedFormat": "tmx",
"map.tileHeight": 64, "map.tileHeight": 64,
"map.tileWidth": 64, "map.tileWidth": 64,
"map.width": 25, "map.width": 25,
@ -130,13 +130,13 @@
], ],
"project": "maps.tiled-project", "project": "maps.tiled-project",
"recentFiles": [ "recentFiles": [
"tiled/Mission01.tmx",
"tiled/04_crossroads.tmx", "tiled/04_crossroads.tmx",
"tiled/05_the_maze.tmx", "tiled/05_the_maze.tmx",
"tiled/06_multiple_fronts.tmx", "tiled/06_multiple_fronts.tmx",
"tiled/03_fork_in_the_road.tmx", "tiled/03_fork_in_the_road.tmx",
"tiled/02_the_turn.tmx", "tiled/02_the_turn.tmx",
"tiled/01_first_steps.tmx", "tiled/01_first_steps.tmx",
"tiled/Mission01.tmx",
"tiled/01_first_steps..tmx", "tiled/01_first_steps..tmx",
"Mission011.tmx", "Mission011.tmx",
"Tileset.tsx", "Tileset.tsx",

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<map version="1.10" tiledversion="1.11.2" orientation="orthogonal" renderorder="right-down" width="25" height="17" tilewidth="64" tileheight="64" infinite="0" nextlayerid="2" nextobjectid="1"> <map version="1.10" tiledversion="1.11.1" orientation="orthogonal" renderorder="right-down" width="25" height="17" tilewidth="64" tileheight="64" infinite="0" nextlayerid="2" nextobjectid="1">
<tileset firstgid="1" source="../Tileset.tsx"/> <tileset firstgid="1" source="../Tileset.tsx"/>
<layer id="1" name="Tile Layer 1" width="25" height="17"> <layer id="1" name="Tile Layer 1" width="25" height="17">
<data encoding="csv"> <data encoding="csv">
@ -7,10 +7,10 @@
15,3,4,4,21,18,19,15,15,15,15,15,3,4,4,4,4,4,4,4,4,4,5,15,15, 15,3,4,4,21,18,19,15,15,15,15,15,3,4,4,4,4,4,4,4,4,4,5,15,15,
15,17,18,18,18,18,19,15,15,15,15,15,17,18,18,18,18,18,18,18,18,18,19,15,15, 15,17,18,18,18,18,19,15,15,15,15,15,17,18,18,18,18,18,18,18,18,18,19,15,15,
15,17,18,6,32,32,33,15,15,15,15,15,17,18,6,32,32,32,32,32,7,18,19,15,15, 15,17,18,6,32,32,33,15,15,15,15,15,17,18,6,32,32,32,32,32,7,18,19,15,15,
15,17,18,20,4,4,4,4,4,4,4,4,21,18,19,15,15,15,15,15,17,18,20,4,4, 15,17,18,19,15,15,15,15,15,15,15,15,17,18,19,15,15,15,15,15,17,18,20,4,4,
15,17,18,18,18,18,18,18,18,18,18,18,18,18,19,15,15,15,15,15,17,18,18,18,18, 15,17,18,20,4,4,4,4,4,4,4,4,21,18,19,15,15,15,15,15,17,18,18,18,18,
15,31,32,32,32,32,32,32,32,32,32,32,32,32,33,15,15,15,15,15,31,32,32,32,32, 15,17,18,18,18,18,18,18,18,18,18,18,18,18,19,15,15,15,15,15,31,32,32,32,32,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, 15,31,32,32,32,32,32,32,32,32,32,32,32,32,33,15,15,15,15,15,15,15,15,15,15,
4,4,4,5,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, 4,4,4,5,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
18,18,18,19,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, 18,18,18,19,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
32,7,18,19,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, 32,7,18,19,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,

View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.10" tiledversion="1.11.1" orientation="orthogonal" renderorder="right-down" width="25" height="17" tilewidth="64" tileheight="64" infinite="0" nextlayerid="2" nextobjectid="1">
<tileset firstgid="1" source="../Tileset.tsx"/>
<layer id="1" name="Tile Layer 1" width="25" height="17">
<data encoding="csv">
15,17,18,19,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,17,18,19,15,
15,17,18,19,15,3,4,4,4,4,4,5,15,3,4,4,4,4,4,5,15,17,18,19,15,
15,17,18,19,15,17,18,18,18,18,18,19,15,17,18,18,18,18,18,19,15,17,18,19,15,
15,17,18,19,15,17,18,6,32,7,18,19,15,17,18,6,32,7,18,19,15,17,18,19,15,
15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,
15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,
15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,
15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,
15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,
15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,
15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,
15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,
15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,17,18,19,15,
15,17,18,20,4,21,18,19,15,17,18,20,4,21,18,19,15,17,18,20,4,21,18,19,15,
15,17,18,18,18,18,18,19,15,17,18,18,18,18,18,19,15,17,18,18,18,18,18,19,15,
15,31,32,32,32,32,32,33,15,31,32,32,32,32,32,33,15,31,32,32,32,32,32,33,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15
</data>
</layer>
</map>

View File

@ -1,25 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.10" tiledversion="1.11.2" orientation="orthogonal" renderorder="right-down" width="25" height="17" tilewidth="64" tileheight="64" infinite="0" nextlayerid="2" nextobjectid="1">
<tileset firstgid="1" source="../Tileset.tsx"/>
<layer id="1" name="Tile Layer 1" width="25" height="17">
<data encoding="csv">
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
4,4,4,4,4,4,4,4,4,4,4,4,4,5,15,15,15,15,15,15,15,15,15,15,15,
18,18,18,18,18,18,18,18,18,18,18,18,18,19,15,15,15,15,15,3,4,4,4,4,4,
32,32,32,32,32,32,32,32,32,32,32,7,18,19,15,15,15,15,15,17,18,18,18,18,18,
15,15,15,15,15,15,15,15,15,15,15,17,18,19,15,15,15,15,15,17,18,6,32,32,32,
15,15,15,15,15,15,15,15,15,15,15,17,18,19,15,15,15,15,15,17,18,19,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,17,18,19,15,15,15,15,15,17,18,19,15,15,15,
15,15,3,4,4,4,4,4,4,4,4,21,18,19,15,15,15,15,15,17,18,19,15,15,15,
15,15,17,18,18,18,18,18,18,18,18,18,18,19,15,15,15,15,15,17,18,19,15,15,15,
15,15,17,18,6,32,32,32,32,32,32,32,32,33,15,15,15,15,15,17,18,19,15,15,15,
15,15,17,18,19,15,15,15,15,15,15,15,15,15,15,15,15,15,15,17,18,19,15,15,15,
15,15,17,18,20,4,4,4,4,4,4,4,4,4,4,4,4,4,4,21,18,19,15,15,15,
15,15,17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,19,15,15,15,
15,15,31,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,33,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15
</data>
</layer>
</map>

View File

@ -152,7 +152,6 @@ export default class GameAssets {
private static async LoadMissions() { private static async LoadMissions() {
// When adding missions, make sure to keep order. // When adding missions, make sure to keep order.
await this.LoadMission('./assets/missions/mission_01.json');
await this.LoadMission('./assets/missions/01_first_steps.json'); await this.LoadMission('./assets/missions/01_first_steps.json');
await this.LoadMission('./assets/missions/02_the_turn.json'); await this.LoadMission('./assets/missions/02_the_turn.json');
await this.LoadMission('./assets/missions/03_fork_in_the_road.json'); await this.LoadMission('./assets/missions/03_fork_in_the_road.json');

View File

@ -30,6 +30,9 @@ export class Engine {
public static MouseY: number = 0; public static MouseY: number = 0;
public static TestSuite() { public static TestSuite() {
let params = new URLSearchParams(location.href);
if (params.entries().next().value[1] != 'game') return;
Engine.NotificationManager.Notify('Loaded testing suite.', 'danger'); Engine.NotificationManager.Notify('Loaded testing suite.', 'danger');
Engine.TowerManager.ToggleChoosingTowerLocation('RESET'); Engine.TowerManager.ToggleChoosingTowerLocation('RESET');
Engine.TowerManager.PlaceTower(GameAssets.Towers[1], 8, 10, GameAssets.Towers[0].behaviour, true); Engine.TowerManager.PlaceTower(GameAssets.Towers[1], 8, 10, GameAssets.Towers[0].behaviour, true);

View File

@ -66,6 +66,27 @@ export class Cell extends GameObject {
this.hasTowerPlaced = false; this.hasTowerPlaced = false;
} }
}); });
// Disable this if you want to add new maps.
// if(true) return;
const text = new PIXI.Text({
text: `${this.column}|${this.row}`,
style: new PIXI.TextStyle({
fill: 0xffffff,
stroke: {
color: 0x000000,
width: 2,
},
}),
});
this.container.addChild(text);
text.anchor.set(0.5, 0.5);
text.x = this.bb.width / 2;
text.y = this.bb.height / 2;
if (isPath) {
text.style.fill = 'pink';
text.style.fontWeight = 'bold';
}
} }
public showRangePreview(invalid, range) { public showRangePreview(invalid, range) {
let color = 0xffffff; let color = 0xffffff;

View File

@ -64,7 +64,7 @@ import KeyboardManager from './classes/game/KeyboardManager';
}); });
Engine.GameMaster.changeScene(new MainScene()); Engine.GameMaster.changeScene(new MainScene());
let params = new URLSearchParams(location.href); let params = new URLSearchParams(location.href);
if (params.entries().next().value[1] == 'game') Engine.GameMaster.changeScene(new GameScene('Mission 1')); if (params.entries().next().value[1] == 'game') Engine.GameMaster.changeScene(new GameScene('The Turn'));
if (Engine.latestCommit != 'DEVELOPMENT') if (Engine.latestCommit != 'DEVELOPMENT')
window.onbeforeunload = () => { window.onbeforeunload = () => {