     # クリティカルフラグ 0=ミス, 1=命中, 2=クリティカル
     critical = []
     for crt, j in raigeki.api_fcl[i]
-      critical.push if crt == 2 then HitType.Critical else HitType.Hit
+      if crt == 2
+        critical.push HitType.Critical
+      else if crt == 1
+        critical.push HitType.Hit
+      else
+        critical.push HitType.Miss
     list.push new Attack AttackType[AttackTypeMap[0]], sortieShip[i - 1], enemyShip[target - 1], enemyShip[target - 1].maxHP, enemyShip[target - 1].nowHP, dmg, critical
     enemyShip[target - 1].nowHP -= damage
   # 雷撃ターゲット

      dmg = []
      dmg.push damage
      critical = []
      critical.push if kouku.api_ecl_flag[i] == 1 then HitType.Critical else HitType.Hit
      list.push new Attack AttackType[AttackTypeMap[0]], null, enemyShip[i - 1], enemyShip[i - 1].maxHP, enemyShip[i - 1].nowHP, dmg, critical
      enemyShip[i - 1].nowHP -= damage
  if kouku.api_fdam?

      dmg = []
      dmg.push damage
      critical = []
      critical.push if kouku.api_fcl_flag[i] == 1 then HitType.Critical else if damage == 0 then HitType.Miss else HitType.Hit
      list.push new Attack AttackType[AttackTypeMap[0]], null, sortieShip[i - 1], sortieShip[i - 1].maxHP, sortieShip[i - 1].nowHP, dmg, critical
      sortieShip[i - 1].nowHP -= damage
      checkRepairItem sortieShip[i - 1]
