slight bugfix

This commit is contained in:
Ceikry 2021-03-26 16:37:45 -05:00
parent a48d4d5dfa
commit b174bbe94b

View file

@ -1,54 +1,44 @@
package rs09.game.content.quest.members.thelosttribe package rs09.game.content.quest.members.thelosttribe
import core.cache.def.impl.NPCDefinition
import core.game.content.dialogue.FacialExpression import core.game.content.dialogue.FacialExpression
import core.game.interaction.OptionHandler
import core.game.node.Node
import core.game.node.entity.player.Player
import core.game.node.item.Item import core.game.node.item.Item
import core.game.system.task.Pulse import core.game.system.task.Pulse
import core.game.world.update.flag.context.Animation import core.game.world.update.flag.context.Animation
import core.plugin.Initializable
import core.plugin.Plugin
import org.rs09.consts.Items import org.rs09.consts.Items
import org.rs09.consts.NPCs
import rs09.game.interaction.InteractionListener
import rs09.game.world.GameWorld import rs09.game.world.GameWorld
@Initializable
/** /**
* handles pickpocketing sigmund during the lost tribe quest * handles pickpocketing sigmund during the lost tribe quest
* @author Ceikry * @author Ceikry
*/ */
class PickpocketSigmund : OptionHandler(){ class PickpocketSigmund : InteractionListener(){
override fun newInstance(arg: Any?): Plugin<Any> { val SIGMUND = NPCs.SIGMUND_2082
NPCDefinition.forId(2082).handlers["option:pickpocket"] = this
return this
}
override fun handle(player: Player?, node: Node?, option: String?): Boolean { override fun defineListeners() {
player ?: return false on(SIGMUND,NPC,"pickpocket"){player, node ->
node ?: return false player.lock()
GameWorld.Pulser.submit(object : Pulse(){
player.lock() var counter = 0
GameWorld.Pulser.submit(object : Pulse(){ override fun pulse(): Boolean {
var counter = 0 when(counter++){
override fun pulse(): Boolean { 0 -> player.animator.animate(Animation(881))
when(counter++){ 3 -> {
0 -> player.animator.animate(Animation(881)) if(player.questRepository.getQuest("Lost Tribe").getStage(player) == 47 && !player.inventory.containsItem(Item(Items.KEY_423))){
3 -> { player.inventory.add(Item(Items.KEY_423))
if(player.questRepository.getQuest("Lost Tribe").getStage(player) == 47 && !player.inventory.containsItem(Item(Items.KEY_423))){ player.dialogueInterpreter.sendItemMessage(Items.KEY_423,"You find a small key on Sigmund.")
player.inventory.add(Item(Items.KEY_423)) } else {
player.dialogueInterpreter.sendItemMessage(Items.KEY_423,"You find a small key on Sigmund.") player.dialogueInterpreter.sendDialogues(2082,FacialExpression.ANGRY,"What do you think you're doing?!")
} else { }
player.dialogueInterpreter.sendDialogues(2082,FacialExpression.ANGRY,"What do you think you're doing?!") player.unlock()
return true
} }
player.unlock()
return true
} }
return false
} }
return false })
} return@on true
}) }
return true
} }
} }