Skip to content

Commit

Permalink
待避した艦の気球はカウントしないよう修正・特殊砲撃該当艦補正修正
Browse files Browse the repository at this point in the history
  • Loading branch information
nishi-kuma committed Oct 9, 2023
1 parent bf5c6a1 commit 4df6b76
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 15 deletions.
26 changes: 17 additions & 9 deletions UnexpectedDamage.js
Expand Up @@ -14,7 +14,7 @@ Ship = Java.type("logbook.internal.Ship")
//#region 全般

/** バージョン */
var VERSION = "3.1.0"
var VERSION = "3.1.1"
/** バージョン確認URL */
var UPDATE_CHECK_URL = "https://api.github.com/repos/Nishisonic/UnexpectedDamage/releases/latest"
/** ファイルの場所 */
Expand Down Expand Up @@ -1104,14 +1104,12 @@ DayBattlePower.prototype.getSpottingBonus = function () {
case 573: return 1.2 // 陸奥改二
case 276: return 1.15 // 陸奥改
case 576: return date.after(UPDATE_SPECIAL_ATTACK_BONUS_DATE) ? 1.1 : 1.0 // Nelson改
case 577: return 1.1 // Rodney改
}
} else {
switch (secondShipId) {
case 573: return 1.4 // 陸奥改二
case 276: return 1.35 // 陸奥改
case 576: return date.after(UPDATE_SPECIAL_ATTACK_BONUS_DATE) ? 1.25 : 1.0 // Nelson改
case 577: return 1.25 // Rodney改
}
}
return 1.0
Expand Down Expand Up @@ -1322,10 +1320,22 @@ DayBattlePower.prototype.getBarrageBalloonBonus = function () {

var ships = []
if (this.origins.main) {
ships = ships.concat(Java.from(this.origins.main.toArray()))
var main = Java.from(this.origins.main.toArray())
for (var i in main) {
// undefinedは敵想定
if (main[i] && (this.origins.mainEscaped === undefined || !this.origins.mainEscaped[i])) {
ships.push(main[i])
}
}
}
if (this.origins.escort) {
ships = ships.concat(Java.from(this.origins.escort.toArray()))
var escort = Java.from(this.origins.escort.toArray())
for (var i in escort) {
// undefinedは敵想定
if (escort[i] && (this.origins.escortEscaped === undefined || !this.origins.escortEscaped[i])) {
ships.push(escort[i])
}
}
}

return 1 + 0.02 * Math.min(ships.filter(function (ship) {
Expand Down Expand Up @@ -2359,9 +2369,7 @@ var getAmmoBonus = function (ship, origins, mapCell) {
var bull = ship.bull
// 洋上補給処理
if (mapCell.isBoss()) {
var replenishment = Object.keys(origins).map(function(pos) {
return origins[pos]
}).filter(function(ships) {
var replenishment = [origins.main, origins.escort].filter(function(ships) {
return ships
}).map(function(ships) {
return Java.from(ships.toArray()).filter(function(ship) {
Expand All @@ -2381,7 +2389,7 @@ var getAmmoBonus = function (ship, origins, mapCell) {
}, 0)

if (replenishment > 0) {
if (origins["escort"]) {
if (origins.escort) {
// 連合艦隊
bull += Math.floor((Math.min(replenishment, 3) * 12.5 + 2.5) * ship.bullMax / 100)
} else {
Expand Down
16 changes: 10 additions & 6 deletions drop_unexpectedDamage.js
@@ -1,6 +1,6 @@
/**
* 異常ダメージ検知
* @version 3.1.0
* @version 3.1.1
* @author Nishikuma
*/

Expand Down Expand Up @@ -160,9 +160,9 @@ var getFriends = function (battle) {
var dock = battle.dock
var dockCombined = battle.dockCombined
if (dockCombined) {
return new FleetDto(dock.ships, dockCombined.ships)
return new FleetDto(dock.ships, dockCombined.ships, battle.dock.escaped, battle.dockCombined.escaped)
} else {
return new FleetDto(dock.ships)
return new FleetDto(dock.ships, undefined, battle.dock.escaped, undefined)
}
}

Expand All @@ -175,9 +175,9 @@ var getEnemies = function (battle) {
var enemy = battle.enemy
var enemyCombined = battle.enemyCombined
if (enemyCombined) {
return new FleetDto(enemy, enemyCombined)
return new FleetDto(enemy, enemyCombined, undefined, undefined)
} else {
return new FleetDto(enemy)
return new FleetDto(enemy, undefined, undefined, undefined)
}
}

Expand Down Expand Up @@ -231,10 +231,14 @@ var getEnemyHp = function (battle) {
* 艦隊
* @param {java.util.List<logbook.dto.ShipDto|logbook.dto.EnemyShipDto>} m 主力
* @param {java.util.List<logbook.dto.ShipDto|logbook.dto.EnemyShipDto>} e 随伴
* @param {boolean[]} me 待避主力
* @param {boolean[]} ee 待避随伴
*/
var FleetDto = function (m, e) {
var FleetDto = function (m, e, me, ee) {
this.main = m
this.escort = e
this.mainEscaped = me
this.escortEscaped = ee
}

/**
Expand Down

0 comments on commit 4df6b76

Please sign in to comment.