BigBombBlockData.ts
1.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import BigBombView from "../../../prefabs/BigBombView";
import { ObjType } from "../BattleConst";
import { MapData } from "./MapData";
import { RectBlockData } from "./RectBlockData";
export class BigBombBlockData extends RectBlockData {
initBlock(map: MapData, type: ObjType, hp: number, gridX: number, gridY: number, width: number, height: number): void {
super.initBlock(map, type, hp, gridX, gridY, width, height);
}
protected getImgName(): string {
return '';
}
onCollisonToBall(collider: cc.Collider): void {
if (this._hp > 1) {
super.onCollisonToBall(collider);
}
else if (this._hp == 1) {
this._hp--;
if (!this.map.battle.bigBombTriggered) {
this.map.battle.bigBombTriggered = true;
this.map.battle.collectAll();
(this._IView as BigBombView).bomb();
}
}
}
onBombFinish() {
this.dead();
}
onDead(): void {
super.onDead();
this.map.blockData.forEach((value, key, map) => {
value.dead();
}, this);
}
clone(): BigBombBlockData {
return this.cloneValue(new BigBombBlockData()) as BigBombBlockData;
}
}