Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- public class SimpleListener extends PluginListener {
- private ArrayList<String> godmodeEnabled = new ArrayList<String>();
- final private Server _server;
- public SimpleListener(Server server)
- {
- _server = server;
- }
- private void printAIHelp(Player player){
- player.sendMessage("/ai mob - total # of mobs in current chunk.");
- player.sendMessage("/ai animal - total # of animals in current chunk.");
- player.sendMessage("/ai all - total # of mobs and animals in current chunk.");
- player.sendMessage("/ai killmob - kill all mobs in current chunk.");
- player.sendMessage("/ai killanimal - kill all animals in current chunk.");
- player.sendMessage("/ai killall - kill all things in current chunk.");
- }
- public void onLogin(Player player)
- {
- if(player.isAdmin())
- {
- if(!godmodeEnabled.contains(player.getName()))
- {
- player.setHealth(30);
- player.sendMessage("God Mode Enabled.");
- godmodeEnabled.add(player.getName());
- }
- else if(godmodeEnabled.contains(player.getName()))
- {
- player.sendMessage("God Mode Enabled.");
- }
- }
- }
- public void onDisconnect(Player player)
- {
- if (godmodeEnabled.contains(player.getName()))
- {
- godmodeEnabled.remove(godmodeEnabled.indexOf(player.getName()));
- }
- }
- public boolean onHealthChange(Player player, int oldValue, int newValue)
- {
- if (player.getHealth() != 30 && godmodeEnabled.contains(player.getName()))
- {
- player.setHealth(30);
- }
- return false;
- }
- public boolean onDamage(PluginLoader.DamageType type, BaseEntity attacker, BaseEntity defender, int amount)
- {
- if(defender.isPlayer())
- {
- Player player = defender.getPlayer();
- if(godmodeEnabled.contains(player.getName()) && type == PluginLoader.DamageType.FALL)
- {
- return true;
- }
- if(godmodeEnabled.contains(player.getName()) && type == PluginLoader.DamageType.EXPLOSION)
- {
- return true;
- }
- if(godmodeEnabled.contains(player.getName()) && type == PluginLoader.DamageType.FIRE_TICK)
- {
- return true;
- }
- if(godmodeEnabled.contains(player.getName()) && type == PluginLoader.DamageType.FIRE)
- {
- return true;
- }
- if(godmodeEnabled.contains(player.getName()) && type == PluginLoader.DamageType.CREEPER_EXPLOSION)
- {
- return true;
- }
- if(godmodeEnabled.contains(player.getName()) && type == PluginLoader.DamageType.WATER)
- {
- return true;
- }
- if(godmodeEnabled.contains(player.getName()) && type == PluginLoader.DamageType.LAVA)
- {
- return true;
- }
- }
- return false;
- }
- @Override
- public boolean onCommand(Player player, String[] split) {
- if (split[0].equalsIgnoreCase("/ai")) {
- if (split.length == 1){
- printAIHelp(player);
- return true;
- }
- if (split.length == 2){
- if ( split[1].equalsIgnoreCase("mob")){
- player.sendMessage(Colors.Yellow + "There are " + Colors.Rose + _server.getMobList().size() + Colors.Yellow + " mobs.");
- }
- else if ( split[1].equalsIgnoreCase("animal")){
- player.sendMessage(Colors.Yellow + "There are " + Colors.Rose + _server.getAnimalList().size() + Colors.Yellow + " animals.");
- }
- else if ( split[1].equalsIgnoreCase("all")){
- int mobAll = _server.getAnimalList().size() + _server.getMobList().size();
- player.sendMessage(Colors.Yellow + "There are " + Colors.Rose + mobAll + Colors.Yellow + " mobs and animals.");
- }
- else if ( split[1].equalsIgnoreCase("killmob")){
- int killed = 0;
- for (Mob mob : _server.getMobList()) {
- if (mob.getHealth() > 0) {
- mob.setHealth(0);
- killed++;
- }
- }
- _server.messageAll(Colors.Red + player.getName() + Colors.Yellow + " has slain: " + Colors.Red + killed + Colors.Yellow + " mobs.");
- return true;
- }
- else if ( split[1].equalsIgnoreCase("killanimal")){
- int killed = 0;
- for (Mob mob : _server.getAnimalList()) {
- if (mob.getHealth() > 0) {
- mob.setHealth(0);
- killed++;
- }
- }
- _server.messageAll(Colors.Red + player.getName() + Colors.Yellow + " has slain: " + Colors.Red + killed + Colors.Yellow + " animals.");
- return true;
- }
- else if ( split[1].equalsIgnoreCase("killall")){
- int killed = 0;
- int killed2 = 0;
- int killed3 = 0;
- for (Mob mob : _server.getMobList()) {
- if (mob.getHealth() > 0) {
- mob.setHealth(0);
- killed++;
- }
- }
- for (Mob mob : _server.getAnimalList()) {
- if (mob.getHealth() > 0) {
- mob.setHealth(0);
- killed2++;
- }
- }
- killed3 = killed + killed2;
- _server.messageAll(Colors.Red + player.getName() + Colors.Yellow + " has slain: " + Colors.Red + killed3 + Colors.Yellow + " mobs and animals.");
- return true;
- }
- else {
- return false;
- }
- }
- }
- else if (split[0].equalsIgnoreCase("/god")) {
- if (split.length == 1){
- if (godmodeEnabled.contains(player.getName()))
- {
- player.sendMessage("You are vulnerable!");
- godmodeEnabled.remove(godmodeEnabled.indexOf(player.getName()));
- return true;
- }
- else
- {
- player.sendMessage("You are now invincible!");
- godmodeEnabled.add(player.getName());
- player.setHealth(30);
- return true;
- }
- }
- else {
- Player targetPlayer = etc.getServer().matchPlayer(split[1]);
- if(targetPlayer==null)
- {
- player.sendMessage("The user "+split[1]+" does not exist or is not currently logged in.");
- return true;
- }
- else if (godmodeEnabled.contains(targetPlayer.getName()))
- {
- player.sendMessage(targetPlayer.getName() + " is no longer invincible.");
- godmodeEnabled.remove(godmodeEnabled.indexOf(targetPlayer.getName()));
- targetPlayer.sendMessage(player.getName() + " has made you vulnerable.");
- return true;
- }
- else
- {
- player.sendMessage(targetPlayer.getName() + " has been given godmode.");
- godmodeEnabled.add(targetPlayer.getName());
- targetPlayer.sendMessage("Admin:, " + player.getName() + " has given you godmode!");
- return true;
- }
- }
- }
- return false;
- }
- }
Add Comment
Please, Sign In to add comment