Implemented the proper interaction for low-alchemy option on the Explorer's Ring

Implemented a generic item selection ContentAPI method
Added ContentAPI method for running CS2 scripts
Added development command for running CS2 scripts
This commit is contained in:
Ceikry
2023-05-16 12:08:32 +00:00
committed by Ryan
parent a04191b11e
commit 767117f54e
8 changed files with 152 additions and 26 deletions
@@ -24,6 +24,7 @@ import core.game.system.command.Privilege
import java.io.BufferedWriter
import java.io.File
import java.io.FileWriter
import java.util.Arrays
import core.net.packet.PacketWriteQueue
import core.tools.Log
@@ -41,6 +42,20 @@ class DevelopmentCommandSet : CommandSet(Privilege.ADMIN) {
}
}
define("cs2", Privilege.ADMIN, "::cs2 id args", "Allows you to call arbitrary cs2 scripts during runtime") {player, args ->
var scriptArgs = ArrayList<Any>()
if (args.size == 2) {
runcs2(player, args[1].toIntOrNull() ?: return@define)
return@define
}
else if (args.size > 2) {
for (i in 2 until args.size) {
scriptArgs.add(args[i].toIntOrNull() ?: args[i])
}
runcs2(player, args[1].toIntOrNull() ?: return@define, *(scriptArgs.toTypedArray().also { player.debug (Arrays.toString(it)) }))
}
}
define("cleardiary", Privilege.ADMIN) { player, _ ->
for (type in DiaryType.values()) {
val diary = player.achievementDiaryManager.getDiary(type)