fix(game): 修复底部塔面板不可见问题,改用React层实现,并用AI素材替换Graphics像素块

This commit is contained in:
Cloud Bot
2026-03-21 08:32:23 +00:00
parent 66b7776f32
commit 085aa0a407
14 changed files with 405 additions and 469 deletions

View File

@@ -4,35 +4,12 @@ import { getRandomQuote } from '../data/quotes'
export class OldEmployee extends EnemyBase {
constructor(scene: Phaser.Scene, pathPoints: PathPoint[]) {
super(scene, pathPoints, 150, 50, 8, 30)
super(scene, pathPoints, 150, 50, 8, 30, 'enemy-old')
this.shieldCount = 3
this.drawSprite()
// 老员工图片稍大
const scale = Math.min(this.cellW, this.cellH) / 128 * 0.9
this.imageSprite.setScale(scale)
}
drawSprite(): void {
if (!this.sprite) return
this.sprite.clear()
// 大蓝方块
this.sprite.fillStyle(0x93c5fd, 1)
this.sprite.fillRect(-10, -10, 20, 20)
// 护盾外框(金色)
this.sprite.lineStyle(2, 0xfbbf24, 0.8)
this.sprite.strokeRect(-12, -12, 24, 24)
this.sprite.setDepth(10)
this.sprite.setPosition(this.x, this.y)
}
override drawHealthBar(): void {
super.drawHealthBar()
// 绘制护盾数量标记
if (!this.healthBar) return
for (let i = 0; i < this.shieldCount; i++) {
this.healthBar.fillStyle(0xfbbf24, 1)
this.healthBar.fillRect(this.x - 15 + i * 11, this.y - 28, 8, 4)
}
}
getQuote(): string {
return getRandomQuote('OldEmployee')
}
getQuote(): string { return getRandomQuote('OldEmployee') }
}