Skip to content

Commit f42d592

Browse files
committed
Merge branch 'master' into feature/taskflow
2 parents 9fc5ebe + b17a1c4 commit f42d592

File tree

5 files changed

+29
-20
lines changed

5 files changed

+29
-20
lines changed

common/src/main/kotlin/com/lambda/brigadier/CommandExecution.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,11 @@ sealed class CommandResult {
5555
return Failure(Communication.LogLevel.ERROR.text(message))
5656
}
5757

58+
/** Creates a [CommandResult.Failure] with the given throwable [t]. */
59+
fun failure(t: Throwable): Failure {
60+
return failure(t.message ?: "An error occurred")
61+
}
62+
5863
/**
5964
* Creates a [CommandResult.Failure] with the given error [message].
6065
*/

common/src/main/kotlin/com/lambda/command/commands/ConfigCommand.kt

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
package com.lambda.command.commands
22

3+
import com.lambda.brigadier.CommandResult.Companion.success
34
import com.lambda.brigadier.argument.literal
4-
import com.lambda.brigadier.execute
5+
import com.lambda.brigadier.executeWithResult
56
import com.lambda.brigadier.required
67
import com.lambda.command.LambdaCommand
78
import com.lambda.config.Configuration
9+
import com.lambda.util.Communication.info
810
import com.lambda.util.primitives.extension.CommandBuilder
911

1012
object ConfigCommand : LambdaCommand(
@@ -15,17 +17,21 @@ object ConfigCommand : LambdaCommand(
1517
) {
1618
override fun CommandBuilder.create() {
1719
required(literal("save")) {
18-
execute {
19-
Configuration.configurations.forEach {
20-
it.trySave()
20+
executeWithResult {
21+
Configuration.configurations.forEach { config ->
22+
config.trySave(true)
2123
}
24+
this@ConfigCommand.info("Saved ${Configuration.configurations.size} configuration files.")
25+
return@executeWithResult success()
2226
}
2327
}
2428
required(literal("load")) {
25-
execute {
26-
Configuration.configurations.forEach {
27-
it.tryLoad()
29+
executeWithResult {
30+
Configuration.configurations.forEach { config ->
31+
config.tryLoad()
2832
}
33+
this@ConfigCommand.info("Loaded ${Configuration.configurations.size} configuration files.")
34+
return@executeWithResult success()
2935
}
3036
}
3137
}

common/src/main/kotlin/com/lambda/config/Configuration.kt

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,12 @@ import com.google.gson.JsonParser
66
import com.lambda.Lambda.LOG
77
import com.lambda.Lambda.gson
88
import com.lambda.config.configurations.ModuleConfig
9-
import com.lambda.event.EventFlow.lambdaScope
109
import com.lambda.event.events.ClientEvent
1110
import com.lambda.event.listener.UnsafeListener.Companion.unsafeListener
1211
import com.lambda.threading.runIO
1312
import com.lambda.util.Communication.info
1413
import com.lambda.util.Communication.logError
1514
import com.lambda.util.StringUtils.capitalize
16-
import kotlinx.coroutines.Dispatchers
17-
import kotlinx.coroutines.launch
1815
import java.io.File
1916
import java.time.Duration
2017
import kotlin.concurrent.fixedRateTimer
@@ -104,38 +101,37 @@ abstract class Configuration : Jsonable {
104101
.onSuccess {
105102
val message = "${configName.capitalize()} config loaded."
106103
LOG.info(message)
107-
this@Configuration.info(message)
104+
info(message)
108105
}
109106
.onFailure {
110107
var message: String
111108
runCatching { load(backup) }
112109
.onSuccess {
113110
message = "${configName.capitalize()} config loaded from backup"
114111
LOG.info(message)
115-
this@Configuration.info(message)
112+
info(message)
116113
}
117114
.onFailure { error ->
118115
message =
119116
"Failed to load ${configName.capitalize()} config from backup, unrecoverable error"
120117
LOG.error(message, error)
121-
this@Configuration.logError(message)
118+
logError(message)
122119
}
123120
}
124121
}
125122
}
126123

127-
fun trySave() {
124+
fun trySave(logToChat: Boolean = false) {
128125
runIO {
129126
runCatching { save() }
130127
.onSuccess {
131128
val message = "Saved ${configName.capitalize()} config."
132129
LOG.info(message)
133-
this@Configuration.info(message)
130+
if (logToChat) info(message)
134131
}
135132
.onFailure {
136133
val message = "Failed to save ${configName.capitalize()} config"
137-
LOG.error(message, it)
138-
this@Configuration.logError(message)
134+
logError(message)
139135
}
140136
}
141137
}

common/src/main/kotlin/com/lambda/config/settings/NumericSetting.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.lambda.config.settings
22

33
import com.lambda.config.AbstractSetting
4+
import java.text.NumberFormat
5+
import java.util.*
46
import kotlin.reflect.KProperty
57

68
/**
@@ -27,7 +29,9 @@ abstract class NumericSetting<T>(
2729
description,
2830
visibility
2931
) where T : Number, T : Comparable<T> {
30-
override fun toString() = "$value$unit"
32+
private val formatter = NumberFormat.getNumberInstance(Locale.getDefault())
33+
34+
override fun toString() = "${formatter.format(value)}$unit"
3135

3236
override operator fun setValue(thisRef: Any?, property: KProperty<*>, valueIn: T) {
3337
value = valueIn.coerceIn(range)

common/src/main/kotlin/com/lambda/event/events/PacketEvent.kt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@ import com.lambda.event.callback.Cancellable
66
import com.lambda.event.callback.ICancellable
77
import com.lambda.event.events.PacketEvent.Receive
88
import com.lambda.event.events.PacketEvent.Send
9-
import com.lambda.event.events.PacketEvent.Send.Post
10-
import com.lambda.event.events.PacketEvent.Send.Pre
119
import net.minecraft.network.packet.Packet
1210

1311
/**

0 commit comments

Comments
 (0)