Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,11 @@

<groupId>org.garsooon</groupId>
<artifactId>CustomMessages</artifactId>
<version>1.0.2</version>

<version>1.0.3</version>
<packaging>jar</packaging>

<name>Plugin</name>
<description>A plugin</description>
<name>CustomeMessages</name>
<description>A plugin for Beta 1.7.3 Minecraft, that adds custom player join and leave messages </description>

<properties>
<maven.compiler.source>8</maven.compiler.source>
Expand Down
82 changes: 58 additions & 24 deletions src/main/java/org/garsooon/custommessages/CustomMessages.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
package org.garsooon.custommessages;

import com.projectposeidon.api.PoseidonUUID;

import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
Expand All @@ -17,6 +19,7 @@
import java.util.*;
import java.util.regex.Pattern;
import java.util.regex.Matcher;
import java.util.UUID;

public class CustomMessages extends JavaPlugin {
private Properties messages;
Expand Down Expand Up @@ -192,7 +195,7 @@ private boolean handleSetJoin(CommandSender sender, String[] args) {
if (!validateMessage(sender, message)) return true;

message = applyDefaultGold(message);
setJoinMessage(player.getName(), message);
setJoinMessage(player.getUniqueId(), message);
player.sendMessage(ChatColor.GREEN + "Join message set to: " + ChatColor.WHITE + message.replace("%player%", player.getName()));
return true;
}
Expand All @@ -219,7 +222,7 @@ private boolean handleSetLeave(CommandSender sender, String[] args) {
if (!validateMessage(sender, message)) return true;

message = applyDefaultGold(message);
setLeaveMessage(player.getName(), message);
setLeaveMessage(player.getUniqueId(), message);
player.sendMessage(ChatColor.GREEN + "Leave message set to: " + ChatColor.WHITE + message.replace("%player%", player.getName()));
return true;
}
Expand All @@ -236,14 +239,20 @@ private boolean handleSetPlayerJoin(CommandSender sender, String[] args) {
}

String targetPlayer = args[0];
UUID uuid = PoseidonUUID.getPlayerGracefulUUID(targetPlayer);
if (uuid == null) {
sender.sendMessage(ChatColor.RED + "Could not find player or UUID for: " + targetPlayer);
return true;
}

String[] msgArgs = new String[args.length - 1];
System.arraycopy(args, 1, msgArgs, 0, args.length - 1);
String message = String.join(" ", msgArgs);

if (!validateMessage(sender, message)) return true;

message = applyDefaultGold(message);
setJoinMessage(targetPlayer, message);
setJoinMessage(uuid, message);
sender.sendMessage(ChatColor.GREEN + "Set " + targetPlayer + "'s join message to: " + ChatColor.WHITE + message);
return true;
}
Expand All @@ -260,14 +269,20 @@ private boolean handleSetPlayerLeave(CommandSender sender, String[] args) {
}

String targetPlayer = args[0];
UUID uuid = PoseidonUUID.getPlayerGracefulUUID(targetPlayer);
if (uuid == null) {
sender.sendMessage(ChatColor.RED + "Could not find player or UUID for: " + targetPlayer);
return true;
}

String[] msgArgs = new String[args.length - 1];
System.arraycopy(args, 1, msgArgs, 0, args.length - 1);
String message = String.join(" ", msgArgs);

if (!validateMessage(sender, message)) return true;

message = applyDefaultGold(message);
setLeaveMessage(targetPlayer, message);
setLeaveMessage(uuid, message);
sender.sendMessage(ChatColor.GREEN + "Set " + targetPlayer + "'s leave message to: " + ChatColor.WHITE + message);
return true;
}
Expand All @@ -284,8 +299,14 @@ private boolean handleViewMessages(CommandSender sender, String[] args) {
}

String targetPlayer = args[0];
String joinMsg = getJoinMessage(targetPlayer);
String leaveMsg = getLeaveMessage(targetPlayer);
UUID uuid = PoseidonUUID.getPlayerGracefulUUID(targetPlayer);
if (uuid == null) {
sender.sendMessage(ChatColor.RED + "Could not find player or UUID for: " + targetPlayer);
return true;
}

String joinMsg = getJoinMessage(uuid);
String leaveMsg = getLeaveMessage(uuid);

sender.sendMessage(ChatColor.GOLD + "=== Messages for " + targetPlayer + " ===");
sender.sendMessage(ChatColor.YELLOW + "Join: " + ChatColor.WHITE +
Expand All @@ -307,34 +328,50 @@ private boolean handleResetMessages(CommandSender sender, String[] args) {
}

String targetPlayer = args[0];
messages.remove(targetPlayer + ".join");
messages.remove(targetPlayer + ".leave");
UUID uuid = PoseidonUUID.getPlayerGracefulUUID(targetPlayer);
if (uuid == null) {
sender.sendMessage(ChatColor.RED + "Could not find player or UUID for: " + targetPlayer);
return true;
}

messages.remove(uuid.toString() + ".join");
messages.remove(uuid.toString() + ".leave");
saveMessages();
sender.sendMessage(ChatColor.GREEN + "Reset messages for " + targetPlayer);
return true;
}



public String getJoinMessage(String playerName) {
return messages.getProperty(playerName + ".join");
public String getJoinMessage(UUID uuid) {
return messages.getProperty(uuid.toString() + ".join");
}

public String getLeaveMessage(String playerName) {
return messages.getProperty(playerName + ".leave");
public String getLeaveMessage(UUID uuid) {
return messages.getProperty(uuid.toString() + ".leave");
}

public void setJoinMessage(String playerName, String message) {
messages.setProperty(playerName + ".join", message);
public void setJoinMessage(UUID uuid, String message) {
messages.setProperty(uuid.toString() + ".join", message);
saveMessages();
}

public void setLeaveMessage(String playerName, String message) {
messages.setProperty(playerName + ".leave", message);
public void setLeaveMessage(UUID uuid, String message) {
messages.setProperty(uuid.toString() + ".leave", message);
saveMessages();
}

@Deprecated
public String getJoinMessage(String playerName) {
UUID uuid = PoseidonUUID.getPlayerGracefulUUID(playerName);
if (uuid != null) return getJoinMessage(uuid);
return null;
}

@Deprecated
public String getLeaveMessage(String playerName) {
UUID uuid = PoseidonUUID.getPlayerGracefulUUID(playerName);
if (uuid != null) return getLeaveMessage(uuid);
return null;
}

private void loadMessages() {
if (!messagesFile.exists()) {
Expand Down Expand Up @@ -396,8 +433,7 @@ public CustomMessageListener(CustomMessages plugin) {
@Override
public void onPlayerJoin(PlayerJoinEvent event) {
Player player = event.getPlayer();
String customMsg = plugin.getJoinMessage(player.getName());

String customMsg = plugin.getJoinMessage(player.getUniqueId());
if (customMsg != null) {
event.setJoinMessage(plugin.translateColorCodes(
customMsg.replace("%player%", player.getName())));
Expand All @@ -407,8 +443,7 @@ public void onPlayerJoin(PlayerJoinEvent event) {
@Override
public void onPlayerQuit(PlayerQuitEvent event) {
Player player = event.getPlayer();
String customMsg = plugin.getLeaveMessage(player.getName());

String customMsg = plugin.getLeaveMessage(player.getUniqueId());
if (customMsg != null) {
event.setQuitMessage(plugin.translateColorCodes(
customMsg.replace("%player%", player.getName())));
Expand All @@ -418,8 +453,7 @@ public void onPlayerQuit(PlayerQuitEvent event) {
@Override
public void onPlayerKick(PlayerKickEvent event) {
Player player = event.getPlayer();
String customMsg = plugin.getLeaveMessage(player.getName());

String customMsg = plugin.getLeaveMessage(player.getUniqueId());
if (customMsg != null && !event.isCancelled()) {
event.setLeaveMessage(plugin.translateColorCodes(
customMsg.replace("%player%", player.getName())));
Expand Down
2 changes: 1 addition & 1 deletion src/main/resources/plugin.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: CustomMessages
version: 1.0.2
version: 1.0.3
main: org.garsooon.custommessages.CustomMessages
author: Garsooon

Expand Down