about summary refs log tree commit diff stats
path: root/html/tower/js/renderer.js
diff options
context:
space:
mode:
Diffstat (limited to 'html/tower/js/renderer.js')
-rw-r--r--html/tower/js/renderer.js38
1 files changed, 37 insertions, 1 deletions
diff --git a/html/tower/js/renderer.js b/html/tower/js/renderer.js
index cd2d11d..9bebe0b 100644
--- a/html/tower/js/renderer.js
+++ b/html/tower/js/renderer.js
@@ -114,7 +114,7 @@ function renderTowers(ctx, towers) {
     towers.forEach(tower => {
         const healthPercent = tower.currentHealth / tower.maxHealth;
         
-        // Draw tower body with opacity based on health
+        // Draw tower body
         ctx.fillStyle = tower.color + Math.floor(healthPercent * 255).toString(16).padStart(2, '0');
         ctx.fillRect(
             tower.position.x * cellSize + cellSize * 0.1,
@@ -123,6 +123,16 @@ function renderTowers(ctx, towers) {
             cellSize * 0.8
         );
         
+        // Draw ammo count
+        ctx.fillStyle = 'white';
+        ctx.font = '12px Arial';
+        ctx.textAlign = 'center';
+        ctx.fillText(
+            tower.ammo,
+            (tower.position.x + 0.5) * cellSize,
+            (tower.position.y + 0.7) * cellSize
+        );
+        
         // Draw range indicator
         if (gameState.phase === GamePhase.PLACEMENT) {
             ctx.beginPath();
@@ -277,4 +287,30 @@ function renderProjectiles(ctx, projectiles) {
             ctx.fill();
         }
     });
+}
+
+// Update level complete message in game.js
+function handleLevelComplete() {
+    gameState.phase = GamePhase.TRANSITION;
+    
+    // Calculate ammo bonus
+    let ammoBonus = 0;
+    gameState.towers.forEach(tower => {
+        ammoBonus += tower.ammo * 2;
+    });
+    
+    const message = `
+        Level ${gameState.level} Complete!
+        Current Money: $${gameState.currency}
+        Ammo Bonus: +$${ammoBonus}
+        Level Bonus: +$10
+        
+        Ready for Level ${gameState.level + 1}?
+    `;
+    
+    setTimeout(() => {
+        if (confirm(message)) {
+            startNextLevel();
+        }
+    }, 100);
 } 
\ No newline at end of file