Skip to content

Commit a950eb3

Browse files
authored
Merge pull request #16 from MetallicGoat/tweaks_v3.0.0
Tweaks v3.0.0
2 parents 922b7df + 13f98da commit a950eb3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+4450
-4315
lines changed

.github/workflows/maven.yml

+9-9
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@ jobs:
1515
runs-on: ubuntu-latest
1616

1717
steps:
18-
- uses: actions/checkout@v2
19-
- name: Set up JDK 11
20-
uses: actions/setup-java@v2
21-
with:
22-
java-version: '11'
23-
distribution: 'temurin'
24-
cache: maven
25-
- name: Build with Maven
26-
run: mvn -B package --file pom.xml
18+
- uses: actions/checkout@v2
19+
- name: Set up JDK 11
20+
uses: actions/setup-java@v2
21+
with:
22+
java-version: '11'
23+
distribution: 'temurin'
24+
cache: maven
25+
- name: Build with Maven
26+
run: mvn -B package --file pom.xml

pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>me.metallicgoat</groupId>
88
<artifactId>MBedwarsTweaks</artifactId>
9-
<version>2.2.1-Dev-C</version>
9+
<version>3.0.0</version>
1010

1111
<repositories>
1212
<repository>

src/main/java/me/metallicgoat/tweaksaddon/Console.java

+16-16
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,24 @@
22

33
public class Console {
44

5-
public static void printWarn(String warn){
6-
MBedwarsTweaksPlugin.getInstance().getLogger().warning(warn);
7-
}
5+
public static void printWarn(String warn) {
6+
MBedwarsTweaksPlugin.getInstance().getLogger().warning(warn);
7+
}
88

9-
public static void printInfo(String info){
10-
MBedwarsTweaksPlugin.getInstance().getLogger().info(info);
11-
}
9+
public static void printInfo(String info) {
10+
MBedwarsTweaksPlugin.getInstance().getLogger().info(info);
11+
}
1212

13-
public static void printInfo(String... strings){
14-
for(String s : strings)
15-
printInfo(s);
16-
}
13+
public static void printInfo(String... strings) {
14+
for (String s : strings)
15+
printInfo(s);
16+
}
1717

18-
public static void printConfigWarn(String warn, String config){
19-
printWarn("[Config-" + config + "] " + warn);
20-
}
18+
public static void printConfigWarn(String warn, String config) {
19+
printWarn("[Config-" + config + "] " + warn);
20+
}
2121

22-
public static void printConfigInfo(String info, String config){
23-
printInfo("[Config-" + config + "] " + info);
24-
}
22+
public static void printConfigInfo(String info, String config) {
23+
printInfo("[Config-" + config + "] " + info);
24+
}
2525
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
package me.metallicgoat.tweaksaddon;
2+
3+
import java.util.HashMap;
4+
import org.bukkit.Bukkit;
5+
import org.bukkit.event.EventHandler;
6+
import org.bukkit.event.Listener;
7+
import org.bukkit.event.server.PluginDisableEvent;
8+
import org.bukkit.event.server.PluginEnableEvent;
9+
10+
public class DependManager implements Listener {
11+
12+
private static final HashMap<DependType, Boolean> loadedDepends = new HashMap<>();
13+
14+
public static void load() {
15+
if (Bukkit.getPluginManager().isPluginEnabled("FireBallKnockback")) {
16+
Console.printInfo("I noticed you are using my Fireball jumping addon. " +
17+
"As of 5.0.13, you do not need it anymore! Fireball jumping " +
18+
"is now built into core MBedwars. Features such as throw cooldown and throw " +
19+
"effects have been added to this addon (MBedwarsTweaks). - MetallicGoat"
20+
);
21+
}
22+
23+
for (DependType type : DependType.values()) {
24+
final boolean enabled = Bukkit.getPluginManager().isPluginEnabled(type.getName());
25+
26+
setLoaded(type, enabled);
27+
28+
if (type == DependType.PLACEHOLDER_API) {
29+
if (enabled)
30+
new Placeholders(MBedwarsTweaksPlugin.getInstance()).register();
31+
else
32+
Console.printInfo("PlaceholderAPI was not Found! PAPI placeholders won't work!");
33+
}
34+
}
35+
}
36+
37+
public static boolean isPresent(DependType type) {
38+
return loadedDepends.get(type);
39+
}
40+
41+
private static void setLoaded(String typeName, boolean enabled) {
42+
setLoaded(DependType.getTypeByName(typeName), enabled);
43+
}
44+
45+
private static void setLoaded(DependType type, boolean enabled) {
46+
// Check if this is even a dependency
47+
if (type == null)
48+
return;
49+
50+
loadedDepends.put(type, enabled);
51+
}
52+
53+
@EventHandler
54+
public void onDependLoad(PluginEnableEvent event) {
55+
setLoaded(event.getPlugin().getName(), true);
56+
}
57+
58+
@EventHandler
59+
public void onDependUnload(PluginDisableEvent event) {
60+
setLoaded(event.getPlugin().getName(), false);
61+
}
62+
}

src/main/java/me/metallicgoat/tweaksaddon/DependType.java

+14-14
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,22 @@
33
import lombok.Getter;
44

55
public enum DependType {
6-
PLACEHOLDER_API("PlaceholderAPI"),
7-
HOTBAR_MANAGER("MBedwarsHotbarManager"),
8-
PRESTIGE_ADDON("PrestigeAddon");
6+
PLACEHOLDER_API("PlaceholderAPI"),
7+
HOTBAR_MANAGER("MBedwarsHotbarManager"),
8+
PRESTIGE_ADDON("PrestigeAddon");
99

10-
@Getter
11-
private final String name;
10+
@Getter
11+
private final String name;
1212

13-
DependType(String name) {
14-
this.name = name;
15-
}
13+
DependType(String name) {
14+
this.name = name;
15+
}
1616

17-
public static DependType getTypeByName(String name){
18-
for(DependType type : DependType.values())
19-
if(type.name.equalsIgnoreCase(name))
20-
return type;
17+
public static DependType getTypeByName(String name) {
18+
for (DependType type : DependType.values())
19+
if (type.name.equalsIgnoreCase(name))
20+
return type;
2121

22-
return null;
23-
}
22+
return null;
23+
}
2424
}
Original file line numberDiff line numberDiff line change
@@ -1,92 +1,118 @@
11
package me.metallicgoat.tweaksaddon;
22

33
import de.marcely.bedwars.api.BedwarsAddon;
4-
import me.metallicgoat.tweaksaddon.tweaks.hooks.*;
5-
import me.metallicgoat.tweaksaddon.tweaks.advancedswords.*;
6-
import me.metallicgoat.tweaksaddon.tweaks.cosmetic.*;
7-
import me.metallicgoat.tweaksaddon.tweaks.explosives.*;
8-
import me.metallicgoat.tweaksaddon.tweaks.misc.*;
9-
import me.metallicgoat.tweaksaddon.tweaks.spawners.*;
10-
import me.metallicgoat.tweaksaddon.tweaks.messages.*;
11-
import me.metallicgoat.tweaksaddon.serverevents.*;
4+
import me.metallicgoat.tweaksaddon.tweaks.advancedswords.AlwaysSword;
5+
import me.metallicgoat.tweaksaddon.tweaks.advancedswords.AntiChest;
6+
import me.metallicgoat.tweaksaddon.tweaks.advancedswords.AntiDrop;
7+
import me.metallicgoat.tweaksaddon.tweaks.advancedswords.DegradingBuyGroups;
8+
import me.metallicgoat.tweaksaddon.tweaks.advancedswords.ReplaceSwordOnBuy;
9+
import me.metallicgoat.tweaksaddon.tweaks.advancedswords.ReplaceToolOnBuy;
10+
import me.metallicgoat.tweaksaddon.tweaks.advancedswords.ToolSwordHelper;
11+
import me.metallicgoat.tweaksaddon.tweaks.cosmetic.ActionBar;
12+
import me.metallicgoat.tweaksaddon.tweaks.cosmetic.CustomTeamColors;
13+
import me.metallicgoat.tweaksaddon.tweaks.cosmetic.ForceScoreboardUpdating;
14+
import me.metallicgoat.tweaksaddon.tweaks.cosmetic.FriendlyVillagers;
15+
import me.metallicgoat.tweaksaddon.tweaks.cosmetic.HealPoolParticles;
16+
import me.metallicgoat.tweaksaddon.tweaks.cosmetic.SpongeParticles;
17+
import me.metallicgoat.tweaksaddon.tweaks.explosives.DisableFireballOutsideArena;
18+
import me.metallicgoat.tweaksaddon.tweaks.explosives.FireballBlockBreakWhitelist;
19+
import me.metallicgoat.tweaksaddon.tweaks.explosives.FireballThrowEffects;
20+
import me.metallicgoat.tweaksaddon.tweaks.explosives.FireballUseCoolDown;
21+
import me.metallicgoat.tweaksaddon.tweaks.hooks.PrestigesLevelOnExperienceBar;
22+
import me.metallicgoat.tweaksaddon.tweaks.messages.BuyMessage;
23+
import me.metallicgoat.tweaksaddon.tweaks.messages.CustomBedBreakMessage;
24+
import me.metallicgoat.tweaksaddon.tweaks.messages.FinalKillSuffix;
25+
import me.metallicgoat.tweaksaddon.tweaks.messages.TeamEliminate;
26+
import me.metallicgoat.tweaksaddon.tweaks.messages.TopKillerMessage;
27+
import me.metallicgoat.tweaksaddon.tweaks.misc.BlockArenaStats;
28+
import me.metallicgoat.tweaksaddon.tweaks.misc.EmptyContainers;
29+
import me.metallicgoat.tweaksaddon.tweaks.misc.HeightCap;
30+
import me.metallicgoat.tweaksaddon.tweaks.misc.LockTeamChest;
31+
import me.metallicgoat.tweaksaddon.tweaks.misc.PermanentEffects;
32+
import me.metallicgoat.tweaksaddon.tweaks.misc.PersonalChests;
33+
import me.metallicgoat.tweaksaddon.tweaks.misc.PlayerLimitBypass;
34+
import me.metallicgoat.tweaksaddon.tweaks.misc.PreventLiquidBuildUp;
35+
import me.metallicgoat.tweaksaddon.tweaks.misc.RemoveInvisOnDamage;
36+
import me.metallicgoat.tweaksaddon.tweaks.spawners.BedBreakTier;
37+
import me.metallicgoat.tweaksaddon.tweaks.spawners.DisableEmptyGenerators;
38+
import me.metallicgoat.tweaksaddon.tweaks.spawners.GenTiers;
39+
import me.metallicgoat.tweaksaddon.tweaks.spawners.SpawnerUpgrade;
1240
import org.bukkit.plugin.PluginManager;
1341

1442
public class MBedwarsTweaksAddon extends BedwarsAddon {
1543

16-
private final MBedwarsTweaksPlugin plugin;
17-
18-
public MBedwarsTweaksAddon(MBedwarsTweaksPlugin plugin) {
19-
super(plugin);
20-
21-
this.plugin = plugin;
22-
}
23-
24-
@Override
25-
public String getName(){
26-
return plugin.getName();
27-
}
28-
29-
public static void registerEvents(){
30-
final MBedwarsTweaksPlugin plugin = MBedwarsTweaksPlugin.getInstance();
31-
final PluginManager manager = plugin.getServer().getPluginManager();
32-
33-
// CONTRIBUTORS: PLEASE READ
34-
// NOTE: Please keep the following categories and classes in alphabetical order
35-
// NOTE: If you are adding support for your own plugin, please add your class to the hooks folder
36-
37-
// Advanced Swords
38-
manager.registerEvents(new AlwaysSword(), plugin);
39-
manager.registerEvents(new AntiChest(), plugin);
40-
manager.registerEvents(new AntiDrop(), plugin);
41-
manager.registerEvents(new DegradingBuyGroups(), plugin);
42-
manager.registerEvents(new ReplaceSwordOnBuy(), plugin);
43-
manager.registerEvents(new ReplaceToolOnBuy(), plugin);
44-
manager.registerEvents(new ToolSwordHelper(), plugin);
45-
46-
// Cosmetic
47-
manager.registerEvents(new ActionBar(), plugin);
48-
manager.registerEvents(new CustomTeamColors(), plugin);
49-
manager.registerEvents(new FinalStrike(), plugin);
50-
manager.registerEvents(new ForceScoreboardUpdating(), plugin);
51-
manager.registerEvents(new FriendlyVillagers(), plugin);
52-
manager.registerEvents(new HealPoolParticles(), plugin);
53-
manager.registerEvents(new SpongeParticles(), plugin);
54-
55-
// Explosives
56-
manager.registerEvents(new DisableFireballOutsideArena(), plugin);
57-
manager.registerEvents(new FireballBlockBreakWhitelist(), plugin);
58-
manager.registerEvents(new FireballThrowEffects(), plugin);
59-
manager.registerEvents(new FireballUseCoolDown(), plugin);
60-
61-
// Hooks
62-
manager.registerEvents(new PrestigesLevelOnExperienceBar(), plugin);
63-
64-
// Messages
65-
manager.registerEvents(new BuyMessage(), plugin);
66-
manager.registerEvents(new CustomBedBreakMessage(), plugin);
67-
manager.registerEvents(new FinalKillSuffix(), plugin);
68-
manager.registerEvents(new TeamEliminate(), plugin);
69-
manager.registerEvents(new TopKillerMessage(), plugin);
70-
71-
// Misc
72-
manager.registerEvents(new BlockArenaStats(), plugin);
73-
manager.registerEvents(new EmptyContainers(), plugin);
74-
manager.registerEvents(new HeightCap(), plugin);
75-
manager.registerEvents(new LockTeamChest(), plugin);
76-
manager.registerEvents(new PermanentEffects(), plugin);
77-
manager.registerEvents(new PersonalChests(), plugin);
78-
manager.registerEvents(new PlayerLimitBypass(), plugin);
79-
manager.registerEvents(new PreventLiquidBuildUp(), plugin);
80-
manager.registerEvents(new RemoveInvisOnDamage(), plugin);
81-
82-
// Spawners
83-
manager.registerEvents(new BedBreakTier(), plugin);
84-
manager.registerEvents(new DisableEmptyGenerators(), plugin);
85-
manager.registerEvents(new GenTiers(), plugin);
86-
manager.registerEvents(new SpawnerUpgrade(), plugin);
87-
88-
// Server Events
89-
manager.registerEvents(new DependManager(), plugin);
90-
manager.registerEvents(new LoadConfigs(), plugin);
91-
}
44+
private final MBedwarsTweaksPlugin plugin;
45+
46+
public MBedwarsTweaksAddon(MBedwarsTweaksPlugin plugin) {
47+
super(plugin);
48+
49+
this.plugin = plugin;
50+
}
51+
52+
public static void registerEvents() {
53+
final MBedwarsTweaksPlugin plugin = MBedwarsTweaksPlugin.getInstance();
54+
final PluginManager manager = plugin.getServer().getPluginManager();
55+
56+
// CONTRIBUTORS: PLEASE READ
57+
// NOTE: Please keep the following categories and classes in alphabetical order
58+
// NOTE: If you are adding support for your own plugin, please add your class to the hooks folder
59+
60+
// Advanced Swords
61+
manager.registerEvents(new AlwaysSword(), plugin);
62+
manager.registerEvents(new AntiChest(), plugin);
63+
manager.registerEvents(new AntiDrop(), plugin);
64+
manager.registerEvents(new DegradingBuyGroups(), plugin);
65+
manager.registerEvents(new ReplaceSwordOnBuy(), plugin);
66+
manager.registerEvents(new ReplaceToolOnBuy(), plugin);
67+
manager.registerEvents(new ToolSwordHelper(), plugin);
68+
69+
// Cosmetic
70+
manager.registerEvents(new ActionBar(), plugin);
71+
manager.registerEvents(new CustomTeamColors(), plugin);
72+
manager.registerEvents(new ForceScoreboardUpdating(), plugin);
73+
manager.registerEvents(new FriendlyVillagers(), plugin);
74+
manager.registerEvents(new HealPoolParticles(), plugin);
75+
manager.registerEvents(new SpongeParticles(), plugin);
76+
77+
// Explosives
78+
manager.registerEvents(new DisableFireballOutsideArena(), plugin);
79+
manager.registerEvents(new FireballBlockBreakWhitelist(), plugin);
80+
manager.registerEvents(new FireballThrowEffects(), plugin);
81+
manager.registerEvents(new FireballUseCoolDown(), plugin);
82+
83+
// Hooks
84+
manager.registerEvents(new PrestigesLevelOnExperienceBar(), plugin);
85+
86+
// Messages
87+
manager.registerEvents(new BuyMessage(), plugin);
88+
manager.registerEvents(new CustomBedBreakMessage(), plugin);
89+
manager.registerEvents(new FinalKillSuffix(), plugin);
90+
manager.registerEvents(new TeamEliminate(), plugin);
91+
manager.registerEvents(new TopKillerMessage(), plugin);
92+
93+
// Misc
94+
manager.registerEvents(new BlockArenaStats(), plugin);
95+
manager.registerEvents(new EmptyContainers(), plugin);
96+
manager.registerEvents(new HeightCap(), plugin);
97+
manager.registerEvents(new LockTeamChest(), plugin);
98+
manager.registerEvents(new PermanentEffects(), plugin);
99+
manager.registerEvents(new PersonalChests(), plugin);
100+
manager.registerEvents(new PlayerLimitBypass(), plugin);
101+
manager.registerEvents(new PreventLiquidBuildUp(), plugin);
102+
manager.registerEvents(new RemoveInvisOnDamage(), plugin);
103+
104+
// Spawners
105+
manager.registerEvents(new BedBreakTier(), plugin);
106+
manager.registerEvents(new DisableEmptyGenerators(), plugin);
107+
manager.registerEvents(new GenTiers(), plugin);
108+
manager.registerEvents(new SpawnerUpgrade(), plugin);
109+
110+
// Server Events
111+
manager.registerEvents(new DependManager(), plugin);
112+
}
113+
114+
@Override
115+
public String getName() {
116+
return plugin.getName();
117+
}
92118
}

0 commit comments

Comments
 (0)