about summary refs log tree commit diff stats
path: root/html/tower/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'html/tower/index.html')
-rw-r--r--html/tower/index.html110
1 files changed, 110 insertions, 0 deletions
diff --git a/html/tower/index.html b/html/tower/index.html
new file mode 100644
index 0000000..23755fa
--- /dev/null
+++ b/html/tower/index.html
@@ -0,0 +1,110 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>Tower Defense</title>
+    <style>
+        body {
+            margin: 0;
+            display: flex;
+            justify-content: center;
+            align-items: center;
+            min-height: 100vh;
+            background-color: #f0f0f0;
+        }
+        .game-container {
+            position: relative;
+            display: flex;
+            gap: 20px;
+        }
+        #gameCanvas {
+            border: 2px solid #333;
+            background-color: white;
+        }
+        .tower-palette {
+            width: 100px;
+            background: white;
+            border: 2px solid #333;
+            padding: 10px;
+            display: flex;
+            flex-direction: column;
+            gap: 10px;
+        }
+        .tower-option {
+            width: 80px;
+            height: 80px;
+            border: 2px solid #666;
+            cursor: grab;
+            position: relative;
+            display: flex;
+            flex-direction: column;
+            align-items: center;
+            justify-content: center;
+        }
+        .tower-option:active {
+            cursor: grabbing;
+        }
+        .tower-preview {
+            width: 40px;
+            height: 40px;
+            margin-bottom: 5px;
+        }
+        .tower-cost {
+            font-size: 12px;
+            color: #666;
+        }
+        .start-button {
+            margin-top: 20px;
+            padding: 10px;
+            background-color: #2ecc71;
+            color: white;
+            border: none;
+            border-radius: 4px;
+            cursor: pointer;
+            font-size: 16px;
+            width: 100%;
+        }
+        .start-button:hover {
+            background-color: #27ae60;
+        }
+        .start-button:disabled {
+            background-color: #95a5a6;
+            cursor: not-allowed;
+        }
+    </style>
+</head>
+<body>
+    <div class="game-container">
+        <div class="tower-palette">
+            <div class="tower-option" draggable="true" data-tower-type="BASIC">
+                <div class="tower-preview" style="background: #4a90e2;"></div>
+                <div class="tower-cost">$20</div>
+            </div>
+            <div class="tower-option" draggable="true" data-tower-type="SNIPER">
+                <div class="tower-preview" style="background: #9b59b6;"></div>
+                <div class="tower-cost">$40</div>
+            </div>
+            <div class="tower-option" draggable="true" data-tower-type="RAPID">
+                <div class="tower-preview" style="background: #2ecc71;"></div>
+                <div class="tower-cost">$35</div>
+            </div>
+            <button id="startCombat" class="start-button">Start Combat</button>
+        </div>
+        <canvas id="gameCanvas" width="600" height="600"></canvas>
+    </div>
+    
+    <!-- Core game modules -->
+    <script src="js/grid.js"></script>
+    <script src="js/path.js"></script>
+    <script src="js/tower.js"></script>
+    <script src="js/enemy.js"></script>
+    
+    <!-- Rendering modules -->
+    <script src="js/renderer.js"></script>
+    
+    <!-- Game state and main loop -->
+    <script src="js/gameState.js"></script>
+    <script src="js/game.js"></script>
+</body>
+</html>
\ No newline at end of file