Commands - Fixed whois

Listener - Added random death messages
Plugin - Added hooks for damage
Settings - Added random death messages

Signed-off-by: nossr50 <nossr50@gmail.com>
This commit is contained in:
nossr50 2010-11-29 18:51:30 -08:00
parent 11dc691220
commit 02ecadbf3c
4 changed files with 23 additions and 8 deletions

View File

@ -265,7 +265,7 @@ public class vminecraftCommands{
player.sendMessage(Colors.Blue + "Groups: " + group);
//Admin
player.sendMessage(Colors.Blue+"Admin: " +
String.valueOf(playerTarget.canIgnoreRestrictions()));
String.valueOf(playerTarget.isAdmin()));
//IP
player.sendMessage(Colors.Blue+"IP: " + playerTarget.getIP());
//Restrictions

View File

@ -83,9 +83,15 @@ public class vminecraftListener extends PluginListener {
}
else if (vminecraftSettings.getInstance().globalmessages() && player.getHealth() < 1) {
vminecraftChat.gmsg(Colors.Gray + player.getName() + " is no more");
vminecraftChat.gmsg(Colors.Gray + player.getName() + " " + vminecraftSettings.randomDeathMsg());
}
return false;
}
/** Not working yet, I posted the issue to hMod on github though
public boolean onDamage(DamageType type, BaseEntity attacker, BaseEntity defender, int amount) {
return false;
}
**/
}

View File

@ -23,6 +23,7 @@ public class vminecraftPlugin extends Plugin {
etc.getLoader().addListener(PluginLoader.Hook.CHAT, listener, this, PluginListener.Priority.MEDIUM);
etc.getLoader().addListener(PluginLoader.Hook.COMMAND, listener, this, PluginListener.Priority.HIGH);
etc.getLoader().addListener(PluginLoader.Hook.IGNITE, listener, this, PluginListener.Priority.HIGH);
etc.getLoader().addListener(PluginLoader.Hook.DAMAGE, listener, this, PluginListener.Priority.MEDIUM);
etc.getLoader().addListener(PluginLoader.Hook.EXPLODE, listener, this, PluginListener.Priority.HIGH);
if(etc.getInstance().isHealthEnabled()){
etc.getLoader().addListener(PluginLoader.Hook.HEALTH_CHANGE, listener, this, PluginListener.Priority.MEDIUM);

View File

@ -2,6 +2,7 @@ import java.io.*;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.Random;
//=====================================================================
//Class: vminecraftSettings
//Use: Controls the settings for vminecraft
@ -11,7 +12,6 @@ public class vminecraftSettings {
//private final static Object syncLock = new Object();
protected static final Logger log = Logger.getLogger("Minecraft");
private static volatile vminecraftSettings instance;
//Invulnerability List
//The feature settings
@ -34,7 +34,6 @@ public class vminecraftSettings {
stopFire = false,
stopTnt = false,
cmdEzModo = false;
//An array of players currently in ezmodo
static ArrayList<String> ezModo = new ArrayList<String>();
//The max health for ezModo
@ -43,6 +42,7 @@ public class vminecraftSettings {
private PropertiesFile properties;
String file = "vminecraft.properties";
public String rules[] = new String[0];
public static String deathMessages[] = new String[0];
//=====================================================================
//Function: loadSettings
@ -85,6 +85,8 @@ public class vminecraftSettings {
writer.write("stopFire=false");
writer.write("stopTnt=false");
writer.write("rules=Rules@#1: No griefing@#2: No griefing\r\n");
writer.write("#Death messages, seperate them by comma. All death messages start with the player name and a space.");
writer.write("deathMessages=is no more,died horribly,went peacefully");
} catch (Exception e) {
log.log(Level.SEVERE, "Exception while creating " + location, e);
} finally {
@ -126,7 +128,7 @@ public class vminecraftSettings {
stopFire = properties.getBoolean("stopFire",true);
stopTnt = properties.getBoolean("stopTNT",true);
rules = properties.getString("rules", "").split("@");
deathMessages = properties.getString("deathmessages", "").split(",");
String[] tempEz = properties.getString("ezModo").split(",");
ezModo = new ArrayList<String>();
for(int i = 0; i < tempEz.length; i++)
@ -170,13 +172,19 @@ public class vminecraftSettings {
public boolean stopFire() {return stopFire;}
public boolean stopTnt() {return stopTnt;}
//EzModo functions
//EzModo methods
public boolean isEzModo(String playerName) {return ezModo.contains(playerName);}
public void removeEzModo(String playerName) {ezModo.remove(ezModo.indexOf(playerName));}
public void addEzModo(String playerName) {ezModo.add(playerName);}
public int ezModoHealth() {return ezHealth;}
public String ezModoList() {return ezModo.toString();}
//Random death message method
public static String randomDeathMsg() {
if (deathMessages == null) {
return "died";
}
return deathMessages[ (int) (Math.random() * deathMessages.length)];
}
//=====================================================================
//Function: getInstance