mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-26 15:16:45 +01:00
Huge Mushrooms now work for Tree Feller (UNTESTED)
This commit is contained in:
parent
c1b12c027a
commit
9df149c489
@ -73,6 +73,7 @@ Version 1.4.00-dev
|
|||||||
! Changed how Berserk handles not picking up items to avoid listening to PlayerPickupItemEvent
|
! Changed how Berserk handles not picking up items to avoid listening to PlayerPickupItemEvent
|
||||||
! Moved Hylian Luck into a separate listener since it actually cancels the event and shouldn't just be on MONITOR.
|
! Moved Hylian Luck into a separate listener since it actually cancels the event and shouldn't just be on MONITOR.
|
||||||
! Changed how Tree Feller is handled, it should now put less stress on the CPU
|
! Changed how Tree Feller is handled, it should now put less stress on the CPU
|
||||||
|
! Changed Tree Feller to work on huge mushrooms
|
||||||
! Changed Fisherman's Diet and Farmer's Diet to use two seperate config values
|
! Changed Fisherman's Diet and Farmer's Diet to use two seperate config values
|
||||||
! Major refactoring - please take note, this WILL break any mcMMO-related plugin not properly hooking into the API.
|
! Major refactoring - please take note, this WILL break any mcMMO-related plugin not properly hooking into the API.
|
||||||
! Changed the way party commands work, use /party ? to check how to use the new commands
|
! Changed the way party commands work, use /party ? to check how to use the new commands
|
||||||
|
@ -276,6 +276,9 @@ public class Config extends ConfigLoader {
|
|||||||
public int getWoodcuttingXPBirch() { return config.getInt("Experience.Woodcutting.Birch", 90); }
|
public int getWoodcuttingXPBirch() { return config.getInt("Experience.Woodcutting.Birch", 90); }
|
||||||
public int getWoodcuttingXPSpruce() { return config.getInt("Experience.Woodcutting.Spruce", 80); }
|
public int getWoodcuttingXPSpruce() { return config.getInt("Experience.Woodcutting.Spruce", 80); }
|
||||||
public int getWoodcuttingXPJungle() { return config.getInt("Experience.Woodcutting.Jungle", 100); }
|
public int getWoodcuttingXPJungle() { return config.getInt("Experience.Woodcutting.Jungle", 100); }
|
||||||
|
public int getWoodcuttingXPHugeBrownMushroom() { return config.getInt("Experience.Woodcutting.Huge_Mushroom_Brown", 70); }
|
||||||
|
public int getWoodcuttingXPHugeRedMushroom() { return config.getInt("Experience.Woodcutting.Huge_Mushroom_Red", 70); }
|
||||||
|
|
||||||
|
|
||||||
public boolean getOakDoubleDropsEnabled() { return config.getBoolean("Double_Drops.Woodcutting.Oak", true); }
|
public boolean getOakDoubleDropsEnabled() { return config.getBoolean("Double_Drops.Woodcutting.Oak", true); }
|
||||||
public boolean getBirchDoubleDropsEnabled() { return config.getBoolean("Double_Drops.Woodcutting.Birch", true); }
|
public boolean getBirchDoubleDropsEnabled() { return config.getBoolean("Double_Drops.Woodcutting.Birch", true); }
|
||||||
|
@ -175,6 +175,35 @@ public final class TreeFeller {
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch (block.getType()) {
|
switch (block.getType()) {
|
||||||
|
case HUGE_MUSHROOM_1:
|
||||||
|
case HUGE_MUSHROOM_2:
|
||||||
|
Woodcutting.checkForDoubleDrop(mcMMOPlayer, block);
|
||||||
|
|
||||||
|
try {
|
||||||
|
xp += Woodcutting.getExperienceFromLog(block, ExperienceGainMethod.TREE_FELLER);
|
||||||
|
}
|
||||||
|
catch (IllegalArgumentException exception) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Stems have a block data value of 15 and should not drop mushrooms
|
||||||
|
//0-2 mushrooms drop when you break a block
|
||||||
|
if(block.getData() != (byte) 15) {
|
||||||
|
switch(block.getType()) {
|
||||||
|
case HUGE_MUSHROOM_1:
|
||||||
|
Misc.randomDropItem(block.getLocation(), new ItemStack(Material.BROWN_MUSHROOM, 1), 50);
|
||||||
|
Misc.randomDropItem(block.getLocation(), new ItemStack(Material.BROWN_MUSHROOM, 1), 50);
|
||||||
|
break;
|
||||||
|
case HUGE_MUSHROOM_2:
|
||||||
|
Misc.randomDropItem(block.getLocation(), new ItemStack(Material.RED_MUSHROOM, 1), 50);
|
||||||
|
Misc.randomDropItem(block.getLocation(), new ItemStack(Material.RED_MUSHROOM, 1), 50);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
case LOG:
|
case LOG:
|
||||||
Woodcutting.checkForDoubleDrop(mcMMOPlayer, block);
|
Woodcutting.checkForDoubleDrop(mcMMOPlayer, block);
|
||||||
|
|
||||||
|
@ -93,6 +93,19 @@ public final class Woodcutting {
|
|||||||
* @throws IllegalArgumentException if 'log' is invalid
|
* @throws IllegalArgumentException if 'log' is invalid
|
||||||
*/
|
*/
|
||||||
protected static int getExperienceFromLog(Block log, ExperienceGainMethod experienceGainMethod) {
|
protected static int getExperienceFromLog(Block log, ExperienceGainMethod experienceGainMethod) {
|
||||||
|
|
||||||
|
//Mushrooms aren't trees so we could never get species data from them
|
||||||
|
if(log.getType() == Material.HUGE_MUSHROOM_1 || log.getType() == Material.HUGE_MUSHROOM_2) {
|
||||||
|
switch(log.getType()) {
|
||||||
|
case HUGE_MUSHROOM_1:
|
||||||
|
return Config.getInstance().getWoodcuttingXPHugeBrownMushroom();
|
||||||
|
case HUGE_MUSHROOM_2:
|
||||||
|
return Config.getInstance().getWoodcuttingXPHugeRedMushroom();
|
||||||
|
default:
|
||||||
|
throw new IllegalArgumentException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
TreeSpecies logType = TreeSpecies.getByData(extractLogItemData(log.getData()));
|
TreeSpecies logType = TreeSpecies.getByData(extractLogItemData(log.getData()));
|
||||||
|
|
||||||
// Apparently species can be null in certain cases (custom server mods?)
|
// Apparently species can be null in certain cases (custom server mods?)
|
||||||
|
@ -300,6 +300,8 @@ public final class BlockChecks {
|
|||||||
switch (block.getType()) {
|
switch (block.getType()) {
|
||||||
case LOG:
|
case LOG:
|
||||||
case LEAVES:
|
case LEAVES:
|
||||||
|
case HUGE_MUSHROOM_1:
|
||||||
|
case HUGE_MUSHROOM_2:
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
@ -271,6 +271,8 @@ Experience:
|
|||||||
Spruce: 80
|
Spruce: 80
|
||||||
Birch: 90
|
Birch: 90
|
||||||
Jungle: 100
|
Jungle: 100
|
||||||
|
Huge_Mushroom_Red: 70
|
||||||
|
Huge_Mushroom_Brown: 70
|
||||||
Herbalism:
|
Herbalism:
|
||||||
Sugar_Cane: 30
|
Sugar_Cane: 30
|
||||||
Cactus: 30
|
Cactus: 30
|
||||||
|
Loading…
Reference in New Issue
Block a user