From 37531ac3157929f550b0624fa478eb36a9d2fff0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=AD=B1=E5=82=91?= Date: Mon, 28 Nov 2022 19:54:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=83=9C=E7=8E=87=E6=A6=9C?= =?UTF-8?q?=20=E7=BB=9F=E8=AE=A1=E5=86=85=E5=8F=AF=E7=9B=B4=E6=8E=A5?= =?UTF-8?q?=E6=9F=A5=E7=9C=8B=E5=88=B0=E8=83=9C=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gradle/wrapper/gradle-wrapper.properties | 2 +- src/main/kotlin/JHorseRacing.kt | 13 +++++++++++++ src/main/kotlin/game/PlayerStatistics.kt | 8 ++++++-- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 8cf6eb5..ffed3a2 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/src/main/kotlin/JHorseRacing.kt b/src/main/kotlin/JHorseRacing.kt index ab3556a..be14598 100644 --- a/src/main/kotlin/JHorseRacing.kt +++ b/src/main/kotlin/JHorseRacing.kt @@ -549,6 +549,19 @@ object JHorseRacing : KotlinPlugin( } subject.sendMessage(ret.toString()) } + msg == "胜率榜" -> { + logger.info("查询胜率榜") + val msgB = MessageChainBuilder(11) + msgB.append("胜率榜\n") + JHRPluginData.playerStat.entries.filter { + subject.contains(it.key) + }.sortedByDescending { it.value.winPercentage } + .take(10) + .onEach { + msgB.append("| ${it.value.winPercentage}% | ${subject[it.key]!!.nameCardOrNick}\n") + } + subject.sendMessage(msgB.asMessageChain()) + } } } diff --git a/src/main/kotlin/game/PlayerStatistics.kt b/src/main/kotlin/game/PlayerStatistics.kt index 7163e43..e1b43f1 100644 --- a/src/main/kotlin/game/PlayerStatistics.kt +++ b/src/main/kotlin/game/PlayerStatistics.kt @@ -46,9 +46,13 @@ class PlayerStatistics { */ val totalProfit get() = totalWinScore + totalLossScore + /** + * 胜率 + */ + val winPercentage get() = if (betCount > 0) (winCount/betCount.toDouble()*100).toInt() else 0 + override fun toString(): String { - return "下注次数:${betCount}\n" + - "获胜次数:${winCount}\n" + + return "获胜次数:${winCount}/${betCount} (${winPercentage}%)\n" + "贡献次数:${contribution}\n" + "签到次数:${signCount}\n" + "下注积分:${totalBetScore}\n" +