From 43d2fba5bf03f06b5c79703923fff66b984efff4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20N=C3=BCcke?= Date: Sun, 27 Dec 2015 13:13:14 +0100 Subject: [PATCH] Also grant achievements when picking up related item, not just when assembling/crafting it, closes #1578. --- src/main/scala/li/cil/oc/common/EventHandler.scala | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/scala/li/cil/oc/common/EventHandler.scala b/src/main/scala/li/cil/oc/common/EventHandler.scala index 2cffbe8a7..6b1b2c21c 100644 --- a/src/main/scala/li/cil/oc/common/EventHandler.scala +++ b/src/main/scala/li/cil/oc/common/EventHandler.scala @@ -324,6 +324,17 @@ object EventHandler { Achievement.onCraft(e.crafting, e.player) } + @SubscribeEvent + def onPickup(e: ItemPickupEvent): Unit = { + val entity = e.pickedUp + Option(entity).flatMap(e => Option(e.getEntityItem)) match { + case Some(stack) => + Achievement.onAssemble(stack, e.player) + Achievement.onCraft(stack, e.player) + case _ => // Huh. + } + } + private def timeForPresents = { val now = Calendar.getInstance() val month = now.get(Calendar.MONTH)