diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b98ab10 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +/.gradle/ +/bin/ +/.settings/ +/build/ +/libs/ +.classpath +.project +bin +libs \ No newline at end of file diff --git a/build.gradle b/build.gradle index d7416d3..4cf5fb8 100644 --- a/build.gradle +++ b/build.gradle @@ -13,14 +13,14 @@ apply plugin: 'net.minecraftforge.gradle.forge' group 'io.github.teitss' -version '1.12.2-3.0.2' +version '1.12.2-3.0.3' archivesBaseName = "PixelMoney" sourceCompatibility = targetCompatibility = "1.8" // Need this here so eclipse task generates correctly. compileJava.options.encoding = "UTF-8" minecraft { - version = "1.12.2-14.23.5.2768" + version = "1.12.2-14.23.5.2809" runDir = "run" mappings = "stable_39" } @@ -35,6 +35,7 @@ repositories { dependencies { compile 'org.spongepowered:spongeapi:7.1.0' + compile fileTree(dir: 'libs', include: '*.jar') } processResources { diff --git a/src/main/java/io/github/teitss/pixelmoney/PixelMoney.java b/src/main/java/io/github/teitss/pixelmoney/PixelMoney.java index ec730f7..118ccb1 100644 --- a/src/main/java/io/github/teitss/pixelmoney/PixelMoney.java +++ b/src/main/java/io/github/teitss/pixelmoney/PixelMoney.java @@ -40,9 +40,9 @@ public class PixelMoney { public static final String NAME = "PixelMoney"; - public static final String VERSION = "3.0.2"; + public static final String VERSION = "3.0.3"; public static final String AUTHOR = "Teits"; - public static final String DESC = "Adds configurable Sponge money rewards for defeating PokĂ©mons and NPC trainers."; + public static final String DESC = "Adds configurable Sponge money rewards for defeating Pokémons and NPC trainers."; @Inject private Logger logger; diff --git a/src/main/java/io/github/teitss/pixelmoney/config/Group.java b/src/main/java/io/github/teitss/pixelmoney/config/Group.java index 95bfd80..dbefb82 100644 --- a/src/main/java/io/github/teitss/pixelmoney/config/Group.java +++ b/src/main/java/io/github/teitss/pixelmoney/config/Group.java @@ -21,11 +21,13 @@ public class Group { private boolean rewardMultiplierEnabled; private boolean extendedMultiplierEnabled; private boolean pixelmonWinMoneyDisabled; + private List disabledPokemons; public Group(String normalPokemonDefeatReward, String bossPokemonDefeatReward, String normalNPCDefeatReward, String bossNPCDefeatReward, String captureReward, List dimensions, String captureMessage, String defeatMessage, String chatType, String turnOnMessageLog, String turnOffMessageLog, - boolean rewardMultiplierEnabled, boolean extendedMultiplierEnabled, boolean pixelmonWinMoneyDisabled) { + boolean rewardMultiplierEnabled, boolean extendedMultiplierEnabled, boolean pixelmonWinMoneyDisabled, + List disabledPokemons) { this.normalPokemonDefeatReward = normalPokemonDefeatReward; this.bossPokemonDefeatReward = bossPokemonDefeatReward; this.normalNPCDefeatReward = normalNPCDefeatReward; @@ -40,6 +42,7 @@ public Group(String normalPokemonDefeatReward, String bossPokemonDefeatReward, S this.rewardMultiplierEnabled = rewardMultiplierEnabled; this.extendedMultiplierEnabled = extendedMultiplierEnabled; this.pixelmonWinMoneyDisabled = pixelmonWinMoneyDisabled; + this.disabledPokemons = disabledPokemons; } public String getNormalPokemonDefeatReward() { @@ -94,6 +97,10 @@ public boolean isPixelmonWinMoneyDisabled() { return pixelmonWinMoneyDisabled; } + public List getDisabledPokemons() { + return disabledPokemons; + } + public ChatType getChatType() { switch (chatType) { case "SYSTEM": diff --git a/src/main/java/io/github/teitss/pixelmoney/config/GroupSerializer.java b/src/main/java/io/github/teitss/pixelmoney/config/GroupSerializer.java index 7734fcc..4863eca 100644 --- a/src/main/java/io/github/teitss/pixelmoney/config/GroupSerializer.java +++ b/src/main/java/io/github/teitss/pixelmoney/config/GroupSerializer.java @@ -24,7 +24,8 @@ public static Map.Entry deserialize(ConfigurationNode configurati configurationNode.getNode("turnOffMessageLog").getString(), configurationNode.getNode("enableRewardMultiplier").getBoolean(), configurationNode.getNode("enableExtendedRewardMultiplier").getBoolean(), - configurationNode.getNode("disablePixelmonWinMoney").getBoolean() + configurationNode.getNode("disablePixelmonWinMoney").getBoolean(), + configurationNode.getNode("disabledPokemons").getList(TypeToken.of(String.class)) )); } } diff --git a/src/main/java/io/github/teitss/pixelmoney/listeners/BeatWildPixelmonListener.java b/src/main/java/io/github/teitss/pixelmoney/listeners/BeatWildPixelmonListener.java index a181860..2143f4e 100644 --- a/src/main/java/io/github/teitss/pixelmoney/listeners/BeatWildPixelmonListener.java +++ b/src/main/java/io/github/teitss/pixelmoney/listeners/BeatWildPixelmonListener.java @@ -1,13 +1,16 @@ package io.github.teitss.pixelmoney.listeners; +import com.google.common.reflect.TypeToken; import com.pixelmonmod.pixelmon.api.events.BeatWildPixelmonEvent; import com.pixelmonmod.pixelmon.battles.BattleRegistry; import com.pixelmonmod.pixelmon.battles.controller.participants.PixelmonWrapper; import com.pixelmonmod.pixelmon.entities.pixelmon.EntityPixelmon; + import io.github.teitss.pixelmoney.PixelMoney; import io.github.teitss.pixelmoney.config.Config; import io.github.teitss.pixelmoney.config.Group; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; + import org.apache.commons.lang3.StringUtils; import org.spongepowered.api.Sponge; import org.spongepowered.api.entity.living.player.Player; @@ -17,6 +20,7 @@ import org.spongepowered.api.text.serializer.TextSerializers; import javax.script.ScriptException; + import java.math.BigDecimal; public class BeatWildPixelmonListener { @@ -37,6 +41,9 @@ public void defeatWild(BeatWildPixelmonEvent event) { if (!group.getDimensions().contains(event.player.dimension)) return; + if (group.getDisabledPokemons().contains(((EntityPixelmon)event.wpp.getEntity()).getSpecies().name)) + return; + String normalReward = group.getNormalPokemonDefeatReward(); String bossReward = group.getBossPokemonDefeatReward(); diff --git a/src/main/java/io/github/teitss/pixelmoney/listeners/CaptureListener.java b/src/main/java/io/github/teitss/pixelmoney/listeners/CaptureListener.java index c37da43..5a20998 100644 --- a/src/main/java/io/github/teitss/pixelmoney/listeners/CaptureListener.java +++ b/src/main/java/io/github/teitss/pixelmoney/listeners/CaptureListener.java @@ -31,9 +31,12 @@ public void onSuccessfulCapture(CaptureEvent.SuccessfulCapture event) { return; } - if (group.getDimensions().contains(event.player.dimension)) + if (!group.getDimensions().contains(event.player.dimension)) return; + if (group.getDisabledPokemons().contains(event.getPokemon().getSpecies().name)) + return; + String captureReward = group.getCaptureReward(); if (captureReward.isEmpty()) diff --git a/src/main/resources/assets/pixelmoney/pixelmoney.conf b/src/main/resources/assets/pixelmoney/pixelmoney.conf index efb9447..9a56f7b 100644 --- a/src/main/resources/assets/pixelmoney/pixelmoney.conf +++ b/src/main/resources/assets/pixelmoney/pixelmoney.conf @@ -42,5 +42,10 @@ groups = [ enableExtendedRewardMultiplier = false # Disables PokĂ©dollars received from npc trainers. disablePixelmonWinMoney = true + # Disabled pokemons. + disabledPokemons = [ + Pikachu + Bidoof + ] } -] \ No newline at end of file +]