diff --git a/app/src/main/java/io/github/fate_grand_automata/ui/exit/BattleExit.kt b/app/src/main/java/io/github/fate_grand_automata/ui/exit/BattleExit.kt
index dc0bfeb48..3e957b02e 100644
--- a/app/src/main/java/io/github/fate_grand_automata/ui/exit/BattleExit.kt
+++ b/app/src/main/java/io/github/fate_grand_automata/ui/exit/BattleExit.kt
@@ -393,7 +393,7 @@ fun PreviewBattleExitContent() {
averageTimePerRun = 75.seconds,
minTurnsPerRun = 3,
maxTurnsPerRun = 4,
- averageTurnsPerRun = 6
+ averageTurnsPerRun = 3.45678
),
refillEnabled = true
)
diff --git a/app/src/main/res/values-b+zh+CN/localized.xml b/app/src/main/res/values-b+zh+CN/localized.xml
index 7415de282..53c4e2b55 100644
--- a/app/src/main/res/values-b+zh+CN/localized.xml
+++ b/app/src/main/res/values-b+zh+CN/localized.xml
@@ -256,7 +256,7 @@ Order Change"
"已撤退 %d 次"
"平均一场时间:%s"
"回合 %d"
- "回合: %1$d(最少), %2$d(平均), %3$d(最多)"
+ "回合: %1$d(最少), %2$.02f(平均), %3$d(最多)"
"已挑选 %d 堆种火,共挑选 %d 枚种火"
"无法在屏幕上找到种火,请确保经验卡的筛选已打开"
"Root权限获取失败"
diff --git a/app/src/main/res/values-b+zh+TW/localized.xml b/app/src/main/res/values-b+zh+TW/localized.xml
index 1089016b7..013c29a74 100644
--- a/app/src/main/res/values-b+zh+TW/localized.xml
+++ b/app/src/main/res/values-b+zh+TW/localized.xml
@@ -244,7 +244,7 @@
已撤退 %d 次
平均一場時間:%s
回合 %d
- 回合:%1$d(最少), %2$d(平均), %3$d(最多)
+ 回合:%1$d(最少), %2$.02f(平均), %3$d(最多)
已挑選 %d 堆種火,總共挑選 %d 枚金種火
追縱掉落素材
diff --git a/app/src/main/res/values-ja/localized.xml b/app/src/main/res/values-ja/localized.xml
index a68349f24..e1b033aab 100644
--- a/app/src/main/res/values-ja/localized.xml
+++ b/app/src/main/res/values-ja/localized.xml
@@ -261,7 +261,7 @@
"%d 回撤退しました"
"1回あたりの平均時間: %s"
"ターン数: %d"
- "ターン数: %1$d (最小), %2$d (平均), %3$d (最大)"
+ "ターン数: %1$d (最小), %2$.02f (平均), %3$d (最大)"
"%d 個の種火を選び受け取りました。"
"画面上に「種火」が見つかりません。サーヴァント(経験値)のフィルタリングを確認してください。"
"ルート権限の取得に失敗"
diff --git a/app/src/main/res/values-ko/localized.xml b/app/src/main/res/values-ko/localized.xml
index 68f785581..46ec1a210 100644
--- a/app/src/main/res/values-ko/localized.xml
+++ b/app/src/main/res/values-ko/localized.xml
@@ -253,7 +253,7 @@
"%d번 철수함"
"반복 평균 시간: %s"
"턴: %d"
- "턴: %1$d (최단), %2$d (평균), %3$d (최장)"
+ "턴: %1$d (최단), %2$.02f (평균), %3$d (최장)"
"%d개의 종화 묶음 획득"
"화면에서 종화를 찾을 수 없습니다. 종화를 필터하지 않았는지 확인바랍니다."
"루트 권한을 얻는데 실패했습니다."
diff --git a/app/src/main/res/values-vi/localized.xml b/app/src/main/res/values-vi/localized.xml
index f963ff6ef..e4fc04a70 100644
--- a/app/src/main/res/values-vi/localized.xml
+++ b/app/src/main/res/values-vi/localized.xml
@@ -173,7 +173,7 @@ Sao chép hoặc đổi tên nó nếu bạn muốn giữ nó."
"Ưu tiên thẻ"
"Vàng"
"Bạc"
- "Đồng"
+ "Xanh"
"Đồng"
"SQ"
"không quan tâm"
@@ -254,7 +254,7 @@ Vui lòng bật khả năng truy cập cho ứng dụng này từ cài đặt H
"Đã đầu hàng %d lần"
"Thời gian trung bình mỗi lần chạy: %s"
"Lượt: %d"
- "Lượt: %1$d (phút), %2$d (trung bình), %3$d (tối đa)"
+ "Lượt: %1$d (phút), %2$.02f (trung bình), %3$d (tối đa)"
"Đã chọn %d EXP, tạo ra tổng số %d Embers vàng"
"Không thể tìm thấy Embers trên màn hình. Đảm bảo rằng bạn đã lọc thẻ EXP."
"Không thể truy cập quyền root"
diff --git a/app/src/main/res/values/localized.xml b/app/src/main/res/values/localized.xml
index d9fa79933..5b37f0471 100644
--- a/app/src/main/res/values/localized.xml
+++ b/app/src/main/res/values/localized.xml
@@ -255,7 +255,7 @@ Please turn on accessibility for this app from System settings. If it is already
"Withdrew %d times"
"Average time per run: %s"
"Turns: %d"
- "Turns: %1$d (min), %2$d (avg), %3$d (max)"
+ "Turns: %1$d (min), %2$.02f (avg), %3$d (max)"
"Picked %d EXP stacks, resulting in a total amount of %d Gold embers"
"Couldn't find Embers on screen. Make sure that you've filtered for EXP cards."
"Failed to get root access"
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index b03530c95..b8af53a8c 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -12,7 +12,7 @@ kotlin_verion = "1.9.10"
hilt_version = "2.48.1"
gson_version = "2.10.1"
-gradle_version = "8.1.2"
+gradle_version = "8.2.0"
ben-manes_versions = "0.47.0"
accompanist_version = "0.32.0"
diff --git a/scripts/src/main/java/io/github/fate_grand_automata/scripts/entrypoints/AutoBattle.kt b/scripts/src/main/java/io/github/fate_grand_automata/scripts/entrypoints/AutoBattle.kt
index 0ccf5cb5c..860f31294 100644
--- a/scripts/src/main/java/io/github/fate_grand_automata/scripts/entrypoints/AutoBattle.kt
+++ b/scripts/src/main/java/io/github/fate_grand_automata/scripts/entrypoints/AutoBattle.kt
@@ -148,7 +148,7 @@ class AutoBattle @Inject constructor(
val averageTimePerRun: Duration,
val minTurnsPerRun: Int,
val maxTurnsPerRun: Int,
- val averageTurnsPerRun: Int
+ val averageTurnsPerRun: Double
)
private fun makeExitState(): ExitState {
diff --git a/scripts/src/main/java/io/github/fate_grand_automata/scripts/models/battle/BattleState.kt b/scripts/src/main/java/io/github/fate_grand_automata/scripts/models/battle/BattleState.kt
index e86704528..5b22fd9a7 100644
--- a/scripts/src/main/java/io/github/fate_grand_automata/scripts/models/battle/BattleState.kt
+++ b/scripts/src/main/java/io/github/fate_grand_automata/scripts/models/battle/BattleState.kt
@@ -2,7 +2,6 @@ package io.github.fate_grand_automata.scripts.models.battle
import io.github.lib_automata.dagger.ScriptScope
import javax.inject.Inject
-import kotlin.math.roundToInt
import kotlin.time.Duration
import kotlin.time.TimeSource
@@ -27,7 +26,7 @@ class BattleState @Inject constructor() {
private set
var minTurnsPerRun = Int.MAX_VALUE
private set
- var averageTurnsPerRun = 0
+ var averageTurnsPerRun: Double = 0.0
private set
var runs = 0
@@ -43,7 +42,7 @@ class BattleState @Inject constructor() {
totalTurns += runState.totalTurns
maxTurnsPerRun = maxOf(maxTurnsPerRun, runState.totalTurns)
minTurnsPerRun = minOf(minTurnsPerRun, runState.totalTurns)
- averageTurnsPerRun = (totalTurns / runs.toDouble()).roundToInt()
+ averageTurnsPerRun = totalTurns / runs.toDouble()
runState = RunState()
}