mirror of
https://github.com/Aust1n46/VentureChat.git
synced 2025-05-23 02:19:05 +00:00
Updated repeating task for unmuting players
This commit is contained in:
parent
20e440b137
commit
f82af0761c
@ -76,6 +76,8 @@ SpyOff: '&6You are no longer spying.'
|
|||||||
SpyOn: '&6You are now spying.'
|
SpyOn: '&6You are now spying.'
|
||||||
UnblockCommandPlayer: '&cYou have been unblocked from entering command {command}.'
|
UnblockCommandPlayer: '&cYou have been unblocked from entering command {command}.'
|
||||||
UnblockCommandSender: '&cUnblocked player &6{player} &cfrom entering command {command}.'
|
UnblockCommandSender: '&cUnblocked player &6{player} &cfrom entering command {command}.'
|
||||||
|
UnitsPlural: 'minutes'
|
||||||
|
UnitsSingular: 'minute'
|
||||||
UnmutePlayerAllPlayer: '&cYou have just been unmuted in all channels.'
|
UnmutePlayerAllPlayer: '&cYou have just been unmuted in all channels.'
|
||||||
UnmutePlayerAllSender: '&cUnmuted player &6{player} &cin all channels.'
|
UnmutePlayerAllSender: '&cUnmuted player &6{player} &cin all channels.'
|
||||||
UnmutePlayerPlayer: '&cYou have just been unmuted in: {channel_color}{channel_name}'
|
UnmutePlayerPlayer: '&cYou have just been unmuted in: {channel_color}{channel_name}'
|
||||||
|
@ -17,6 +17,7 @@ import java.util.ArrayList;
|
|||||||
import java.util.Calendar;
|
import java.util.Calendar;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
|
import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
@ -419,26 +420,36 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener {
|
|||||||
scheduler.runTaskTimerAsynchronously(this, new Runnable() {
|
scheduler.runTaskTimerAsynchronously(this, new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
for(MineverseChatPlayer p : MineverseChat.players) {
|
for (MineverseChatPlayer p : MineverseChat.onlinePlayers) {
|
||||||
int time = (int) (System.currentTimeMillis() / 60000);
|
int time = (int) System.currentTimeMillis();
|
||||||
|
Iterator<String> iterator = p.getMutes().keySet().iterator();
|
||||||
for(String c : p.getMutes().keySet()) {
|
while (iterator.hasNext()) {
|
||||||
ChatChannel channel = ChatChannel.getChannel(c);
|
ChatChannel channel = ChatChannel.getChannel(iterator.next());
|
||||||
int timemark = p.getMutes().get(channel.getName());
|
int timemark = p.getMutes().get(channel.getName());
|
||||||
if(timemark == 0) return;
|
if (timemark == 0) {
|
||||||
// System.out.println(time + " " + timemark);
|
return;
|
||||||
if(time > timemark) {
|
}
|
||||||
p.removeMute(channel.getName());
|
if (getConfig().getString("loglevel", "info").equals("debug")) {
|
||||||
if(p.isOnline()) p.getPlayer().sendMessage(ChatColor.RED + "You have just been unmuted in: " + channel.getColor() + channel.getName());
|
System.out.println(time + " " + timemark);
|
||||||
else p.setModified(true);
|
}
|
||||||
|
if (time >= timemark) {
|
||||||
|
iterator.remove();
|
||||||
|
if (p.isOnline()) {
|
||||||
|
p.getPlayer().sendMessage(LocalizedMessage.UNMUTE_PLAYER_PLAYER.toString()
|
||||||
|
.replace("{player}", p.getName()).replace("{channel_color}", channel.getColor())
|
||||||
|
.replace("{channel_name}", channel.getName()));
|
||||||
|
} else {
|
||||||
|
p.setModified(true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(getConfig().getString("loglevel", "info").equals("debug")) {
|
if (getConfig().getString("loglevel", "info").equals("debug")) {
|
||||||
Bukkit.getConsoleSender().sendMessage(Format.FormatStringAll("&8[&eVentureChat&8]&e - Updating Player Mutes"));
|
Bukkit.getConsoleSender()
|
||||||
|
.sendMessage(Format.FormatStringAll("&8[&eVentureChat&8]&e - Updating Player Mutes"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, 0L, 1200L); //one minute interval
|
}, 0L, 1200L); // one minute interval
|
||||||
this.firstRun = false;
|
this.firstRun = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -10,6 +10,7 @@ import mineverse.Aust1n46.chat.command.MineverseCommand;
|
|||||||
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
|
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
|
||||||
|
|
||||||
public class Mute extends MineverseCommand {
|
public class Mute extends MineverseCommand {
|
||||||
|
private static final int MILLISECONDS_PER_MINUTE = 60000;
|
||||||
|
|
||||||
public Mute(String name) {
|
public Mute(String name) {
|
||||||
super(name);
|
super(name);
|
||||||
@ -17,115 +18,97 @@ public class Mute extends MineverseCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void execute(CommandSender sender, String command, String[] args) {
|
public void execute(CommandSender sender, String command, String[] args) {
|
||||||
if(sender.hasPermission("venturechat.mute")) {
|
if (sender.hasPermission("venturechat.mute")) {
|
||||||
if(args.length < 2) {
|
if (args.length < 2) {
|
||||||
sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
|
sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString().replace("{command}", "/mute")
|
||||||
.replace("{command}", "/mute")
|
|
||||||
.replace("{args}", "[player] [channel] {time}"));
|
.replace("{args}", "[player] [channel] {time}"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
MineverseChatPlayer player = MineverseChatAPI.getMineverseChatPlayer(args[0]);
|
MineverseChatPlayer player = MineverseChatAPI.getMineverseChatPlayer(args[0]);
|
||||||
if(player == null || (!player.isOnline() && !sender.hasPermission("venturechat.mute.offline"))) {
|
if (player == null || (!player.isOnline() && !sender.hasPermission("venturechat.mute.offline"))) {
|
||||||
sender.sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString()
|
sender.sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString().replace("{args}", args[0]));
|
||||||
.replace("{args}", args[0]));
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(args.length == 2) {
|
if (args.length == 2) {
|
||||||
if(ChatChannel.isChannel(args[1])) {
|
if (ChatChannel.isChannel(args[1])) {
|
||||||
ChatChannel channel = ChatChannel.getChannel(args[1]);
|
ChatChannel channel = ChatChannel.getChannel(args[1]);
|
||||||
if(player.isMuted(channel.getName())) {
|
if (player.isMuted(channel.getName())) {
|
||||||
sender.sendMessage(LocalizedMessage.PLAYER_ALREADY_MUTED.toString()
|
sender.sendMessage(LocalizedMessage.PLAYER_ALREADY_MUTED.toString()
|
||||||
.replace("{player}", player.getName())
|
.replace("{player}", player.getName()).replace("{channel_color}", channel.getColor())
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
|
||||||
.replace("{channel_name}", channel.getName()));
|
.replace("{channel_name}", channel.getName()));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(channel.isMutable()) {
|
if (channel.isMutable()) {
|
||||||
player.addMute(channel.getName(), 0);
|
player.addMute(channel.getName(), 0);
|
||||||
sender.sendMessage(LocalizedMessage.MUTE_PLAYER_SENDER.toString()
|
sender.sendMessage(LocalizedMessage.MUTE_PLAYER_SENDER.toString()
|
||||||
.replace("{player}", player.getName())
|
.replace("{player}", player.getName()).replace("{channel_color}", channel.getColor())
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
|
||||||
.replace("{channel_name}", channel.getName()));
|
.replace("{channel_name}", channel.getName()));
|
||||||
if(player.isOnline())
|
if (player.isOnline())
|
||||||
player.getPlayer().sendMessage(LocalizedMessage.MUTE_PLAYER_PLAYER.toString()
|
player.getPlayer()
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
.sendMessage(LocalizedMessage.MUTE_PLAYER_PLAYER.toString()
|
||||||
.replace("{channel_name}", channel.getName()));
|
.replace("{channel_color}", channel.getColor())
|
||||||
else
|
.replace("{channel_name}", channel.getName()));
|
||||||
|
else
|
||||||
player.setModified(true);
|
player.setModified(true);
|
||||||
if(channel.getBungee()) {
|
if (channel.getBungee()) {
|
||||||
MineverseChat.getInstance().synchronize(player, true);
|
MineverseChat.getInstance().synchronize(player, true);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
sender.sendMessage(LocalizedMessage.CHANNEL_CANNOT_MUTE.toString()
|
sender.sendMessage(LocalizedMessage.CHANNEL_CANNOT_MUTE.toString()
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
.replace("{channel_color}", channel.getColor())
|
||||||
.replace("{channel_name}", channel.getName()));
|
.replace("{channel_name}", channel.getName()));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString()
|
sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString().replace("{args}", args[1]));
|
||||||
.replace("{args}", args[1]));
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(ChatChannel.isChannel(args[1])) {
|
if (ChatChannel.isChannel(args[1])) {
|
||||||
ChatChannel channel = ChatChannel.getChannel(args[1]);
|
ChatChannel channel = ChatChannel.getChannel(args[1]);
|
||||||
if(player.isMuted(channel.getName())) {
|
if (player.isMuted(channel.getName())) {
|
||||||
sender.sendMessage(LocalizedMessage.PLAYER_ALREADY_MUTED.toString()
|
sender.sendMessage(LocalizedMessage.PLAYER_ALREADY_MUTED.toString()
|
||||||
.replace("{player}", player.getName())
|
.replace("{player}", player.getName()).replace("{channel_color}", channel.getColor())
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
|
||||||
.replace("{channel_name}", channel.getName()));
|
.replace("{channel_name}", channel.getName()));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(channel.isMutable()) {
|
if (channel.isMutable()) {
|
||||||
try {
|
try {
|
||||||
//Calendar currentDate = Calendar.getInstance();
|
int datetime = (int) System.currentTimeMillis();
|
||||||
//SimpleDateFormat formatter = new SimpleDateFormat("dd:HH:mm:ss");
|
|
||||||
//String date = formatter.format(currentDate.getTime());
|
|
||||||
//String[] datearray = date.split(":");
|
|
||||||
//int datetime = (Integer.parseInt(datearray[0]) * 1440) + (Integer.parseInt(datearray[1]) * 60) + (Integer.parseInt(datearray[2]));
|
|
||||||
|
|
||||||
int datetime = (int) (System.currentTimeMillis() / 60000);
|
|
||||||
|
|
||||||
int time = Integer.parseInt(args[2]);
|
int time = Integer.parseInt(args[2]);
|
||||||
if(time > 0) {
|
if (time > 0) {
|
||||||
player.addMute(channel.getName(), datetime + time);
|
player.addMute(channel.getName(), datetime + (time * MILLISECONDS_PER_MINUTE));
|
||||||
String keyword = "minutes";
|
String units = LocalizedMessage.UNITS_PLURAL.toString();
|
||||||
if(time == 1)
|
if (time == 1)
|
||||||
keyword = "minute";
|
units = LocalizedMessage.UNITS_SINGULAR.toString();
|
||||||
sender.sendMessage(LocalizedMessage.MUTE_PLAYER_SENDER_TIME.toString()
|
sender.sendMessage(LocalizedMessage.MUTE_PLAYER_SENDER_TIME.toString()
|
||||||
.replace("{player}", player.getName())
|
.replace("{player}", player.getName())
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
.replace("{channel_color}", channel.getColor())
|
||||||
.replace("{channel_name}", channel.getName())
|
.replace("{channel_name}", channel.getName()).replace("{time}", time + "")
|
||||||
.replace("{time}", time + "")
|
.replace("{units}", units));
|
||||||
.replace("{units}", keyword));
|
if (player.isOnline())
|
||||||
if(player.isOnline())
|
player.getPlayer()
|
||||||
player.getPlayer().sendMessage(LocalizedMessage.MUTE_PLAYER_PLAYER_TIME.toString()
|
.sendMessage(LocalizedMessage.MUTE_PLAYER_PLAYER_TIME.toString()
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
.replace("{channel_color}", channel.getColor())
|
||||||
.replace("{channel_name}", channel.getName())
|
.replace("{channel_name}", channel.getName())
|
||||||
.replace("{time}", time + "")
|
.replace("{time}", time + "").replace("{units}", units));
|
||||||
.replace("{units}", keyword));
|
|
||||||
else
|
else
|
||||||
player.setModified(true);
|
player.setModified(true);
|
||||||
if(channel.getBungee()) {
|
if (channel.getBungee()) {
|
||||||
MineverseChat.getInstance().synchronize(player, true);
|
MineverseChat.getInstance().synchronize(player, true);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
sender.sendMessage(LocalizedMessage.INVALID_TIME.toString()
|
sender.sendMessage(LocalizedMessage.INVALID_TIME.toString().replace("{args}", args[2]));
|
||||||
.replace("{args}", args[2]));
|
} catch (Exception e) {
|
||||||
}
|
sender.sendMessage(LocalizedMessage.INVALID_TIME.toString().replace("{args}", args[2]));
|
||||||
catch(Exception e) {
|
|
||||||
sender.sendMessage(LocalizedMessage.INVALID_TIME.toString()
|
|
||||||
.replace("{args}", args[2]));
|
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
sender.sendMessage(LocalizedMessage.CHANNEL_CANNOT_MUTE.toString()
|
sender.sendMessage(LocalizedMessage.CHANNEL_CANNOT_MUTE.toString()
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
.replace("{channel_color}", channel.getColor()).replace("{channel_name}", channel.getName()));
|
||||||
.replace("{channel_name}", channel.getName()));
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString()
|
sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString().replace("{args}", args[1]));
|
||||||
.replace("{args}", args[1]));
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
|
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
|
||||||
|
@ -17,53 +17,45 @@ public class Unmute extends MineverseCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void execute(CommandSender sender, String command, String[] args) {
|
public void execute(CommandSender sender, String command, String[] args) {
|
||||||
if(sender.hasPermission("venturechat.mute")) {
|
if (sender.hasPermission("venturechat.mute")) {
|
||||||
if(args.length < 2) {
|
if (args.length < 2) {
|
||||||
sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
|
sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString().replace("{command}", "/unmute")
|
||||||
.replace("{command}", "/unmute")
|
|
||||||
.replace("{args}", "[player] [channel]"));
|
.replace("{args}", "[player] [channel]"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
MineverseChatPlayer player = MineverseChatAPI.getMineverseChatPlayer(args[0]);
|
MineverseChatPlayer player = MineverseChatAPI.getMineverseChatPlayer(args[0]);
|
||||||
if(player == null || (!player.isOnline() && !sender.hasPermission("venturechat.mute.offline"))) {
|
if (player == null || (!player.isOnline() && !sender.hasPermission("venturechat.mute.offline"))) {
|
||||||
sender.sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString()
|
sender.sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString().replace("{args}", args[0]));
|
||||||
.replace("{args}", args[0]));
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
for(ChatChannel channel : ChatChannel.getChannels()) {
|
for (ChatChannel channel : ChatChannel.getChannels()) {
|
||||||
if(channel.getName().equalsIgnoreCase(args[1]) || channel.getAlias().equalsIgnoreCase(args[1])) {
|
if (channel.getName().equalsIgnoreCase(args[1]) || channel.getAlias().equalsIgnoreCase(args[1])) {
|
||||||
if(!player.isMuted(channel.getName())) {
|
if (!player.isMuted(channel.getName())) {
|
||||||
sender.sendMessage(LocalizedMessage.PLAYER_NOT_MUTED.toString()
|
sender.sendMessage(LocalizedMessage.PLAYER_NOT_MUTED.toString()
|
||||||
.replace("{player}", player.getName())
|
.replace("{player}", player.getName()).replace("{channel_color}", channel.getColor())
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
|
||||||
.replace("{channel_name}", channel.getName()));
|
.replace("{channel_name}", channel.getName()));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
player.removeMute(channel.getName());
|
player.removeMute(channel.getName());
|
||||||
sender.sendMessage(LocalizedMessage.UNMUTE_PLAYER_SENDER.toString()
|
sender.sendMessage(LocalizedMessage.UNMUTE_PLAYER_SENDER.toString()
|
||||||
.replace("{player}", player.getName())
|
.replace("{player}", player.getName()).replace("{channel_color}", channel.getColor())
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
|
||||||
.replace("{channel_name}", channel.getName()));
|
.replace("{channel_name}", channel.getName()));
|
||||||
if(player.isOnline()) {
|
if (player.isOnline()) {
|
||||||
player.getPlayer().sendMessage(LocalizedMessage.UNMUTE_PLAYER_PLAYER.toString()
|
player.getPlayer().sendMessage(LocalizedMessage.UNMUTE_PLAYER_PLAYER.toString()
|
||||||
.replace("{player}", player.getName())
|
.replace("{player}", player.getName()).replace("{channel_color}", channel.getColor())
|
||||||
.replace("{channel_color}", channel.getColor() + "")
|
|
||||||
.replace("{channel_name}", channel.getName()));
|
.replace("{channel_name}", channel.getName()));
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
player.setModified(true);
|
player.setModified(true);
|
||||||
}
|
}
|
||||||
if(channel.getBungee()) {
|
if (channel.getBungee()) {
|
||||||
MineverseChat.getInstance().synchronize(player, true);
|
MineverseChat.getInstance().synchronize(player, true);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString()
|
sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString().replace("{args}", args[1]));
|
||||||
.replace("{args}", args[1]));
|
|
||||||
return;
|
return;
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
|
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -83,6 +83,8 @@ public enum LocalizedMessage {
|
|||||||
SPY_ON("SpyOn"),
|
SPY_ON("SpyOn"),
|
||||||
UNBLOCK_COMMAND_PLAYER("UnblockCommandPlayer"),
|
UNBLOCK_COMMAND_PLAYER("UnblockCommandPlayer"),
|
||||||
UNBLOCK_COMMAND_SENDER("UnblockCommandSender"),
|
UNBLOCK_COMMAND_SENDER("UnblockCommandSender"),
|
||||||
|
UNITS_PLURAL("UnitsPlural"),
|
||||||
|
UNITS_SINGULAR("UnitsSingular"),
|
||||||
UNMUTE_PLAYER_ALL_PLAYER("UnmutePlayerAllPlayer"),
|
UNMUTE_PLAYER_ALL_PLAYER("UnmutePlayerAllPlayer"),
|
||||||
UNMUTE_PLAYER_ALL_SENDER("UnmutePlayerAllSender"),
|
UNMUTE_PLAYER_ALL_SENDER("UnmutePlayerAllSender"),
|
||||||
UNMUTE_PLAYER_PLAYER("UnmutePlayerPlayer"),
|
UNMUTE_PLAYER_PLAYER("UnmutePlayerPlayer"),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user