summaryrefslogtreecommitdiff
path: root/src/main/kotlin/io/dico/parcels2/command/CommandsGeneral.kt
diff options
context:
space:
mode:
authorDico Karssiens <dico.karssiens@gmail.com>2018-07-30 04:49:43 +0100
committerDico Karssiens <dico.karssiens@gmail.com>2018-07-30 04:49:43 +0100
commitdee994b992b1c6df15f6c24b49cd27c25e0657d6 (patch)
tree0cdc22b00b1823b13468864ce0fc7a30fd9d7f79 /src/main/kotlin/io/dico/parcels2/command/CommandsGeneral.kt
parent33bb19a54779547726165fa47d20f222cbe1e0a6 (diff)
Add WorktimeLimiter API, basic /parcel clear functionality
Diffstat (limited to 'src/main/kotlin/io/dico/parcels2/command/CommandsGeneral.kt')
-rw-r--r--src/main/kotlin/io/dico/parcels2/command/CommandsGeneral.kt11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/main/kotlin/io/dico/parcels2/command/CommandsGeneral.kt b/src/main/kotlin/io/dico/parcels2/command/CommandsGeneral.kt
index 7308a00..715e957 100644
--- a/src/main/kotlin/io/dico/parcels2/command/CommandsGeneral.kt
+++ b/src/main/kotlin/io/dico/parcels2/command/CommandsGeneral.kt
@@ -1,15 +1,18 @@
package io.dico.parcels2.command
+import io.dico.dicore.command.ExecutionContext
import io.dico.dicore.command.annotation.Cmd
import io.dico.dicore.command.annotation.Desc
import io.dico.dicore.command.annotation.RequireParameters
import io.dico.parcels2.ParcelOwner
import io.dico.parcels2.ParcelsPlugin
+import io.dico.parcels2.blockvisitor.JobUpdateListener
import io.dico.parcels2.command.NamedParcelDefaultValue.FIRST_OWNED
import io.dico.parcels2.storage.getParcelBySerializedValue
import io.dico.parcels2.util.hasAdminManage
import io.dico.parcels2.util.hasParcelHomeOthers
import io.dico.parcels2.util.uuid
+import kotlinx.coroutines.experimental.Job
import org.bukkit.entity.Player
//@Suppress("unused")
@@ -77,5 +80,13 @@ class CommandsGeneral(plugin: ParcelsPlugin) : AbstractParcelCommands(plugin) {
return "Enjoy your new parcel!"
}
+ @Cmd("clear")
+ @ParcelRequire(owner = true)
+ fun ParcelScope.cmdClear(player: Player, context: ExecutionContext) {
+ val onProgressUpdate: JobUpdateListener = { progress -> context.sendMessage("[Clearing] Progress: %.06f%%".format(progress * 100)) }
+ world.generator.clearParcel(parcel)
+ .onProgressUpdate(1000, 1500, onProgressUpdate)
+ .onCompleted(onProgressUpdate)
+ }
} \ No newline at end of file