[common] added Eagle death flag
This commit is contained in:
@@ -126,11 +126,15 @@ class Render extends SpriteView implements EngineListener {
|
||||
}
|
||||
|
||||
public function onCollision(entity:EntityType, with:EntityType):Void {
|
||||
|
||||
switch [entity, with] {
|
||||
case [EntityType.BULLET(_), EntityType.EAGLE(eagle)]:
|
||||
playTankBoom(eagle.rect.center);
|
||||
case _:
|
||||
}
|
||||
}
|
||||
|
||||
public function onDestroy(entity:EntityType):Void {
|
||||
switch(entity) {
|
||||
switch entity {
|
||||
case EntityType.TANK(tank):
|
||||
if (items.exists(tank.key)) {
|
||||
entryLayer.removeChild(items.get(tank.key).view);
|
||||
@@ -143,12 +147,6 @@ class Render extends SpriteView implements EngineListener {
|
||||
items.remove(bullet.key);
|
||||
playBulletBoom(bullet.rect.center.add(new Point(bullet.rect.width * bullet.rect.direction.x, bullet.rect.height * bullet.rect.direction.y)));
|
||||
}
|
||||
case EntityType.EAGLE(eagle):
|
||||
if (items.exists(eagle.key)) {
|
||||
cast(items.get(eagle.key), EagleItem).destoyed = true;
|
||||
items.get(eagle.key).redraw();
|
||||
playTankBoom(eagle.rect.center);
|
||||
}
|
||||
case EntityType.BONUS(bonus):
|
||||
if (items.exists(bonus.key)) {
|
||||
entryLayer.removeChild(items.get(bonus.key).view);
|
||||
|
||||
@@ -227,10 +227,19 @@ class BulletItem extends BitmapItem<Bullet> {
|
||||
|
||||
class EagleItem extends BitmapItem<Eagle> {
|
||||
|
||||
public var destoyed(default, default):Bool;
|
||||
private var death:Bool;
|
||||
|
||||
override public function update():Void {
|
||||
super.update();
|
||||
var d = value.death;
|
||||
if (d != death) {
|
||||
death = d;
|
||||
redraw();
|
||||
}
|
||||
}
|
||||
|
||||
override private function getImage():String {
|
||||
return 'resources/images/eagle/eagle-${destoyed ? 1 : 0}.png';
|
||||
return 'resources/image/eagle/eagle${value.death ? '-death' : ''}.png';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user