       @repeat @sequence(
         @rocketStrikeDance()
         @wait 100
-        @mineFieldStrike()
-        @wait 200
-      )
-    )
-
-  mineFieldStrike: ->
+        @mineStomp()
+        @wait 100
+      )
+    )
+
+  fase2: ->
+    # start at .7
+    @bindSequence 'Hit', @fase3, => @entity.healthBelow .4
+
+    # fase 2
+    @sequence(
+      @mineFieldStrike('BridgeDamage')
+      @repeat @sequence(
+        @wait 100
+        @rocketStrikeDance()
+        @wait 100
+        @mineStomp()
+      )
+    )
+
+  fase3: ->
+    # start at .4
+    @bindSequence 'Hit', @endOfFight, => @entity.healthBelow .2
+
+    @sequence(
+      @mineFieldStrike('BridgeCollapse')
+      @wait 500
+      @rocketStrikeDance()
+      #@cancelBullets('Mine')
+      #@cancelBullets('shadow')
+      @setSpeed 200
+      @repeat @sequence(
+        @bombRaid(yes)
+        @repeat 2, @while(
+          @rocketStrikeDanceHoming()
+          @sequence(
+            @async @runScript(Stage1BossMine, @location())
+            @wait 1500
+          )
+        )
+        @wait 1000
+      )
+    )
+
+  mineStomp: ->
+    @sequence(
+      @animate 'fast', -1, 'eye'
+
+      @while(
+        @repeat(2,
+          @placeSquad(Stage1BossMineStomp,
+            amount: 8
+            delay: 50
+            options:
+              location: @location()
+              gridConfig:
+                x:
+                  start: ->
+                    rnd = Math.random()
+                    loc = 1 + Math.floor(rnd * 5.0)
+                    loc * 0.15
+                  steps: 1
+                  stepSize: 0.15
+                y:
+                  start: 0.125
+                  steps: 8
+                  stepSize: 0.1
+          )
+        )
+        @movePath([
+          [.7, .3]
+          [.9, .4]
+          [.9, .2]
+        ], speed: 200)
+      )
+      @animate 'slow', -1, 'eye'
+    )
+
+  mineFieldStrike: (event) ->
     @sequence(
       @parallel(
         @sequence(

  spawn: (options) ->
    location = options.location()
    @target = options.grid.getLocation()

    Crafty.e('Mine').mine(
      x: location.x
      y: location.y + 36
      defaultSpeed: options.speed ? 250
      pointsOnHit: if options.points then 10 else 0
      pointsOnDestroy: if options.points then 50 else 0

    )

  execute: ->
    @bindSequence 'Hit', @fase2, => @entity.healthBelow .7

    @sequence(
      @invincible yes
