Add PlayerOpenChestEvent

This commit is contained in:
KingRainbow44
2023-05-19 19:32:07 -04:00
parent bda963adca
commit 8b9ca5ec7e
2 changed files with 39 additions and 0 deletions

View File

@@ -3,6 +3,8 @@ package emu.grasscutter.game.entity.gadget.chest;
import emu.grasscutter.game.entity.gadget.GadgetChest;
import emu.grasscutter.game.player.Player;
import emu.grasscutter.game.world.ChestReward;
import emu.grasscutter.server.event.player.PlayerOpenChestEvent;
import java.util.Random;
public class NormalChestInteractHandler implements ChestInteractHandler {
@@ -19,6 +21,10 @@ public class NormalChestInteractHandler implements ChestInteractHandler {
@Override
public boolean onInteract(GadgetChest chest, Player player) {
// Invoke open chest event.
var event = new PlayerOpenChestEvent(player, chest, this.chestReward);
event.call(); if (event.isCanceled()) return true;
player.earnExp(chestReward.getAdvExp());
player.getInventory().addItem(201, chestReward.getResin());