Implement local specialty spawning

This commit is contained in:
Melledy
2022-05-18 02:21:34 -07:00
parent df580bf519
commit a48585d124
18 changed files with 328 additions and 67 deletions

View File

@@ -917,22 +917,20 @@ public class Player {
else
this.getScene().broadcastPacket(new PacketGadgetInteractRsp(drop, InteractType.INTERACT_PICK_ITEM));
}
} else if (entity instanceof EntityGadget) {
EntityGadget gadget = (EntityGadget) entity;
} else if (entity instanceof EntityGadget gadget) {
if (gadget.getContent() == null) {
return;
}
if (gadget.getGadgetData().getType() == EntityType.RewardStatue) {
if (scene.getChallenge() != null) {
scene.getChallenge().getStatueDrops(this);
}
this.sendPacket(new PacketGadgetInteractRsp(gadget, InteractType.INTERACT_OPEN_STATUE));
boolean shouldDelete = gadget.getContent().onInteract(this);
if (shouldDelete) {
entity.getScene().removeEntity(entity);
}
} else {
// Delete directly
entity.getScene().removeEntity(entity);
}
return;
}
public void onPause() {