Add mcmmo boostertypes

This commit is contained in:
destro174
2021-12-26 15:12:13 +01:00
parent 2c0d255219
commit f3921da22b
9 changed files with 44 additions and 14 deletions
+9
View File
@@ -1,6 +1,7 @@
plugins {
`maven-publish`
id("com.github.johnrengelman.shadow")
id("net.minecrell.plugin-yml.bukkit")
}
dependencies {
@@ -27,4 +28,12 @@ tasks {
dependsOn(shadowJar)
}
}
bukkit {
name = rootProject.name
main = "$group.BoostersPlugin"
apiVersion = "1.18"
authors = listOf("destro174")
softDepend = listOf("MyPet", "mcMMO")
}
@@ -23,12 +23,15 @@ public final class BoostersPlugin extends JavaPlugin {
instance = this;
boosterAPI = new BoosterImplementation();
boosterManager = new BoosterManager();
if (getServer().getPluginManager().isPluginEnabled("MyPet")) {
registerListener(new MyPetListener());
}
if (getServer().getPluginManager().isPluginEnabled("mcMMO")) {
registerListener(new MCmmoListener());
}
registerListener(new PhantomSpawnListener());
getServer().getMessenger().registerOutgoingPluginChannel(this, Config.pluginMessageChannel);
@@ -30,7 +30,6 @@ public class Booster implements com.alttd.boosterapi.Booster {
this(UUID.randomUUID(), type, playerName, duration, multiplier);
}
@Override
public boolean isActive() {
return active;
@@ -13,10 +13,19 @@ public class MCmmoListener implements Listener {
@EventHandler
public void onMcMMOExperienceEvent(McMMOPlayerXpGainEvent event) {
BoosterManager bm = BoostersPlugin.getInstance().getBoosterManager();
if(bm.isBoosted(BoosterType.MCMMO)) {
Booster b = bm.getBoosted(BoosterType.MCMMO);
if (bm.isBoosted(BoosterType.MCMMO)) {
Booster b = bm.getBooster(BoosterType.MCMMO);
int multiplier = b.getMultiplier();
event.setRawXpGained(event.getRawXpGained() * multiplier);
return;
}
String skillName = event.getSkill().name();
BoosterType type = BoosterType.getByName(skillName);
if (bm.isBoosted(type)) {
Booster b = bm.getBooster(type);
int multiplier = b.getMultiplier();
event.setRawXpGained(event.getRawXpGained() * multiplier);
return;
}
}
// TODO : add individual mcmmo skill boosters
@@ -14,7 +14,7 @@ public class MyPetListener implements Listener {
public void onMyPetExpEvent(MyPetExpEvent event) {
BoosterManager bm = BoostersPlugin.getInstance().getBoosterManager();
if(bm.isBoosted(BoosterType.MYPET)) {
Booster b = bm.getBoosted(BoosterType.MYPET);
Booster b = bm.getBooster(BoosterType.MYPET);
int multiplier = b.getMultiplier();
event.setExp(event.getExp() * multiplier);
}
@@ -18,7 +18,7 @@ public class BoosterManager {
return false;
}
public Booster getBoosted(BoosterType type) {
public Booster getBooster(BoosterType type) {
for (Booster b : activeBoosters) {
if (b.getType() == type && b.isActive()) {
return b;
-7
View File
@@ -1,7 +0,0 @@
# we can have gradle generate this file
name: BoosterPlugin
version: 1.0 # TODO version from gradle
main: com.alttd.boosters.BoosterPlugin
api-version: 1.17
load: STARTUP
authors: [Destro, Teriuihi]