Skip to content

Commit

Permalink
I've gotten rid of build.yml as I decided that its better for me to m…
Browse files Browse the repository at this point in the history
…anually test each release and upload a compiled jar, which of course if not trusted you can compile yourself using the source code.

- Added config.yml, this plugin will now make a folder with the config.yml file where you can edit all the welcome messages.
  • Loading branch information
Kame03 committed Jan 15, 2023
1 parent 1d61bc6 commit 25d886f
Show file tree
Hide file tree
Showing 5 changed files with 28 additions and 61 deletions.
41 changes: 0 additions & 41 deletions .github/workflows/build.yml

This file was deleted.

33 changes: 20 additions & 13 deletions src/main/java/in/rs/milivojevic/KPManager/JoinWelcomer.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import okhttp3.Response;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
Expand All @@ -16,21 +17,30 @@
import java.io.IOException;
import java.util.Objects;

// import static org.bukkit.Bukkit.getLogger;

public final class JoinWelcomer implements Listener {
private final OkHttpClient client = new OkHttpClient();
private final String messagePlayer = ChatColor.AQUA + "Welcome " + ChatColor.GREEN + "{playerName}" + ChatColor.AQUA + " to my server! " + ChatColor.GREEN + "Enjoy your stay!";
private final String messageEveryone = ChatColor.AQUA + "{playerName} joined from " + ChatColor.GREEN + "{country}.";
private final String messageError = ChatColor.RED + "Welcome, " + ChatColor.YELLOW + "{playerName}, " + ChatColor.RED + "to the server! It seems you may have joined from localhost or there was an error with the API ip-api.com. Please check your internet connection and firewall settings.";
private FileConfiguration config;
private String messagePlayer;
private String messageEveryone;
private String messageError;
private final Main plugin;
public JoinWelcomer(Main plugin) {
this.plugin = plugin;
config = plugin.getConfig();
messagePlayer = config.getString("messagePlayer").replace('&', ChatColor.COLOR_CHAR);
messageEveryone = config.getString("messageEveryone").replace('&', ChatColor.COLOR_CHAR);
messageError = config.getString("messageError").replace('&', ChatColor.COLOR_CHAR);
}




private String parseCountry(String xml) {
Document doc = Jsoup.parse(xml, "", org.jsoup.parser.Parser.xmlParser());
Elements elements = doc.select("country");
return elements.text();
}


@EventHandler
public void onPlayerJoin(PlayerJoinEvent event) {
Player player = event.getPlayer();
Expand All @@ -40,23 +50,20 @@ public void onPlayerJoin(PlayerJoinEvent event) {
Request requestIp;
requestIp = new Request.Builder().url("http://ip-api.com/xml/" + playerIP).build();

player.sendMessage(messagePlayer.replace("{playerName}", player.getName()));


player.sendMessage(ChatColor.translateAlternateColorCodes('&', messagePlayer.replace("{playerName}", player.getName())));

try (Response response = client.newCall(requestIp).execute()) {
assert response.body() != null;
String body = response.body().string();
String country = parseCountry(body);
// getLogger().info(player.getName() + "Joined from " + country);

if (!country.isEmpty()) {
Bukkit.broadcastMessage(messageEveryone.replace("{playerName}", player.getName()).replace("{country}", country));
Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', messageEveryone.replace("{playerName}", player.getName()).replace("{country}", country)));
} else {
Bukkit.broadcastMessage(messageError.replace("{playerName}", player.getName()));
Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', messageError.replace("{playerName}", player.getName())));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}

6 changes: 0 additions & 6 deletions src/main/java/in/rs/milivojevic/KPManager/LoginManager.java

This file was deleted.

6 changes: 5 additions & 1 deletion src/main/java/in/rs/milivojevic/KPManager/Main.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,14 @@ public final class Main extends JavaPlugin implements Listener {
public void onEnable() {
getLogger().info(ChatColor.translateAlternateColorCodes('&', "&bStarting!"));
getLogger().info(ChatColor.translateAlternateColorCodes('&', "&bThis plugin is made by Kamey_"));
Bukkit.getServer().getPluginManager().registerEvents(new JoinWelcomer(), this);
this.saveDefaultConfig();
JoinWelcomer joinWelcomer = new JoinWelcomer(this);
getServer().getPluginManager().registerEvents(joinWelcomer, this);
}




@Override
public void onDisable() {
Bukkit.getServer().getPluginManager().disablePlugin(this);
Expand Down
3 changes: 3 additions & 0 deletions src/main/resources/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
messagePlayer: '&aWelcome &b{playerName} &ato my server! &bEnjoy your stay!'
messageEveryone: '&a{playerName} joined from &b{country}.'
messageError: '&cWelcome, &6{playerName}, &cto the server! It seems you may have joined from localhost or there was an error with the API ip-api.com. Please check your internet connection and firewall settings.'

0 comments on commit 25d886f

Please sign in to comment.