mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-22 05:06:45 +01:00
Merge branch 'master' of github.com:nossr50/vminecraft-plugin
This commit is contained in:
commit
908456cf84
134
other.java
134
other.java
@ -1,134 +0,0 @@
|
||||
//Contains all the java methods for vminecraft
|
||||
public class other {
|
||||
public static other gmsg;
|
||||
public static other gmsg(String msg){
|
||||
for (Player p : etc.getServer().getPlayerList()) {
|
||||
if (p != null) {
|
||||
p.sendMessage(msg);
|
||||
}
|
||||
}
|
||||
return gmsg;
|
||||
}
|
||||
|
||||
public static boolean lengthCheck(String str)
|
||||
{
|
||||
int length = 0;
|
||||
for(int x = 0; x<str.length(); x++)
|
||||
{
|
||||
if("i;,.:|!".indexOf(str.charAt(x)) != -1)
|
||||
{
|
||||
length+=2;
|
||||
}
|
||||
else if("l'".indexOf(str.charAt(x)) != -1)
|
||||
{
|
||||
length+=3;
|
||||
}
|
||||
else if("tI[]".indexOf(str.charAt(x)) != -1)
|
||||
{
|
||||
length+=4;
|
||||
}
|
||||
else if("kf{}<>\"*()".indexOf(str.charAt(x)) != -1)
|
||||
{
|
||||
length+=5;
|
||||
}
|
||||
else if("hequcbrownxjmpsvazydgTHEQUCKBROWNFXJMPSVLAZYDG1234567890#\\/?$%-=_+&".indexOf(str.charAt(x)) != -1)
|
||||
{
|
||||
length+=6;
|
||||
}
|
||||
else if("@~".indexOf(str.charAt(x)) != -1)
|
||||
{
|
||||
length+=7;
|
||||
}
|
||||
else if(str.charAt(x)==' ')
|
||||
{
|
||||
length+=4;
|
||||
}
|
||||
}
|
||||
if(length<=316)
|
||||
{
|
||||
return true;
|
||||
} else { return false; }
|
||||
|
||||
}
|
||||
|
||||
public static String colorChange(char colour)
|
||||
{
|
||||
String color = "";
|
||||
switch(colour)
|
||||
{
|
||||
case '0':
|
||||
color = Colors.Black;
|
||||
break;
|
||||
case '1':
|
||||
color = Colors.Navy;
|
||||
break;
|
||||
case '2':
|
||||
color = Colors.Green;
|
||||
break;
|
||||
case '3':
|
||||
color = Colors.Blue;
|
||||
break;
|
||||
case '4':
|
||||
color = Colors.Red;
|
||||
break;
|
||||
case '5':
|
||||
color = Colors.Purple;
|
||||
break;
|
||||
case '6':
|
||||
color = Colors.Gold;
|
||||
break;
|
||||
case '7':
|
||||
color = Colors.LightGray;
|
||||
break;
|
||||
case '8':
|
||||
color = Colors.Gray;
|
||||
break;
|
||||
case '9':
|
||||
color = Colors.DarkPurple;
|
||||
break;
|
||||
case 'a':
|
||||
color = Colors.LightGreen;
|
||||
break;
|
||||
case 'b':
|
||||
color = Colors.LightBlue;
|
||||
break;
|
||||
case 'c':
|
||||
color = Colors.Rose;
|
||||
break;
|
||||
case 'd':
|
||||
color = Colors.LightPurple;
|
||||
break;
|
||||
case 'e':
|
||||
color = Colors.Yellow;
|
||||
break;
|
||||
case 'f':
|
||||
color = Colors.White;
|
||||
break;
|
||||
case 'A':
|
||||
color = Colors.LightGreen;
|
||||
break;
|
||||
case 'B':
|
||||
color = Colors.LightBlue;
|
||||
break;
|
||||
case 'C':
|
||||
color = Colors.Rose;
|
||||
break;
|
||||
case 'D':
|
||||
color = Colors.LightPurple;
|
||||
break;
|
||||
case 'E':
|
||||
color = Colors.Yellow;
|
||||
break;
|
||||
case 'F':
|
||||
color = Colors.White;
|
||||
break;
|
||||
default:
|
||||
color = Colors.White;
|
||||
break;
|
||||
}
|
||||
|
||||
return color;
|
||||
}
|
||||
|
||||
|
||||
}
|
126
settings.java
126
settings.java
@ -1,126 +0,0 @@
|
||||
import java.io.*;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class settings {
|
||||
private final static Object syncLock = new Object();
|
||||
protected static final Logger log = Logger.getLogger("Minecraft");
|
||||
private static volatile settings instance;
|
||||
static boolean toggle = true;
|
||||
private boolean adminChat = false;
|
||||
private boolean greentext = false;
|
||||
private boolean FFF = false;
|
||||
private boolean quakeColors = false;
|
||||
private boolean cmdFabulous = false;
|
||||
private boolean cmdPromote = false;
|
||||
private boolean cmdDemote = false;
|
||||
private boolean cmdWhoIs = false;
|
||||
private boolean cmdRules = false;
|
||||
private boolean cmdMasstp = false;
|
||||
private boolean cmdTp = false;
|
||||
private boolean cmdTphere = false;
|
||||
private boolean globalmessages = false;
|
||||
private boolean cmdSay = false;
|
||||
private PropertiesFile properties;
|
||||
String file = "vminecraft.properties";
|
||||
public String rules[] = null;
|
||||
|
||||
public void loadSettings()
|
||||
{
|
||||
File theDir = new File("vminecraft.properties");
|
||||
if(!theDir.exists())
|
||||
{
|
||||
String location = "vminecraft.properties";
|
||||
properties = new PropertiesFile("vminecraft.properties");
|
||||
FileWriter writer = null;
|
||||
try {
|
||||
writer = new FileWriter(location);
|
||||
writer.write("#This plugin is modular\r\n");
|
||||
writer.write("#Turn any features you don't want to false and they won't be running\r\n");
|
||||
writer.write("#If you edit this file and save it, then use /reload it will reload the settings\r\n");
|
||||
writer.write("greentext=true\r\n");
|
||||
writer.write("quakeColors=true\r\n");
|
||||
writer.write("cmdTphere=true\r\n");
|
||||
writer.write("cmdFabulous=true\r\n");
|
||||
writer.write("cmdWhoIs=true\r\n");
|
||||
writer.write("cmdPromote=true\r\n");
|
||||
writer.write("cmdDemote=true\r\n");
|
||||
writer.write("cmdMasstp=true\r\n");
|
||||
writer.write("cmdSay=true\r\n");
|
||||
writer.write("cmdTp=true\r\n");
|
||||
writer.write("cmdRules=true\r\n");
|
||||
writer.write("globalmessages=true\r\n");
|
||||
writer.write("FFF=true\r\n");
|
||||
writer.write("adminchat=true\r\n");
|
||||
writer.write("rules=Rules@#1: No griefing@#2: No griefing\r\n");
|
||||
} catch (Exception e) {
|
||||
log.log(Level.SEVERE, "Exception while creating " + location, e);
|
||||
} finally {
|
||||
try {
|
||||
if (writer != null) {
|
||||
writer.close();
|
||||
}
|
||||
} catch (IOException e) {
|
||||
log.log(Level.SEVERE, "Exception while closing writer for " + location, e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
} else {
|
||||
properties = new PropertiesFile("vminecraft.properties");
|
||||
properties.load();
|
||||
}
|
||||
|
||||
try {
|
||||
adminChat = properties.getBoolean("adminchat",true);
|
||||
greentext = properties.getBoolean("greentext",true);
|
||||
FFF = properties.getBoolean("FFF",true);
|
||||
quakeColors = properties.getBoolean("quakeColors",true);
|
||||
cmdFabulous = properties.getBoolean("cmdFabulous",true);
|
||||
cmdPromote = properties.getBoolean("cmdPromote",true);
|
||||
cmdDemote = properties.getBoolean("cmdDemote",true);
|
||||
cmdWhoIs = properties.getBoolean("cmdWhoIs",true);
|
||||
cmdRules = properties.getBoolean("cmdRules",true);
|
||||
cmdTp = properties.getBoolean("cmdTp",true);
|
||||
cmdMasstp = properties.getBoolean("cmdMasstp",true);
|
||||
cmdTphere = properties.getBoolean("cmdTphere",true);
|
||||
globalmessages = properties.getBoolean("globalmessages",true);
|
||||
cmdSay = properties.getBoolean("cmdSay",true);
|
||||
rules = properties.getString("rules", "").split("@");
|
||||
log.log(Level.INFO, "vminecraft plugin successfully loaded");
|
||||
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
log.log(Level.SEVERE, "vminecraft Error: ERROR LOADING PROPERTIES FILE");
|
||||
}
|
||||
}
|
||||
|
||||
public boolean adminchat() {return adminChat;}
|
||||
public boolean greentext() {return greentext;}
|
||||
public boolean FFF() {return FFF;}
|
||||
public boolean quakeColors() {return quakeColors;}
|
||||
public boolean cmdFabulous() {return cmdFabulous;}
|
||||
public boolean cmdPromote() {return cmdPromote;}
|
||||
public boolean cmdDemote() {return cmdDemote;}
|
||||
public boolean cmdWhoIs() {return cmdWhoIs;}
|
||||
public boolean cmdTp() {return cmdTp;}
|
||||
public boolean cmdTphere() {return cmdTphere;}
|
||||
public boolean cmdSay() {return cmdSay;}
|
||||
public boolean cmdRules() {return cmdRules;}
|
||||
public boolean globalmessages() {return globalmessages;}
|
||||
public boolean cmdMasstp() {return cmdMasstp;}
|
||||
|
||||
public static settings getInstance() {
|
||||
if (instance == null) {
|
||||
instance = new settings();
|
||||
}
|
||||
|
||||
return instance;
|
||||
}
|
||||
//Will return the rules
|
||||
public String[] getRules() {
|
||||
return rules;
|
||||
}
|
||||
|
||||
}
|
@ -9,6 +9,7 @@ import java.util.logging.Logger;
|
||||
//=====================================================================
|
||||
public class vMinecraftChat {
|
||||
protected static final Logger log = Logger.getLogger("Minecraft");
|
||||
protected static final int lineLength = 312;
|
||||
|
||||
//=====================================================================
|
||||
//Function: gmsg
|
||||
@ -60,12 +61,12 @@ public class vMinecraftChat {
|
||||
|
||||
//Loop through the words finding their length and increasing
|
||||
//j, the end point for the sub string
|
||||
while(len <= 316 && !split.isEmpty())
|
||||
while(split.get(0) != null && len <= lineLength && !split.isEmpty())
|
||||
{
|
||||
int wordLength = msgLength(split.get(0)) + 4;
|
||||
|
||||
//If a word is too long for a line
|
||||
if(wordLength > 316)
|
||||
if(wordLength > lineLength)
|
||||
{
|
||||
String[] tempArray = wordCut(len, split.remove(0));
|
||||
words.add(tempArray[0]);
|
||||
@ -74,7 +75,7 @@ public class vMinecraftChat {
|
||||
|
||||
//If the word is not too long to fit
|
||||
len += wordLength;
|
||||
if( len < 316)
|
||||
if( len < lineLength)
|
||||
words.add(split.remove(0));
|
||||
}
|
||||
//Merge them and add them to the output array.
|
||||
@ -118,7 +119,7 @@ public class vMinecraftChat {
|
||||
//and their following color codes
|
||||
String[] output = new String[2];
|
||||
int x = 0;
|
||||
while(length < 316 && x < str.length())
|
||||
while(length < lineLength && x < str.length())
|
||||
{
|
||||
int len = charLength(str.charAt(x));
|
||||
if( len > 0)
|
||||
@ -140,15 +141,15 @@ public class vMinecraftChat {
|
||||
//=====================================================================
|
||||
private static int charLength(char x)
|
||||
{
|
||||
if("i;,.:|!".indexOf(x) != -1)
|
||||
if("i.:,;|!".indexOf(x) != -1)
|
||||
return 2;
|
||||
else if("l'".indexOf(x) != -1)
|
||||
return 3;
|
||||
else if("tI[]".indexOf(x) != -1)
|
||||
return 4;
|
||||
else if("kf{}<>\"*()".indexOf(x) != -1)
|
||||
else if("fk{}<>\"*()".indexOf(x) != -1)
|
||||
return 5;
|
||||
else if("hequcbrownxjmpsvazydgTHEQUCKBROWNFXJMPSVLAZYDG1234567890#\\/?$%-=_+&".indexOf(x) != -1)
|
||||
else if("abcdeghjmnopqrsuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ1234567890\\/#?$%-=_+&^".indexOf(x) != -1)
|
||||
return 6;
|
||||
else if("@~".indexOf(x) != -1)
|
||||
return 7;
|
||||
|
@ -44,10 +44,15 @@ public class vMinecraftCommands{
|
||||
cl.register("/a", "adminChatToggle", "toggle admin chat for every message");
|
||||
cl.register("/modify", "modifySplit");
|
||||
cl.register("/me", "me");
|
||||
cl.register("/msg", "message");
|
||||
cl.register("/reply", "reply");
|
||||
cl.registerAlias("/playerlist", "/who");
|
||||
cl.registerAlias("/r", "/reply");
|
||||
cl.registerAlias("/w", "/msg");
|
||||
cl.registerAlias("/wrists", "/suicide");
|
||||
cl.registerAlias("/ci", "/clearinventory");
|
||||
}
|
||||
|
||||
//=====================================================================
|
||||
//Function: me (/me)
|
||||
//Input: Player player: The player using the command
|
||||
@ -61,6 +66,65 @@ public class vMinecraftCommands{
|
||||
vMinecraftChat.emote(player, str);
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
//=====================================================================
|
||||
//Function: message (/msg, /w, /whisper)
|
||||
//Input: Player player: The player using the command
|
||||
//Output: int: Exit Code
|
||||
//Use: Send a message to a player
|
||||
//=====================================================================
|
||||
public static int message(Player player, String[] args)
|
||||
{
|
||||
String msg = etc.combineSplit(1, args, " ");
|
||||
Player toPlayer = etc.getServer().matchPlayer(args[0]);
|
||||
if (args.length < 1) {
|
||||
return EXIT_FAIL;
|
||||
} else if (toPlayer != null) {
|
||||
//Send the message to the targeted player and the sender
|
||||
vMinecraftChat.sendMessage(player, toPlayer,
|
||||
Colors.LightGreen + "[" + Colors.White + "From:"
|
||||
+ vMinecraftChat.getName(player) + Colors.LightGreen + "]" + msg);
|
||||
vMinecraftChat.sendMessage(player, player,
|
||||
Colors.LightGreen + "[" + Colors.White + "To:"
|
||||
+ vMinecraftChat.getName(toPlayer) + Colors.LightGreen + "]" + msg);
|
||||
//Set the last massager for each player
|
||||
vMinecraftUsers.players.findProfile(player).setMessage(toPlayer);
|
||||
vMinecraftUsers.players.findProfile(toPlayer).setMessage(player);
|
||||
} else {
|
||||
vMinecraftChat.sendMessage(player, player, Colors.Red
|
||||
+ "No player by the name of " + args[0] + " could be found.");
|
||||
}
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
//=====================================================================
|
||||
//Function: reply (/r, /reply)
|
||||
//Input: Player player: The player using the command
|
||||
//Output: int: Exit Code
|
||||
//Use: Send a message to a player
|
||||
//=====================================================================
|
||||
public static int reply(Player player, String[] args)
|
||||
{
|
||||
Player toPlayer = vMinecraftUsers.players.findProfile(player).getMessage();
|
||||
if (toPlayer != null) {
|
||||
String msg = etc.combineSplit(1, args, " ");
|
||||
//Send the message to the targeted player and the sender
|
||||
vMinecraftChat.sendMessage(player, toPlayer,
|
||||
Colors.LightGreen + "[" + Colors.White + "From:"
|
||||
+ vMinecraftChat.getName(player) + Colors.LightGreen + "] " + msg);
|
||||
vMinecraftChat.sendMessage(player, player,
|
||||
Colors.LightGreen + "[" + Colors.White + "To:"
|
||||
+ vMinecraftChat.getName(toPlayer) + Colors.LightGreen + "] " + msg);
|
||||
|
||||
//Set the last messager for each player
|
||||
vMinecraftUsers.players.findProfile(player).setMessage(toPlayer);
|
||||
vMinecraftUsers.players.findProfile(toPlayer).setMessage(player);
|
||||
} else {
|
||||
vMinecraftChat.sendMessage(player, player,
|
||||
Colors.Red + "That person is no longer logged in.");
|
||||
}
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
//=====================================================================
|
||||
//Function: adminChatToggle (/a)
|
||||
@ -522,7 +586,7 @@ public class vMinecraftCommands{
|
||||
{
|
||||
//Exploit fix for people giving themselves commands
|
||||
if(args[1].equals("commands"))
|
||||
return EXIT_FAIL;
|
||||
return EXIT_SUCCESS;
|
||||
return EXIT_CONTINUE;
|
||||
}
|
||||
|
||||
|
150
vMinecraftListener.java
Normal file
150
vMinecraftListener.java
Normal file
@ -0,0 +1,150 @@
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
//=====================================================================
|
||||
//Class: vMinecraftListener
|
||||
//Use: The listener to catch incoming chat and commands
|
||||
//Author: nossr50, TrapAlice, cerevisiae
|
||||
//=====================================================================
|
||||
public class vMinecraftListener extends PluginListener {
|
||||
public int damagetype;
|
||||
protected static final Logger log = Logger.getLogger("Minecraft");
|
||||
|
||||
//=====================================================================
|
||||
//Function: disable
|
||||
//Input: None
|
||||
//Output: None
|
||||
//Use: Disables vMinecraft, but why would you want to do that? ;)
|
||||
//=====================================================================
|
||||
public void disable() {
|
||||
log.log(Level.INFO, "vMinecraft disabled");
|
||||
}
|
||||
|
||||
//=====================================================================
|
||||
//Function: onChat
|
||||
//Input: Player player: The player calling the command
|
||||
// String message: The message to color
|
||||
//Output: boolean: If the user has access to the command
|
||||
// and it is enabled
|
||||
//Use: Checks for quote, rage, and colors
|
||||
//=====================================================================
|
||||
public boolean onChat(Player player, String message){
|
||||
|
||||
//Quote (Greentext)
|
||||
if (message.startsWith("@") ||
|
||||
vMinecraftSettings.getInstance().isAdminToggled(player.getName()))
|
||||
return vMinecraftChat.adminChat(player, message);
|
||||
|
||||
else if (message.startsWith(">"))
|
||||
return vMinecraftChat.quote(player, message);
|
||||
|
||||
//Rage (FFF)
|
||||
else if (message.startsWith("FFF"))
|
||||
return vMinecraftChat.rage(player, message);
|
||||
|
||||
//Send through quakeColors otherwise
|
||||
else
|
||||
return vMinecraftChat.quakeColors(player, message);
|
||||
}
|
||||
|
||||
//=====================================================================
|
||||
//Function: onCommand
|
||||
//Input: Player player: The player calling the command
|
||||
// String[] split: The arguments
|
||||
//Output: boolean: If the user has access to the command
|
||||
// and it is enabled
|
||||
//Use: Checks for exploits and runs the commands
|
||||
//=====================================================================
|
||||
public boolean onCommand(Player player, String[] split) {
|
||||
|
||||
//Copy the arguments into their own array.
|
||||
String[] args = new String[split.length - 1];
|
||||
System.arraycopy(split, 1, args, 0, args.length);
|
||||
|
||||
//Return the results of the command
|
||||
int exitCode = vMinecraftCommands.cl.call(split[0], player, args);
|
||||
if(exitCode == 0)
|
||||
return false;
|
||||
else if(exitCode == 1)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
//=====================================================================
|
||||
//Function: onHealthChange
|
||||
//Input: Player player: The player calling the command
|
||||
// int oldValue: The old health value;
|
||||
// int newValue: The new health value
|
||||
//Output: boolean: If the user has access to the command
|
||||
// and it is enabled
|
||||
//Use: Checks for exploits and runs the commands
|
||||
//=====================================================================
|
||||
public boolean onHealthChange(Player player,int oldValue,int newValue){
|
||||
if (vMinecraftSettings.getInstance().isEzModo(player.getName())) {
|
||||
return oldValue > newValue;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public void onLogin(Player player){
|
||||
vMinecraftUsers.addUser(player);
|
||||
}
|
||||
public boolean onDamage(PluginLoader.DamageType type, BaseEntity attacker, BaseEntity defender, int amount) {
|
||||
if(defender.isPlayer()){
|
||||
Player player = (Player)defender;
|
||||
if (attacker.isPlayer()) {
|
||||
Player pAttacker = (Player)attacker;
|
||||
if(player.getHealth() < 1){
|
||||
vMinecraftChat.gmsg(player, pAttacker.getName() + " has murdered " + player.getName());
|
||||
}
|
||||
}
|
||||
if (player.getHealth() < 1 && !attacker.isPlayer()) {
|
||||
if (type == type.CREEPER_EXPLOSION) {
|
||||
damagetype = 1; //Creeper
|
||||
} else if(type == type.FALL){
|
||||
damagetype = 2; //Fall
|
||||
} else if(type == type.FIRE){
|
||||
damagetype = 3; //Fire going to make it share with firetick since its similar
|
||||
} else if (type == type.FIRE_TICK){
|
||||
damagetype = 4; //Firetick
|
||||
} else if (type == type.LAVA){
|
||||
damagetype = 5; //Lava
|
||||
} else if (type == type.WATER){
|
||||
damagetype = 6; //Water
|
||||
}
|
||||
//This should trigger the player death message
|
||||
} else if (player.getHealth() < 1 && attacker.isPlayer()){
|
||||
damagetype = 7; //Player
|
||||
}
|
||||
if(damagetype == 1){
|
||||
vMinecraftChat.gmsg(player,player.getName() + Colors.Red + " was blown to bits by a creeper");
|
||||
damagetype = 0;
|
||||
} else if (damagetype == 2) {
|
||||
vMinecraftChat.gmsg(player,player.getName() + Colors.Red + " fell to death!");
|
||||
damagetype = 0;
|
||||
} else if (damagetype ==3){
|
||||
vMinecraftChat.gmsg(player, player.getName() + Colors.Red + " was incinerated");
|
||||
damagetype = 0;
|
||||
} else if (damagetype == 4){
|
||||
vMinecraftChat.gmsg(player, Colors.Red + " Stop drop and roll, not scream, run, and burn " + player.getName());
|
||||
damagetype = 0;
|
||||
} else if (damagetype == 5){
|
||||
vMinecraftChat.gmsg(player, Colors.Red + player.getName() + " drowned in lava");
|
||||
damagetype = 0;
|
||||
} else if (damagetype == 6){
|
||||
vMinecraftChat.gmsg(player, Colors.Blue + player.getName() + " should've attended that swimming class");
|
||||
damagetype = 0;
|
||||
} else if (damagetype == 7){
|
||||
Player pAttacker = (Player)attacker;
|
||||
vMinecraftChat.gmsg(player, pAttacker.getName() + " has murdered " + player.getName());
|
||||
damagetype = 0;
|
||||
}
|
||||
else {
|
||||
vMinecraftChat.gmsg(player, Colors.Gray + player.getName() + " " + vMinecraftSettings.randomDeathMsg());
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
@ -11,7 +11,7 @@ public class vMinecraftUsers {
|
||||
private PropertiesFile properties;
|
||||
String location = "vminecraftusers.txt";
|
||||
|
||||
ArrayList<PlayerList> players = new ArrayList<PlayerList>();
|
||||
public static PlayerList players = new PlayerList();
|
||||
|
||||
|
||||
public void loadUsers(){
|
||||
@ -143,11 +143,11 @@ class PlayerList
|
||||
//Output: PlayerProfile: The profile of the specified player
|
||||
//Use: Get the profile for the specified player
|
||||
//=====================================================================
|
||||
private PlayerProfile findProfile(Player player)
|
||||
public PlayerProfile findProfile(Player player)
|
||||
{
|
||||
for(PlayerProfile ply : players)
|
||||
{
|
||||
if(ply.getPlayer().equals(player))
|
||||
if(ply.isPlayer(player))
|
||||
return ply;
|
||||
}
|
||||
return null;
|
||||
@ -161,10 +161,11 @@ class PlayerList
|
||||
class PlayerProfile
|
||||
{
|
||||
protected final Logger log = Logger.getLogger("Minecraft");
|
||||
private Player playerName;
|
||||
private String nickName;
|
||||
private String tag;
|
||||
private String suffix;
|
||||
private String playerName,
|
||||
lastMessage,
|
||||
nickName,
|
||||
tag,
|
||||
suffix;
|
||||
private ArrayList<Player> ignoreList;
|
||||
private commandList aliasList;
|
||||
|
||||
@ -181,13 +182,14 @@ class PlayerList
|
||||
//=====================================================================
|
||||
public PlayerProfile(Player player)
|
||||
{
|
||||
//Declare things
|
||||
ignoreList = new ArrayList<Player>();
|
||||
aliasList = new commandList();
|
||||
//Declare things
|
||||
nickName = new String();
|
||||
tag = new String();
|
||||
suffix = new String();
|
||||
ignoreList = new ArrayList<Player>();
|
||||
aliasList = new commandList();
|
||||
String location = "vminecraftusers.txt";
|
||||
|
||||
//Try to apply what we can
|
||||
try {
|
||||
Scanner scanner = new Scanner(new File(location));
|
||||
@ -197,43 +199,55 @@ class PlayerList
|
||||
continue;
|
||||
}
|
||||
String[] split = line.split(":");
|
||||
if (!split[0].equalsIgnoreCase(player.getName())) {
|
||||
continue;
|
||||
}
|
||||
nickName = (split[1].split(",").toString());
|
||||
|
||||
if (split.length >= 4) {
|
||||
tag = (split[3]);
|
||||
}
|
||||
|
||||
//Add all the ignored people to the player's ignore list
|
||||
if (split.length >= 5) {
|
||||
for(String name : split[4].split(","))
|
||||
ignoreList.add(etc.getServer().getPlayer(name));
|
||||
}
|
||||
if (split.length >= 6) {
|
||||
//Loop through all the aliases
|
||||
for(String alias : split[5].split(","))
|
||||
{
|
||||
//Break apart the two parts of the alias
|
||||
String[] parts = alias.split("@");
|
||||
if(parts.length > 1)
|
||||
{
|
||||
//Get the arguments for the alias if there are any
|
||||
String[] command = parts[1].split(" ");
|
||||
String[] args = null;
|
||||
if(command.length > 1)
|
||||
System.arraycopy(command, 1, args, 0, command.length - 2);
|
||||
|
||||
//Register the alias to the player's aliasList
|
||||
aliasList.registerAlias(parts[0], command[0], args);
|
||||
}
|
||||
}
|
||||
|
||||
//If the player name is equal to the name in the list
|
||||
if (split.length > 0 && split[0].equalsIgnoreCase(player.getName())) {
|
||||
|
||||
//Get the tag from the 1st split
|
||||
nickName = (split[1].split(",").toString());
|
||||
|
||||
//Get the tag from the 2nd split
|
||||
suffix = split[2];
|
||||
|
||||
//Get the tag from the 3rd split
|
||||
if (split.length >= 4) {
|
||||
tag = (split[3]);
|
||||
}
|
||||
|
||||
//Add all the ignored people to the player's ignore list
|
||||
if (split.length >= 5) {
|
||||
for(String name : split[4].split(","))
|
||||
ignoreList.add(etc.getServer().getPlayer(name));
|
||||
}
|
||||
|
||||
//Get the alias list, from the 5th split
|
||||
if (split.length >= 6) {
|
||||
//Loop through all the aliases
|
||||
for(String alias : split[5].split(","))
|
||||
{
|
||||
//Break apart the two parts of the alias
|
||||
String[] parts = alias.split("@");
|
||||
if(parts.length > 1)
|
||||
{
|
||||
//Get the arguments for the alias if there are any
|
||||
String[] command = parts[1].split(" ");
|
||||
String[] args = null;
|
||||
if(command.length > 1)
|
||||
System.arraycopy(command, 1, args,
|
||||
0, command.length - 2);
|
||||
|
||||
//Register the alias to the player's aliasList
|
||||
aliasList.registerAlias(parts[0], command[0], args);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
scanner.close();
|
||||
} catch (Exception e) {
|
||||
log.log(Level.SEVERE, "Exception while reading " + location + " (Are you sure you formatted it correctly?)", e);
|
||||
log.log(Level.SEVERE, "Exception while reading "
|
||||
+ location + " (Are you sure you formatted it correctly?)", e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -255,7 +269,7 @@ class PlayerList
|
||||
continue;
|
||||
}
|
||||
String[] split = line.split(":");
|
||||
if (!split[0].equalsIgnoreCase(playerName.toString())) {
|
||||
if (!split[0].equalsIgnoreCase(playerName)) {
|
||||
continue;
|
||||
}
|
||||
bw.write(playerName + ":" + nickName + ":" + suffix + ":" + tag + ":" + ignoreList + ":" + aliasList);
|
||||
@ -267,14 +281,16 @@ class PlayerList
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//=====================================================================
|
||||
//Function: getPlayer
|
||||
//Function: isPlayer
|
||||
//Input: None
|
||||
//Output: Player: The player this profile belongs to
|
||||
//Use: Finds if the specified player is in the ignore list
|
||||
//Use: Finds if this profile belongs to a specified player
|
||||
//=====================================================================
|
||||
public Player getPlayer(){return playerName;}
|
||||
public boolean isPlayer(Player player)
|
||||
{
|
||||
return player.getName().equals(playerName);
|
||||
}
|
||||
|
||||
//=====================================================================
|
||||
//Function: isIgnored
|
||||
@ -369,6 +385,28 @@ class PlayerList
|
||||
//Use: Gets a player tag
|
||||
//=====================================================================
|
||||
public String getTag() { return tag; }
|
||||
|
||||
//=====================================================================
|
||||
//Function: setMessage
|
||||
//Input: String newName: The name of the player they last messaged
|
||||
// or recieved a message from.
|
||||
//Output: None
|
||||
//Use: Sets a player tag
|
||||
//=====================================================================
|
||||
public void setMessage(Player newName){ lastMessage = newName.getName(); }
|
||||
|
||||
//=====================================================================
|
||||
//Function: getMessage
|
||||
//Input: None
|
||||
//Output: String: The player name
|
||||
//Use: Gets the name of the player they last messaged or recieved
|
||||
// a message from.
|
||||
//=====================================================================
|
||||
public Player getMessage()
|
||||
{
|
||||
|
||||
return etc.getServer().matchPlayer(lastMessage);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,418 +0,0 @@
|
||||
//Vminecraft plugin by nossr50 & TrapAlice
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
public class vminecraftListener extends PluginListener {
|
||||
protected static final Logger log = Logger.getLogger("Minecraft");
|
||||
public void disable() {
|
||||
log.log(Level.INFO, "vminecraft disabled");
|
||||
}
|
||||
private ArrayList<String> ezmodo = new ArrayList<String>(); //An array of players currently in ezmodo
|
||||
|
||||
public void enable() {
|
||||
settings.getInstance().loadSettings(); //Load the settings files
|
||||
log.log(Level.INFO, "vminecraft enabled");
|
||||
}
|
||||
public void onPlayerMove () {
|
||||
if (ezmodo.contains(player.getName())){
|
||||
if (player.getHealth() < 30)
|
||||
{
|
||||
player.setHealth(30);
|
||||
}
|
||||
}
|
||||
}
|
||||
public boolean onChat(Player player, String message){
|
||||
String temp2 = "<" + player.getColor() + player.getName() + Colors.White +"> "; //Copies the formatting of id.java
|
||||
String adminchat = Colors.DarkPurple + "{" + player.getColor() + player.getName() + Colors.DarkPurple +"}" + Colors.White + " "; //Special formatting for adminchat
|
||||
String message2 = ""; //Used for greentext and FFF
|
||||
String check = temp2+message; //Calculates how long your message will be including your name in the equation, this prevents minecraft clients from crashing when a color code is inserted after a linebreak
|
||||
if (settings.getInstance().adminchat()&&message.startsWith("@") && (player.isAdmin() || player.canUseCommand("/adminchat"))) {
|
||||
for (Player p : etc.getServer().getPlayerList()) {
|
||||
String blaa = "";
|
||||
if (p != null) {
|
||||
if (p.isAdmin() || (p.canUseCommand("/adminchat"))) {
|
||||
for ( int x = 1; x< message.length(); x++) {
|
||||
blaa+=message.charAt(x);
|
||||
}
|
||||
if (p.isAdmin() || (p.canUseCommand("/adminchat"))){
|
||||
if (p != null) {
|
||||
p.sendMessage(adminchat+blaa);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
log.log(Level.INFO, "@"+temp2+message); //So you can read adminchat from the server console
|
||||
return true;
|
||||
|
||||
}
|
||||
//Greentext
|
||||
if (settings.getInstance().greentext()&&message.startsWith(">")) {
|
||||
log.log(Level.INFO, "<"+player.getName()+"> "+message);
|
||||
message = Colors.LightGreen + message;
|
||||
message2 = temp2 + message;
|
||||
other.gmsg(message2);
|
||||
return true;
|
||||
}
|
||||
//FFF
|
||||
if (settings.getInstance().FFF()&&message.startsWith("FFF")) {
|
||||
log.log(Level.INFO, "<"+player.getName()+"> "+message);
|
||||
message = Colors.Red + message;
|
||||
message2 = temp2 + message;
|
||||
other.gmsg(message2);
|
||||
return true;
|
||||
}
|
||||
//QuakeColors
|
||||
if(settings.getInstance().quakeColors()&&message.length()>2 && other.lengthCheck(check)) {
|
||||
String temp = "";
|
||||
for(int x = 0; x< message.length(); x++)
|
||||
{
|
||||
if(message.charAt(x)=='^'&&x!=message.length()-1)
|
||||
{
|
||||
temp+=other.colorChange(message.charAt(x+1));
|
||||
x+=1;
|
||||
}
|
||||
else{
|
||||
temp+=message.charAt(x);
|
||||
}
|
||||
}
|
||||
log.log(Level.INFO, "<"+player.getName()+"> "+message);
|
||||
message = temp2 + temp + " ";
|
||||
for (Player p : etc.getServer().getPlayerList()) {
|
||||
if (p != null) {
|
||||
other.gmsg(message);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean onCommand(Player player, String[] split) {
|
||||
if(!player.canUseCommand(split[0])) {
|
||||
return false;
|
||||
}
|
||||
if(settings.getInstance().cmdMasstp() && split[0].equalsIgnoreCase("/masstp")) {
|
||||
for (Player p : etc.getServer().getPlayerList()) {
|
||||
if (!p.hasControlOver(player)) {
|
||||
p.teleportTo(player);
|
||||
}
|
||||
|
||||
}
|
||||
player.sendMessage(Colors.Blue+"Summoning successful.");
|
||||
}
|
||||
//ezmodo
|
||||
if (split[0].equals("/ezmodo")) {
|
||||
if (ezmodo.contains(player.getName())) {
|
||||
player.sendMessage(Colors.Red + "ezmodo = off");
|
||||
ezmodo.remove(ezmodo.indexOf(player.getName()));
|
||||
} else {
|
||||
player.sendMessage(Colors.LightBlue + "eh- maji? ezmodo!?");
|
||||
player.sendMessage(Colors.Rose + "kimo-i");
|
||||
player.sendMessage(Colors.LightBlue + "Easy Mode ga yurusareru no wa shougakusei made dayo ne");
|
||||
player.sendMessage(Colors.Red + "**Laughter**");
|
||||
ezmodo.add(player.getName());
|
||||
player.setHealth(30);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
//Replacement for /tp
|
||||
if(settings.getInstance().cmdTp() && split[0].equalsIgnoreCase("/tp")) {
|
||||
{
|
||||
if (split.length < 2) {
|
||||
player.sendMessage(Colors.Rose + "Correct usage is: /tp [player]");
|
||||
return true;
|
||||
}
|
||||
|
||||
Player playerTarget = etc.getServer().matchPlayer(split[1]);
|
||||
|
||||
if (player.getName().equalsIgnoreCase(split[1])) {
|
||||
player.sendMessage(Colors.Rose + "You're already here!");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!player.hasControlOver(playerTarget)) {
|
||||
player.sendMessage(Colors.Red + "That player has higher permissions than you.");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (playerTarget != null) {
|
||||
log.log(Level.INFO, player.getName() + " teleported to " + playerTarget.getName());
|
||||
player.teleportTo(playerTarget);
|
||||
return true;
|
||||
} else {
|
||||
player.sendMessage(Colors.Rose + "Can't find user " + split[1] + ".");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
//Replacement for /tphere
|
||||
if (settings.getInstance().cmdTphere() && (split[0].equalsIgnoreCase("/tphere") || split[0].equalsIgnoreCase("/s"))) {
|
||||
if (split.length < 2) {
|
||||
player.sendMessage(Colors.Rose + "Correct usage is: /tphere [player]");
|
||||
return true;
|
||||
}
|
||||
|
||||
Player playerTarget = etc.getServer().matchPlayer(split[1]);
|
||||
|
||||
if (!player.hasControlOver(playerTarget)) {
|
||||
player.sendMessage(Colors.Red + "That player has higher permissions than you.");
|
||||
return true;
|
||||
}
|
||||
if (player.getName().equalsIgnoreCase(split[1])) {
|
||||
player.sendMessage(Colors.Rose + "Wow look at that! You teleported yourself to yourself!");
|
||||
return true;
|
||||
}
|
||||
|
||||
if (playerTarget != null) {
|
||||
log.log(Level.INFO, player.getName() + " teleported " + player.getName() + " to their self.");
|
||||
playerTarget.teleportTo(player);
|
||||
} else {
|
||||
player.sendMessage(Colors.Rose + "Can't find user " + split[1] + ".");
|
||||
}
|
||||
}
|
||||
//Global messages that should only parse when a command can be successful
|
||||
if(settings.getInstance().globalmessages() && split[0].equalsIgnoreCase("/kick")) {
|
||||
Player playerTarget = etc.getServer().matchPlayer(split[1]);
|
||||
if (playerTarget != null && !playerTarget.hasControlOver(player)) {
|
||||
other.gmsg(player.getColor()+player.getName()+Colors.Blue+" has kicked "+Colors.Red+playerTarget.getColor()+playerTarget.getName());
|
||||
}
|
||||
}
|
||||
if(settings.getInstance().globalmessages() && split[0].equalsIgnoreCase("/ban")) {
|
||||
Player playerTarget = etc.getServer().matchPlayer(split[1]);
|
||||
if (playerTarget != null && !playerTarget.hasControlOver(player)) {
|
||||
other.gmsg(player.getColor()+player.getName()+Colors.Blue+" has banned "+Colors.Red+playerTarget.getColor()+playerTarget.getName());
|
||||
}
|
||||
}
|
||||
if(settings.getInstance().globalmessages() && split[0].equalsIgnoreCase("/ipban")) {
|
||||
Player playerTarget = etc.getServer().matchPlayer(split[1]);
|
||||
if (playerTarget != null && !playerTarget.hasControlOver(player)) {
|
||||
other.gmsg(player.getColor()+player.getName()+Colors.Blue+" has IP banned "+Colors.Red+playerTarget.getColor()+playerTarget.getName());
|
||||
}
|
||||
}
|
||||
if(settings.getInstance().globalmessages() && split[0].equalsIgnoreCase("/time")) {
|
||||
if (split.length <= 2) {
|
||||
other.gmsg(Colors.Blue+"Time changes thanks to "+player.getColor()+player.getName());
|
||||
return false;
|
||||
}
|
||||
}
|
||||
//Should only reload vminecraft settings if the player is able to use /reload
|
||||
if(split[0].equalsIgnoreCase("/reload") && player.canUseCommand("/reload")) {
|
||||
settings.getInstance().loadSettings();
|
||||
return false;
|
||||
}
|
||||
//Rules
|
||||
if(settings.getInstance().cmdRules() && split[0].equalsIgnoreCase("/rules")) {
|
||||
for (String str : settings.getInstance().getRules()) {
|
||||
player.sendMessage(Colors.Blue+str);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
//Fabulous
|
||||
if(split[0].equalsIgnoreCase("/fabulous") && settings.getInstance().cmdFabulous()) {
|
||||
if (split.length == 1) {return false;}
|
||||
String temp = "";
|
||||
String str = "";
|
||||
str = etc.combineSplit(1, split, " ");
|
||||
String temp2 = "<" + player.getName() + "> "+str;
|
||||
String[] rainbow = new String[] {Colors.Red, Colors.Rose, Colors.Yellow, Colors.Green, Colors.Blue, Colors.LightPurple, Colors.Purple};
|
||||
int counter=0;
|
||||
if(other.lengthCheck(temp2))
|
||||
{
|
||||
log.log(Level.INFO, player.getName()+" fabulously said \""+ str+"\"");
|
||||
for(int x=0; x<str.length(); x++)
|
||||
{
|
||||
temp+=rainbow[counter]+str.charAt(x);
|
||||
counter++;
|
||||
if(str.charAt(x)==' ') { counter--;}
|
||||
if(counter==-1){counter = 6; }
|
||||
if(counter==7){counter = 0; }
|
||||
}
|
||||
str = temp+" ";
|
||||
String message = "<" + player.getColor() + player.getName() + Colors.White + "> " + str;
|
||||
|
||||
other.gmsg(message);
|
||||
return true;
|
||||
} else {
|
||||
player.sendMessage(Colors.Rose + "Message is too long");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
/*
|
||||
//Promote
|
||||
if (settings.getInstance().cmdPromote() && split[0].equalsIgnoreCase("/promote")) {
|
||||
if(split.length != 2)
|
||||
{
|
||||
player.sendMessage(Colors.Rose + "Usage is /promote [Player]");
|
||||
|
||||
}
|
||||
|
||||
Player playerTarget = null;
|
||||
if(split.length==2){
|
||||
for( Player p : etc.getServer().getPlayerList())
|
||||
{
|
||||
if (p.getName().equalsIgnoreCase(split[1]))
|
||||
{
|
||||
playerTarget = p;
|
||||
}
|
||||
}
|
||||
|
||||
if( playerTarget!=null)
|
||||
{
|
||||
String playerTargetGroup[] = playerTarget.getGroups();
|
||||
String playerGroup[] = player.getGroups();
|
||||
player.sendMessage("Debug data:");
|
||||
player.sendMessage("PlayerTarget: "+playerTargetGroup[0]);
|
||||
player.sendMessage("Player: "+playerGroup[0]);
|
||||
if(playerTargetGroup[0].equals("admins"))
|
||||
{
|
||||
player.sendMessage(Colors.Rose + "You can not promote " + split[1] + " any higher.");
|
||||
}
|
||||
if(playerTargetGroup[0].equals("mods") && (playerGroup[0].equals("owner")))
|
||||
{
|
||||
playerTarget.setGroups(ranks.Admins);
|
||||
etc.getInstance().getDataSource().modifyPlayer(playerTarget);
|
||||
String message = Colors.Yellow + split[1] + " was promoted to" + Colors.Rose + " Admin";
|
||||
other.gmsg(message);
|
||||
}
|
||||
else if (playerTargetGroup[0].equals("trusted") && (playerGroup[0].equals("admins") || playerGroup[0].equals("owner")))
|
||||
{
|
||||
playerTarget.setGroups(ranks.Mods);
|
||||
playerTargetGroup[0]="Mods";
|
||||
etc.getInstance().getDataSource().modifyPlayer(playerTarget);
|
||||
String message = Colors.Yellow + split[1] + " was promoted to" + Colors.DarkPurple + " Mod";
|
||||
other.gmsg(message);
|
||||
}
|
||||
else if (playerTargetGroup[0].equals("default") && (playerGroup[0].equals("mods") || playerGroup[0].equals("admins") || player.isInGroup("owner")))
|
||||
{
|
||||
playerTarget.setGroups(ranks.Trusted);
|
||||
etc.getInstance().getDataSource().modifyPlayer(playerTarget);
|
||||
String message = Colors.Yellow + split[1] + " was promoted to" + Colors.LightGreen + " Trusted";
|
||||
other.gmsg(message);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else{
|
||||
player.sendMessage(Colors.Rose + "Player not found");
|
||||
}
|
||||
log.log(Level.INFO, "Command used by " + player + " " + split[0] +" "+split[1]+" ");
|
||||
}
|
||||
}
|
||||
//Demote
|
||||
if (settings.getInstance().cmdPromote() && split[0].equalsIgnoreCase("/promote"))
|
||||
{
|
||||
if(split.length != 2)
|
||||
{
|
||||
player.sendMessage(Colors.Rose + "Usage is /demote [Player]");
|
||||
}
|
||||
|
||||
Player playerTarget = null;
|
||||
|
||||
for( Player p : etc.getServer().getPlayerList())
|
||||
{
|
||||
if (p.getName().equalsIgnoreCase(split[1]))
|
||||
{
|
||||
playerTarget = p;
|
||||
}
|
||||
}
|
||||
|
||||
if( playerTarget!=null)
|
||||
{
|
||||
if(playerTarget.isInGroup("admins") && (player.isInGroup("superadmins")))
|
||||
{
|
||||
playerTarget.setGroups(ranks.Mods);
|
||||
etc.getInstance().getDataSource().modifyPlayer(playerTarget);
|
||||
String message = Colors.Yellow + split[1] + " was demoted to" + Colors.DarkPurple + " Mod";
|
||||
other.gmsg(message);
|
||||
}
|
||||
if(playerTarget.isInGroup("mods") && (player.isInGroup("admins") || player.isInGroup("superadmins")))
|
||||
{
|
||||
playerTarget.setGroups(ranks.Trusted);
|
||||
etc.getInstance().getDataSource().modifyPlayer(playerTarget);
|
||||
String message = Colors.Yellow + split[1] + " was demoted to" + Colors.LightGreen + " Trusted";
|
||||
other.gmsg(message);
|
||||
}
|
||||
else if (playerTarget.isInGroup("trusted") && (player.isInGroup("mods") || player.isInGroup("superadmins") || player.isInGroup("admins")))
|
||||
{
|
||||
playerTarget.setGroups(ranks.Def);
|
||||
etc.getInstance().getDataSource().modifyPlayer(playerTarget);
|
||||
String message = Colors.Yellow + split[1] + " was demoted to" + Colors.White + " Default";
|
||||
other.gmsg(message);
|
||||
}
|
||||
else if (playerTarget.isInGroup("default") && (player.isInGroup("mods") || player.isInGroup("admins") || player.isInGroup("superadmins")))
|
||||
{
|
||||
player.sendMessage(Colors.Rose + "You can not demote " + split[1] + " any lower.");
|
||||
}
|
||||
}
|
||||
else{
|
||||
player.sendMessage(Colors.Rose + "Player not found");
|
||||
}
|
||||
log.log(Level.INFO, "Command used by " + player + " " + split[0] +" "+split[1]+" ");
|
||||
return true;
|
||||
}
|
||||
*
|
||||
*/
|
||||
//Whois will display info about a player
|
||||
if (settings.getInstance().cmdWhoIs() && split[0].equalsIgnoreCase("/whois")) {
|
||||
if (split.length < 2) {
|
||||
player.sendMessage(Colors.Rose + "Usage is /whois [player]");
|
||||
}
|
||||
String admin ="";
|
||||
String ignore ="";
|
||||
String IP = "";
|
||||
Player playerTarget = null;
|
||||
for( Player p : etc.getServer().getPlayerList())
|
||||
{
|
||||
if (p.getName().equalsIgnoreCase(split[1]))
|
||||
{
|
||||
playerTarget = p;
|
||||
}
|
||||
}
|
||||
if (playerTarget != null){
|
||||
|
||||
IP = playerTarget.getIP();
|
||||
if (playerTarget.canIgnoreRestrictions()) {
|
||||
ignore = "True";
|
||||
} else {
|
||||
ignore ="False";
|
||||
}
|
||||
if (playerTarget.canIgnoreRestrictions()) {
|
||||
admin = "True";
|
||||
} else {
|
||||
admin = "False";
|
||||
}
|
||||
|
||||
|
||||
//Displaying the information
|
||||
player.sendMessage(Colors.Blue + "Whois results for "+split[1]+".");
|
||||
//Group
|
||||
for (String group : playerTarget.getGroups()) {
|
||||
player.sendMessage(Colors.Blue + "Groups: "+group);
|
||||
}
|
||||
//Admin
|
||||
player.sendMessage(Colors.Blue+"Admin: "+admin);
|
||||
//IP
|
||||
player.sendMessage(Colors.Blue+"IP: "+IP);
|
||||
//Restrictions
|
||||
player.sendMessage(Colors.Blue+"Can ignore restrictions: "+ignore);
|
||||
|
||||
|
||||
} else {
|
||||
player.sendMessage(Colors.Rose+"Player not found.");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
//Say
|
||||
if (settings.getInstance().cmdSay() && (split[0].equalsIgnoreCase("/say"))) {
|
||||
String sayan;
|
||||
sayan = etc.combineSplit(1, split, " ");
|
||||
other.gmsg(Colors.Yellow+sayan);
|
||||
}
|
||||
//Should this be included?
|
||||
else {
|
||||
return false;
|
||||
}
|
||||
//Needs to be included
|
||||
return true;
|
||||
}
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
/**
|
||||
* vminecraft Plugin
|
||||
* @author Robert, TrapAlice
|
||||
*/
|
||||
//This is how we setup the listener
|
||||
public class vminecraftPlugin extends Plugin {
|
||||
static final vminecraftListener listener = new vminecraftListener();
|
||||
|
||||
public void enable() {
|
||||
//If we had commands we would add them here.
|
||||
etc.getInstance().addCommand("/masstp", "Teleports those with lower permissions to you");
|
||||
etc.getInstance().addCommand("/rules", "Displays the rules");
|
||||
etc.getInstance().addCommand("/fabulous", "makes text SUUUPER");
|
||||
etc.getInstance().addCommand("/whois", "/whois [user]");
|
||||
settings.getInstance().loadSettings(); //Hopefully this will make the plugin load right away
|
||||
}
|
||||
|
||||
public void disable() {
|
||||
//And remove the commands here.
|
||||
}
|
||||
|
||||
public void initialize() {
|
||||
//Here we add the hook we're going to use. In this case it's the arm swing event.
|
||||
etc.getLoader().addListener(PluginLoader.Hook.CHAT, listener, this, PluginListener.Priority.MEDIUM);
|
||||
etc.getLoader().addListener(PluginLoader.Hook.COMMAND, listener, this, PluginListener.Priority.HIGH);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user