@@ -2245,7 +2245,7 @@ public void craftItem(final Quest quest, final ItemStack crafted) {
2245
2245
new BukkitObjective (type , null , amount , goal ));
2246
2246
plugin .getServer ().getPluginManager ().callEvent (preEvent );
2247
2247
2248
- final int progress = crafted .getAmount () + amount ;
2248
+ final int progress = Math . min ( crafted .getAmount () + amount , 64 ) ;
2249
2249
bukkitQuestProgress .itemsCrafted .set (match , progress );
2250
2250
if (progress >= goal .getAmount ()) {
2251
2251
finishObjective (quest , new BukkitObjective (type , null , progress , goal ), null , null , null , null ,
@@ -2294,7 +2294,7 @@ public void smeltItem(final Quest quest, final ItemStack smelted) {
2294
2294
new BukkitObjective (type , null , amount , goal ));
2295
2295
plugin .getServer ().getPluginManager ().callEvent (preEvent );
2296
2296
2297
- final int progress = smelted .getAmount () + amount ;
2297
+ final int progress = Math . min ( smelted .getAmount () + amount , 64 ) ;
2298
2298
bukkitQuestProgress .itemsSmelted .set (match , progress );
2299
2299
if (progress >= goal .getAmount ()) {
2300
2300
finishObjective (quest , new BukkitObjective (type , null , progress , goal ), null , null , null , null ,
@@ -2346,7 +2346,7 @@ public void enchantBook(final Quest quest, final ItemStack enchantedBook,
2346
2346
new BukkitObjective (type , null , amount , goal ));
2347
2347
plugin .getServer ().getPluginManager ().callEvent (preEvent );
2348
2348
2349
- final int progress = enchantedBook .getAmount () + amount ;
2349
+ final int progress = Math . min ( enchantedBook .getAmount () + amount , 64 ) ;
2350
2350
bukkitQuestProgress .itemsEnchanted .set (match , progress );
2351
2351
if (progress >= goal .getAmount ()) {
2352
2352
finishObjective (quest , new BukkitObjective (type , null , progress , goal ), null , null , null , null ,
@@ -2403,7 +2403,7 @@ public void enchantItem(final Quest quest, final ItemStack enchanted) {
2403
2403
new BukkitObjective (type , null , amount , goal ));
2404
2404
plugin .getServer ().getPluginManager ().callEvent (preEvent );
2405
2405
2406
- final int progress = enchanted .getAmount () + amount ;
2406
+ final int progress = Math . min ( enchanted .getAmount () + amount , 64 ) ;
2407
2407
bukkitQuestProgress .itemsEnchanted .set (match , progress );
2408
2408
if (progress >= goal .getAmount ()) {
2409
2409
finishObjective (quest , new BukkitObjective (type , null , progress , goal ), null , null , null , null ,
@@ -2452,7 +2452,7 @@ public void brewItem(final Quest quest, final ItemStack brewed) {
2452
2452
new BukkitObjective (type , null , amount , goal ));
2453
2453
plugin .getServer ().getPluginManager ().callEvent (preEvent );
2454
2454
2455
- final int progress = brewed .getAmount () + amount ;
2455
+ final int progress = Math . min ( brewed .getAmount () + amount , 64 ) ;
2456
2456
bukkitQuestProgress .itemsBrewed .set (match , progress );
2457
2457
if (progress >= goal .getAmount ()) {
2458
2458
finishObjective (quest , new BukkitObjective (type , null , progress , goal ), null , null , null , null ,
@@ -2501,7 +2501,7 @@ public void consumeItem(final Quest quest, final ItemStack consumed) {
2501
2501
new BukkitObjective (type , null , amount , goal ));
2502
2502
plugin .getServer ().getPluginManager ().callEvent (preEvent );
2503
2503
2504
- final int progress = consumed .getAmount () + amount ;
2504
+ final int progress = Math . min ( consumed .getAmount () + amount , 64 ) ;
2505
2505
bukkitQuestProgress .itemsConsumed .set (match , progress );
2506
2506
if (progress >= goal .getAmount ()) {
2507
2507
finishObjective (quest , new BukkitObjective (type , null , progress , goal ), null , null , null , null ,
@@ -2560,22 +2560,20 @@ public void deliverToNPC(final Quest quest, final UUID npc, final ItemStack deli
2560
2560
new BukkitObjective (type , null , amount , goal ));
2561
2561
plugin .getServer ().getPluginManager ().callEvent (preEvent );
2562
2562
2563
- final int progress = delivered .getAmount () + amount ;
2564
2563
final int index = player .getInventory ().first (delivered );
2565
2564
if (index == -1 ) {
2566
2565
// Already delivered in previous loop
2567
2566
return ;
2568
2567
}
2568
+
2569
+ final int progress = Math .min (delivered .getAmount () + amount , 64 );
2569
2570
bukkitQuestProgress .itemsDelivered .set (match , progress );
2570
2571
if (progress >= goal .getAmount ()) {
2571
- if ((delivered .getAmount () + amount ) >= goal .getAmount ()) {
2572
- // Take away remaining amount to be delivered
2573
- final ItemStack clone = delivered .clone ();
2574
- clone .setAmount (delivered .getAmount () - (goal .getAmount () - amount ));
2575
- player .getInventory ().setItem (index , clone );
2576
- } else {
2577
- player .getInventory ().setItem (index , null );
2578
- }
2572
+ // Take away remaining amount to be delivered
2573
+ final ItemStack clone = delivered .clone ();
2574
+ int newAmount = clone .getAmount () - (goal .getAmount () - amount );
2575
+ clone .setAmount (newAmount );
2576
+ player .getInventory ().setItem (index , clone );
2579
2577
player .updateInventory ();
2580
2578
finishObjective (quest , new BukkitObjective (type , null , progress , goal ), null , null , null , null ,
2581
2579
null , null , null );
0 commit comments