Skip to content
This repository was archived by the owner on Feb 21, 2020. It is now read-only.

Commit a294521

Browse files
authored
Add files via upload
1 parent 7972a94 commit a294521

File tree

6 files changed

+103
-33
lines changed

6 files changed

+103
-33
lines changed

config.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ language:
1616
msg-broadcast-2: " times experience activities has opened, Duration of "
1717
msg-broadcast-3: " minute(s)!"
1818
usage: "\u00a7eUsage: /multiexp enable [multiple] [minute]"
19+
papi-holding: "\u00a7aHolding"
20+
papi-expired: "\u00a74Expired"
21+
papi-time-prefix: "\u00a7e"
22+
papi-time-suffix: " Minute(s)"
1923
multiexp:
2024
enabled: false
2125
multiple: 2

plugin.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@ name: MultiExperience
22
main: org.meowcat.MultiExperience.Main
33
author: MeowCat Studio MlgmXyysd
44
version: 1.0.0
5+
softdepend: [PlaceholderAPI]
6+
prefix: MultiExperience
57
commands:
68
multiexp:
79
permission: multiexp.admin
8-
description: Multi Experience Plugin Info
10+
description: Multi Experience plugin Info
911
usage: /<command> enable [multiple] [minute]
12+
aliases: [mexp, multiexperience]
1013
permissions:
1114
multiexp.admin:
1215
default: op

src/org/meowcat/MultiExperience/ExpListener.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
package org.meowcat.MultiExperience;
22

3+
import org.bukkit.Bukkit;
4+
import org.bukkit.Server;
35
import org.bukkit.configuration.file.FileConfiguration;
46
import org.bukkit.event.EventHandler;
57
import org.bukkit.event.Listener;
68
import org.bukkit.event.player.PlayerExpChangeEvent;
79

810
public class ExpListener implements Listener {
911

10-
FileConfiguration getConfig = Main.plugin.getConfig();
12+
FileConfiguration getConfig = Main.Main.getConfig();
13+
Server getServer = Bukkit.getServer();
1114

1215
@EventHandler
1316
public void ExperienceListener(PlayerExpChangeEvent event) {
@@ -18,13 +21,11 @@ public void ExperienceListener(PlayerExpChangeEvent event) {
1821
float Multiple = (float) getConfig.getDouble("multiexp.multiple");
1922
int PickedExp = event.getAmount();
2023
float CalculatedExp = PickedExp * Multiple;
21-
String message = getConfig.getString("language.msg-getexp-1") + Multiple + getConfig.getString("language.msg-getexp-2") + CalculatedExp + getConfig.getString("language.msg-getexp-3");
2224
event.setAmount(Math.round(CalculatedExp));
23-
event.getPlayer().sendMessage(message);
25+
event.getPlayer().sendMessage(getConfig.getString("language.msg-getexp-1") + Multiple + getConfig.getString("language.msg-getexp-2") + CalculatedExp + getConfig.getString("language.msg-getexp-3"));
2426
} else {
2527
getConfig.set("multiexp.enabled", false);
26-
String expired = getConfig.getString("language.msg-expired");
27-
Main.plugin.getServer().broadcastMessage(expired);
28+
getServer.broadcastMessage(getConfig.getString("language.msg-expired"));
2829
}
2930
}
3031
}

src/org/meowcat/MultiExperience/ExpThread.java

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,27 @@
11
package org.meowcat.MultiExperience;
22

3+
import org.bukkit.Bukkit;
4+
import org.bukkit.Server;
35
import org.bukkit.configuration.file.FileConfiguration;
6+
import org.meowcat.MultiExperience.Main;
47

58
public class ExpThread extends Thread {
69

7-
FileConfiguration getConfig = Main.plugin.getConfig();
10+
Server getServer = Bukkit.getServer();
11+
FileConfiguration getConfig = Main.Main.getConfig();
12+
boolean isEnabled = Main.Main.isEnabled();
813

914
@Override
1015
public void run()
1116
{
12-
while (Main.plugin.isEnabled()) {
17+
while (isEnabled) {
1318
try {
1419
sleep(getConfig.getInt("configuration.broadcast-interval-time") * 60000);
1520
}
1621
catch (InterruptedException e) {
1722
e.printStackTrace();
1823
}
19-
if (!Main.plugin.isEnabled()) {
24+
if (!isEnabled) {
2025
return;
2126
}
2227
if (getConfig.getBoolean("multiexp.enabled")) {
@@ -25,8 +30,7 @@ public void run()
2530
if (CurrentTime <= MultiTime) {
2631
long RemainingTime = (MultiTime - CurrentTime) / 60000;
2732
double Multiple = getConfig.getDouble("multiexp.multiple");
28-
String broadcast = getConfig.getString("language.msg-holding-1") + Multiple + getConfig.getString("language.msg-holding-2") + Math.floor(RemainingTime) + getConfig.getString("language.msg-holding-3");
29-
Main.plugin.getServer().broadcastMessage(broadcast);
33+
getServer.broadcastMessage(getConfig.getString("language.msg-holding-1") + Multiple + getConfig.getString("language.msg-holding-2") + Math.floor(RemainingTime) + getConfig.getString("language.msg-holding-3"));
3034
}
3135
else {
3236
getConfig.set("multiexp.enabled", false);

src/org/meowcat/MultiExperience/Main.java

Lines changed: 27 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,45 @@
11
package org.meowcat.MultiExperience;
22

33
import org.bukkit.Bukkit;
4-
import org.bukkit.ChatColor;
54
import org.bukkit.command.Command;
65
import org.bukkit.command.CommandSender;
76
import org.bukkit.event.Listener;
7+
import org.bukkit.plugin.Plugin;
88
import org.bukkit.plugin.java.JavaPlugin;
99

1010
public class Main extends JavaPlugin implements Listener {
1111

12-
public static Main plugin;
13-
12+
public static Main Main;
13+
1414
@Override
1515
public void onEnable() {
1616
saveDefaultConfig();
17-
plugin = this;
18-
ExpListener listener = new ExpListener();
19-
getServer().getPluginManager().registerEvents(listener, plugin);
20-
boolean isBroadcast = getConfig().getBoolean("configuration.auto-broadcast-enabled");
21-
if (isBroadcast) {
22-
ExpThread ExpThread = new ExpThread();
23-
ExpThread.start();
17+
Main=this;
18+
getServer().getPluginManager().registerEvents(new ExpListener(), this);
19+
if (getConfig().getBoolean("configuration.auto-broadcast-enabled")) {
20+
new ExpThread().start();
21+
}
22+
Plugin plugin = Bukkit.getPluginManager().getPlugin("PlaceholderAPI");
23+
if(plugin != null){
24+
System.out.println("Hooking PlaceholderAPI");
25+
boolean success = new PAPIHooker(this).hook();
26+
if(success == true){
27+
System.out.println("Hook PlaceholderAPI Successfully!");
28+
}else{
29+
System.out.println("Hook PlaceholderAPI Failed!");
30+
}
2431
}
25-
Bukkit.getConsoleSender().sendMessage(ChatColor.GREEN + "Multi Experience by MeowCat Studio");
26-
Bukkit.getConsoleSender().sendMessage(ChatColor.GREEN + "Offical Website http://www.meowcat.org/");
32+
this.getLogger().info("Multi Experience by MeowCat Studio");
33+
this.getLogger().info("Offical Website http://www.meowcat.org/");
34+
this.getLogger().info("[MultiExperience]Plugin Enabled.");
2735
}
2836

2937
@Override
3038
public void onDisable() {
3139
saveConfig();
32-
Bukkit.getConsoleSender().sendMessage(ChatColor.GREEN + "Multi Experience by MeowCat Studio");
33-
Bukkit.getConsoleSender().sendMessage(ChatColor.GREEN + "Offical Website http://www.meowcat.org/");
40+
this.getLogger().info("Multi Experience by MeowCat Studio");
41+
this.getLogger().info("Offical Website http://www.meowcat.org/");
42+
this.getLogger().info("[MultiExperience]Plugin Disabled.");
3443
}
3544

3645
@Override
@@ -50,19 +59,15 @@ public boolean onCommand(CommandSender player, Command command, String label, St
5059
getConfig().set("multiexp.enabled", true);
5160
getConfig().set("multiexp.multiple", Multiple);
5261
getConfig().set("multiexp.tick-time", RemainingTime);
53-
String message = getConfig().getString("language.msg-signal-1") + Multiple + getConfig().getString("language.msg-signal-2") + MultiTime + getConfig().getString("language.msg-signal-3");
54-
String broadcast = getConfig().getString("language.msg-broadcast-1") + Multiple + getConfig().getString("language.msg-broadcast-2") + MultiTime + getConfig().getString("language.msg-broadcast-3");
55-
player.sendMessage(message);
56-
getServer().broadcastMessage(broadcast);
62+
player.sendMessage(getConfig().getString("language.msg-signal-1") + Multiple + getConfig().getString("language.msg-signal-2") + MultiTime + getConfig().getString("language.msg-signal-3"));
63+
getServer().broadcastMessage(getConfig().getString("language.msg-broadcast-1") + Multiple + getConfig().getString("language.msg-broadcast-2") + MultiTime + getConfig().getString("language.msg-broadcast-3"));
5764
} else {
58-
String usage = getConfig().getString("language.usage");
59-
player.sendMessage(usage);
65+
player.sendMessage(getConfig().getString("language.usage"));
6066
}
6167
} else {
62-
String usage = getConfig().getString("language.usage");
6368
player.sendMessage("¡ìbMulti Experience by MeowCat Studio");
6469
player.sendMessage("¡ìbhttp://www.meowcat.org/");
65-
player.sendMessage(usage);
70+
player.sendMessage(getConfig().getString("language.usage"));
6671
}
6772
return true;
6873
}
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
package org.meowcat.MultiExperience;
2+
3+
import org.bukkit.configuration.file.FileConfiguration;
4+
import org.bukkit.entity.Player;
5+
import org.bukkit.plugin.Plugin;
6+
import me.clip.placeholderapi.external.EZPlaceholderHook;
7+
8+
public class PAPIHooker extends EZPlaceholderHook{
9+
10+
FileConfiguration getConfig = Main.Main.getConfig();
11+
12+
public PAPIHooker(Plugin plugin){
13+
super(plugin, "multiexp");
14+
}
15+
16+
@Override
17+
public String onPlaceholderRequest(Player player, String string) {
18+
if (string.equals("activity")) {
19+
if (getConfig.getBoolean("multiexp.enabled")) {
20+
long CurrentTime = System.currentTimeMillis();
21+
long MultiTime = getConfig.getLong("multiexp.tick-time");
22+
if (CurrentTime <= MultiTime) {
23+
String message = getConfig.getString("language.papi-holding");
24+
return message;
25+
}
26+
String message = getConfig.getString("language.papi-expired");
27+
return message;
28+
} else {
29+
String message = getConfig.getString("language.papi-expired");
30+
return message;
31+
}
32+
} else if (string.equals("time")) {
33+
if (getConfig.getBoolean("multiexp.enabled")) {
34+
long CurrentTime = System.currentTimeMillis();
35+
long MultiTime = getConfig.getLong("multiexp.tick-time");
36+
if (CurrentTime <= MultiTime) {
37+
long RemainingTime = (MultiTime - CurrentTime) / 60000;
38+
return getConfig.getString("language.papi-time-prefix") + Math.floor(RemainingTime) + getConfig.getString("language.papi-time-suffix");
39+
} else {
40+
String message = getConfig.getString("language.papi-expired");
41+
return message;
42+
}
43+
} else {
44+
String message = getConfig.getString("language.papi-expired");
45+
return message;
46+
}
47+
} else if (string.equals("multiple")) {
48+
String Multiple = getConfig.getString("multiexp.multiple");
49+
return Multiple;
50+
}
51+
return null;
52+
}
53+
}

0 commit comments

Comments
 (0)