Refactorings and improvements backported from the stealing-creation branch.

This commit is contained in:
Avi Weinstock
2021-12-19 03:28:20 +00:00
committed by Ceikry
parent 236f95ff63
commit 2bd3154611
31 changed files with 479 additions and 106 deletions
@@ -120,7 +120,9 @@ class EquipHandler : InteractionListener() {
return
}
}
InteractionListeners.run(itemId,player,item,false)
if(!InteractionListeners.run(itemId,player,item,false)) {
return
}
if (player.equipment.remove(item)) {
player.audioManager.send(Audio(2238, 10, 1))
player.dialogueInterpreter.close()
@@ -132,4 +134,4 @@ class EquipHandler : InteractionListener() {
}
}
}
}
}
@@ -427,6 +427,19 @@ class MiscCommandSet : CommandSet(Command.Privilege.ADMIN){
player.varpManager.get(index!!).setVarbit(offset!!, value!!).send(player)
}
define("setvarc", Command.Privilege.ADMIN) { player, args ->
if(args.size < 3){
reject(player,"Usage: ::setvarc index value")
}
val index = args[1].toShortOrNull()
val value = args[2].toIntOrNull()
if(index == null || value == null) {
reject(player,"Usage ::setvarc index value")
}
player.packetDispatch.sendVarcUpdate(index!!, value!!)
}
define("grow",Command.Privilege.ADMIN){player,_ ->
val state: FarmingState = player.states.get("farming") as FarmingState? ?: return@define
@@ -70,5 +70,27 @@ class SpawnCommandSet : CommandSet(Command.Privilege.ADMIN){
SceneryBuilder.add(`object`)
SystemLogger.logInfo("object = $`object`")
}
define("objectgrid") { player, args ->
if(args!!.size != 5) {
reject(player, "Usage: objectgrid beginId endId type rotation")
return@define
}
val beginId = args[1].toIntOrNull() ?: return@define
val endId = args[2].toIntOrNull() ?: return@define
val type = args[3].toIntOrNull() ?: return@define
val rotation = args[4].toIntOrNull() ?: return@define
for(i in 0..10) {
SceneryBuilder.add(Scenery(29447 + i, player.location.transform(i, -1, 0)))
}
for(i in beginId..endId) {
val j = i - beginId
val scenery = Scenery(i, player.location.transform(j % 10, j / 10, 0), type, rotation)
SceneryBuilder.add(scenery)
if(j % 10 == 0) {
SceneryBuilder.add(Scenery(29447 + (j / 10) % 10, player.location.transform(-1, j/10, 0)))
}
}
}
}
}
}