mirror of
https://github.com/Multiverse/Multiverse-Core.git
synced 2025-01-03 23:07:55 +01:00
Add new messaging stuff
This commit is contained in:
parent
fa3e0d6186
commit
43fcbc9af9
@ -59,13 +59,14 @@ public class MVPlayerSession {
|
||||
*
|
||||
* @param msg
|
||||
*/
|
||||
public void message(String msg) {
|
||||
Long time = (new Date()).getTime();
|
||||
if ((time - this.messageLast) > this.config.getInt("messagecooldown", 2000)) {
|
||||
this.player.sendMessage(msg);
|
||||
this.messageLast = time;
|
||||
}
|
||||
}
|
||||
// See new class MVMessaging
|
||||
// public void message(String msg) {
|
||||
// Long time = (new Date()).getTime();
|
||||
// if ((time - this.messageLast) > this.config.getInt("messagecooldown", 2000)) {
|
||||
// this.player.sendMessage(msg);
|
||||
// this.messageLast = time;
|
||||
// }
|
||||
// }
|
||||
|
||||
// Commented out bed code, i'll get rid of it soon.
|
||||
// --FF
|
||||
|
@ -244,12 +244,12 @@ public class MVTeleport {
|
||||
}
|
||||
if (e instanceof Player) {
|
||||
Player p = (Player) e;
|
||||
p.sendMessage("No safe locations found!");
|
||||
this.plugin.getMessaging().sendMessage(p, "No safe locations found!");
|
||||
this.plugin.log(Level.FINER, "No safe location found for " + p.getName());
|
||||
}
|
||||
else if (e.getPassenger() instanceof Player) {
|
||||
Player p = (Player) e.getPassenger();
|
||||
p.sendMessage("No safe locations found!");
|
||||
this.plugin.getMessaging().sendMessage(p, "No safe locations found!");
|
||||
this.plugin.log(Level.FINER, "No safe location found for " + p.getName());
|
||||
}
|
||||
this.plugin.log(Level.FINE, "Sorry champ, you're basically trying to teleport into a minefield. I should just kill you now.");
|
||||
@ -321,12 +321,12 @@ public class MVTeleport {
|
||||
}
|
||||
if (e instanceof Player) {
|
||||
Player p = (Player) e;
|
||||
p.sendMessage("No safe locations found!");
|
||||
this.plugin.getMessaging().sendMessage(p, "No safe locations found!");
|
||||
this.plugin.log(Level.FINER, "No safe location found for " + p.getName());
|
||||
}
|
||||
else if (e.getPassenger() instanceof Player) {
|
||||
Player p = (Player) e.getPassenger();
|
||||
p.sendMessage("No safe locations found!");
|
||||
this.plugin.getMessaging().sendMessage(p, "No safe locations found!");
|
||||
this.plugin.log(Level.FINER, "No safe location found for " + p.getName());
|
||||
}
|
||||
this.plugin.log(Level.FINE, "Sorry champ, you're basically trying to teleport into a minefield. I should just kill you now.");
|
||||
|
@ -21,6 +21,7 @@ import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import com.onarandombox.MultiverseCore.listeners.*;
|
||||
import com.onarandombox.utils.*;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World.Environment;
|
||||
@ -64,15 +65,6 @@ import com.onarandombox.MultiverseCore.commands.WhoCommand;
|
||||
import com.onarandombox.MultiverseCore.configuration.DefaultConfig;
|
||||
import com.onarandombox.MultiverseCore.configuration.MVConfigMigrator;
|
||||
import com.onarandombox.MultiverseCore.configuration.MVCoreConfigMigrator;
|
||||
import com.onarandombox.utils.CannonDestination;
|
||||
import com.onarandombox.utils.DebugLog;
|
||||
import com.onarandombox.utils.DestinationFactory;
|
||||
import com.onarandombox.utils.ExactDestination;
|
||||
import com.onarandombox.utils.PlayerDestination;
|
||||
import com.onarandombox.utils.PurgeWorlds;
|
||||
import com.onarandombox.utils.UpdateChecker;
|
||||
import com.onarandombox.utils.WorldDestination;
|
||||
import com.onarandombox.utils.WorldManager;
|
||||
import com.pneumaticraft.commandhandler.CommandHandler;
|
||||
|
||||
public class MultiverseCore extends JavaPlugin implements LoggablePlugin {
|
||||
@ -116,6 +108,7 @@ public class MultiverseCore extends JavaPlugin implements LoggablePlugin {
|
||||
private SpoutInterface spoutInterface = null;
|
||||
private double allpayversion = 3;
|
||||
private double chversion = 1;
|
||||
private MVMessaging messaging;
|
||||
|
||||
@Override
|
||||
public void onLoad() {
|
||||
@ -279,6 +272,13 @@ public class MultiverseCore extends JavaPlugin implements LoggablePlugin {
|
||||
|
||||
// Setup the Debug option, we'll default to false because this option will not be in the default config.
|
||||
GlobalDebug = this.configMV.getInt("debug", 0);
|
||||
GlobalDebug = this.configMV.getInt("debug", 0);
|
||||
this.messaging = new MVMessaging(this);
|
||||
this.messaging.setCooldown(this.configMV.getInt("messagecooldown", 5000));
|
||||
}
|
||||
|
||||
public MVMessaging getMessaging(){
|
||||
return this.messaging;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -408,7 +408,7 @@ public class MultiverseCore extends JavaPlugin implements LoggablePlugin {
|
||||
*/
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String commandLabel, String[] args) {
|
||||
if (this.isEnabled() == false) {
|
||||
if (!this.isEnabled()) {
|
||||
sender.sendMessage("This plugin is Disabled!");
|
||||
return true;
|
||||
}
|
||||
|
66
src/main/java/com/onarandombox/utils/MVMessaging.java
Normal file
66
src/main/java/com/onarandombox/utils/MVMessaging.java
Normal file
@ -0,0 +1,66 @@
|
||||
/******************************************************************************
|
||||
* Multiverse 2 Copyright (c) the Multiverse Team 2011. *
|
||||
* Multiverse 2 is licensed under the BSD License. *
|
||||
* For more information please check the README.md file included *
|
||||
* with this project. *
|
||||
******************************************************************************/
|
||||
|
||||
package com.onarandombox.utils;
|
||||
|
||||
import com.onarandombox.MultiverseCore.MultiverseCore;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* Multiverse 2
|
||||
*
|
||||
* @author fernferret
|
||||
*/
|
||||
public class MVMessaging {
|
||||
private MultiverseCore plugin;
|
||||
private Map<String, Date> sentList;
|
||||
private int cooldown = 0;
|
||||
|
||||
public MVMessaging(MultiverseCore plugin) {
|
||||
this.plugin = plugin;
|
||||
this.sentList = new HashMap<String, Date>();
|
||||
}
|
||||
|
||||
public void setCooldown(int milliseconds) {
|
||||
this.cooldown = milliseconds;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sends a message to the specified sender if the cooldown has passed.
|
||||
* @param sender The person/console to send the message to.
|
||||
* @param message The message to send.
|
||||
* @param ignoreCooldown If true this message will always be sent. Useful for things like menus
|
||||
* @return true if the message was sent, false if not.
|
||||
*/
|
||||
public boolean sendMessage(CommandSender sender, String message, boolean ignoreCooldown) {
|
||||
if(!(sender instanceof Player) || ignoreCooldown) {
|
||||
sender.sendMessage(message);
|
||||
return true;
|
||||
}
|
||||
if(!this.sentList.containsKey(sender.getName())) {
|
||||
sender.sendMessage(message);
|
||||
this.sentList.put(sender.getName(), new Date());
|
||||
return true;
|
||||
} else {
|
||||
if(this.sentList.get(sender.getName()).after(new Date((new Date()).getTime() + this.cooldown))){
|
||||
sender.sendMessage(message);
|
||||
this.sentList.put(sender.getName(), new Date());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean sendMessage(CommandSender sender, String message) {
|
||||
return this.sendMessage(sender, message, true);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user