diff --git a/build.gradle.kts b/build.gradle.kts index 9eabd6d..012a520 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -21,12 +21,12 @@ implementation("com.fasterxml.jackson.module:jackson-module-kotlin:2.16.0") implementation("com.google.protobuf:protobuf-java:3.25.1") implementation("com.google.protobuf:protobuf-kotlin:3.25.1") - implementation("com.ibm.icu:icu4j:74.1") + implementation("com.ibm.icu:icu4j:74.2") implementation("com.lmax:disruptor:3.4.4") implementation("com.sun.mail:jakarta.mail:2.0.1") implementation("commons-codec:commons-codec:1.16.0") implementation("commons-io:commons-io:2.15.1") - implementation("io.netty:netty-all:4.1.101.Final") + implementation("io.netty:netty-all:4.1.102.Final") implementation("jakarta.mail:jakarta.mail-api:2.1.2") implementation("net.dv8tion:JDA:5.0.0-beta.16") implementation("org.apache.commons:commons-compress:1.25.0") diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 29d2731..2bbac7d 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-8.4-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists \ No newline at end of file diff --git a/src/main/kotlin/net/taehui/twilight/Site.kt b/src/main/kotlin/net/taehui/twilight/Site.kt index 1e03ed2..50af9df 100644 --- a/src/main/kotlin/net/taehui/twilight/Site.kt +++ b/src/main/kotlin/net/taehui/twilight/Site.kt @@ -717,7 +717,7 @@ avatarGroups[avatarID] = if (isNetSite) 0 else -1 lastAudioInputMillis[avatarID] = Long.MIN_VALUE isAudioInputs[avatarID] = false - siteHandQueue.offerFirst(avatar) + siteHandQueue.addFirst(avatar) val data = synchronized(siteYells) { siteYells.stream().skip(0.coerceAtLeast(siteYells.size - SITE_YELL_UNIT).toLong()).map { val avatarName = it.avatarName @@ -838,20 +838,21 @@ avatarConfigures.replace(siteHand.avatarID, AvatarConfigure.LEVYING, AvatarConfigure.DEFAULT) this.siteHand = siteHand doCallSiteAvatar(true) - if (siteHandQueue.remove(siteHand)) { - siteHandQueue.offer(siteHand) - } } } } private fun setAutoSiteHand() { synchronized(avatarsCSX) { - siteHandQueue.peek()?.let { - avatarConfigures.replace(it.avatarID, AvatarConfigure.LEVYING, AvatarConfigure.DEFAULT) - siteHand = it - doCallSiteAvatar(true) - siteHandQueue.offer(it) + siteHandQueue.poll()?.let { + siteHandQueue.add(it) + if (it == siteHand) { + setAutoSiteHand() + } else { + avatarConfigures.replace(it.avatarID, AvatarConfigure.LEVYING, AvatarConfigure.DEFAULT) + siteHand = it + doCallSiteAvatar(true) + } } } } diff --git a/src/main/kotlin/net/taehui/twilight/system/DB.kt b/src/main/kotlin/net/taehui/twilight/system/DB.kt index b8a2f1a..d7c481d 100644 --- a/src/main/kotlin/net/taehui/twilight/system/DB.kt +++ b/src/main/kotlin/net/taehui/twilight/system/DB.kt @@ -847,8 +847,8 @@ } }.toList() } - } - }.toList().flatten().filterNotNull() + }.toList().flatten().filterNotNull() + } } } } diff --git a/src/main/kotlin/net/taehui/twilight/www/WwwAvatar.kt b/src/main/kotlin/net/taehui/twilight/www/WwwAvatar.kt index f33d269..be46312 100644 --- a/src/main/kotlin/net/taehui/twilight/www/WwwAvatar.kt +++ b/src/main/kotlin/net/taehui/twilight/www/WwwAvatar.kt @@ -126,8 +126,8 @@ val avatarID = params.getOrDefault("avatarID", "") when (data.path()) { "/qwilight/www/note" -> { - val viewUnit = params["viewUnit"]?.toInt() ?: 10 - if (viewUnit > 10) { + val viewUnit = params["viewUnit"]?.toInt() ?: 20 + if (viewUnit > 20) { send400(ctx) } else { DB.getNote(