From 8d4c1623e026f0e9eef8f76298873764f50337c1 Mon Sep 17 00:00:00 2001 From: headhunter45 Date: Fri, 17 Feb 2012 12:14:48 -0800 Subject: [PATCH] v0.4.4 --- Metropolis/README.txt | 7 +++- .../plugins/metropolis/MetropolisPlugin.java | 18 +++++--- .../PlayerJoinListener.java} | 18 +++++--- .../eventlisteners/PlayerLoginListener.java | 42 +++++++++++++++++++ Metropolis/src/plugin.yml | 2 +- 5 files changed, 75 insertions(+), 12 deletions(-) rename Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/{LoginListener.java => eventlisteners/PlayerJoinListener.java} (55%) create mode 100644 Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/eventlisteners/PlayerLoginListener.java diff --git a/Metropolis/README.txt b/Metropolis/README.txt index 6a7e4c3..b0620a4 100644 --- a/Metropolis/README.txt +++ b/Metropolis/README.txt @@ -15,8 +15,13 @@ CONFIG: Edit the config.yml file. You can set the height to clear above roads, the road width, the plot size (incluing half the road width on either side), the road material, and the level at which the road is generated. Changelog: +v0.4.4 + Added a welcome message telling players where their home is. + Switched from PlayerLoginEvent to PlayerJoinEvent +v0.4.3 + Removed call to saveconfig on plugin unload. v0.4.2 - made city region refresh on server restart + Made city region refresh on server restart. v0.4.1 v0.4 v0.3 diff --git a/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/MetropolisPlugin.java b/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/MetropolisPlugin.java index 4e01e23..a9e8367 100644 --- a/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/MetropolisPlugin.java +++ b/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/MetropolisPlugin.java @@ -17,6 +17,8 @@ import org.bukkit.plugin.java.JavaPlugin; import com.majinnaibu.bukkit.plugins.metropolis.commands.MetropolisFlagResetCommand; import com.majinnaibu.bukkit.plugins.metropolis.commands.MetropolisHomeGenerateCommand; import com.majinnaibu.bukkit.plugins.metropolis.commands.MetropolisHomeListCommand; +import com.majinnaibu.bukkit.plugins.metropolis.eventlisteners.PlayerJoinListener; +import com.majinnaibu.bukkit.plugins.metropolis.eventlisteners.PlayerLoginListener; import com.sk89q.worldedit.BlockVector; import com.sk89q.worldguard.bukkit.WorldGuardPlugin; import com.sk89q.worldguard.domains.DefaultDomain; @@ -37,7 +39,8 @@ public class MetropolisPlugin extends JavaPlugin { private List _occupiedHomes; - private LoginListener _loginListener = null; + private PlayerLoginListener _playerLoginListener = null; + private PlayerJoinListener _playerJoinListener = null; int size = 1; @@ -52,7 +55,6 @@ public class MetropolisPlugin extends JavaPlugin { @Override public void onDisable() { log.info(String.format("%s disabled", pdf.getFullName())); - saveConfig(); } @Override @@ -109,8 +111,12 @@ public class MetropolisPlugin extends JavaPlugin { fillOccupiedHomes(); resizeCityRegion(); - if(_loginListener == null){ - _loginListener = new LoginListener(this); + if(_playerLoginListener == null){ + _playerLoginListener = new PlayerLoginListener(this); + } + + if(_playerJoinListener == null){ + _playerJoinListener = new PlayerJoinListener(this); } log.info(String.format("%s enabled", pdf.getFullName())); @@ -168,7 +174,7 @@ public class MetropolisPlugin extends JavaPlugin { Collections.sort(_occupiedHomes); } - PlayerHome getPlayerHome(Player player) { + public PlayerHome getPlayerHome(Player player) { PlayerHome home = null; String regionName = "h_" + player.getName(); @@ -179,6 +185,8 @@ public class MetropolisPlugin extends JavaPlugin { if(homeRegion == null){ log.info(String.format("Creating home for player %s", player.getName())); home = generateHome(player.getName()); + }else{ + home = new PlayerHome(homeRegion); } return home; diff --git a/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/LoginListener.java b/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/eventlisteners/PlayerJoinListener.java similarity index 55% rename from Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/LoginListener.java rename to Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/eventlisteners/PlayerJoinListener.java index 885f1fc..06f799f 100644 --- a/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/LoginListener.java +++ b/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/eventlisteners/PlayerJoinListener.java @@ -1,27 +1,35 @@ -package com.majinnaibu.bukkit.plugins.metropolis; +package com.majinnaibu.bukkit.plugins.metropolis.eventlisteners; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.EventPriority; import org.bukkit.event.Listener; -import org.bukkit.event.player.PlayerLoginEvent; +import org.bukkit.event.player.PlayerJoinEvent; -public class LoginListener implements Listener { +import com.majinnaibu.bukkit.plugins.metropolis.Cuboid; +import com.majinnaibu.bukkit.plugins.metropolis.MetropolisPlugin; +import com.majinnaibu.bukkit.plugins.metropolis.PlayerHome; + +public class PlayerJoinListener implements Listener { private MetropolisPlugin _plugin = null; - public LoginListener(MetropolisPlugin plugin){ + public PlayerJoinListener(MetropolisPlugin plugin){ _plugin = plugin; plugin.getServer().getPluginManager().registerEvents(this, plugin); } @EventHandler(priority=EventPriority.MONITOR) - public void onPlayerLogin(PlayerLoginEvent event){ + public void onPlayerJoin(PlayerJoinEvent event){ Player player = event.getPlayer(); if(player == null){ return; } PlayerHome home = _plugin.getPlayerHome(player); + if(home==null){MetropolisPlugin.log.info("home is null");} + else if(home.getCuboid() == null){MetropolisPlugin.log.info("home.getCuboid() is null");} + else if(home.getCuboid().getVolume() == 0){MetropolisPlugin.log.info("home.getCuboid().getVolume() is 0");} + if(home == null || home.getCuboid() == null || home.getCuboid().getVolume() == 0){ MetropolisPlugin.log.info(String.format("Metropolis: Unable to get or create home for player %s", player.getName())); }else{ diff --git a/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/eventlisteners/PlayerLoginListener.java b/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/eventlisteners/PlayerLoginListener.java new file mode 100644 index 0000000..a4d289a --- /dev/null +++ b/Metropolis/src/com/majinnaibu/bukkit/plugins/metropolis/eventlisteners/PlayerLoginListener.java @@ -0,0 +1,42 @@ +package com.majinnaibu.bukkit.plugins.metropolis.eventlisteners; + +//import org.bukkit.entity.Player; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.player.PlayerLoginEvent; + +//import com.majinnaibu.bukkit.plugins.metropolis.Cuboid; +import com.majinnaibu.bukkit.plugins.metropolis.MetropolisPlugin; +//import com.majinnaibu.bukkit.plugins.metropolis.PlayerHome; + +public class PlayerLoginListener implements Listener { + //private MetropolisPlugin _plugin = null; + + public PlayerLoginListener(MetropolisPlugin plugin){ + //_plugin = plugin; + //plugin.getServer().getPluginManager().registerEvents(this, plugin); + } + + @EventHandler(priority=EventPriority.MONITOR) + public void onPlayerLogin(PlayerLoginEvent event){ + /* + Player player = event.getPlayer(); + if(player == null){ + return; + } + + PlayerHome home = _plugin.getPlayerHome(player); + if(home==null){MetropolisPlugin.log.info("home is null");} + else if(home.getCuboid() == null){MetropolisPlugin.log.info("home.getCuboid() is null");} + else if(home.getCuboid().getVolume() == 0){MetropolisPlugin.log.info("home.getCuboid().getVolume() is 0");} + + if(home == null || home.getCuboid() == null || home.getCuboid().getVolume() == 0){ + MetropolisPlugin.log.info(String.format("Metropolis: Unable to get or create home for player %s", player.getName())); + }else{ + Cuboid cuboid = home.getCuboid(); + player.sendMessage(String.format("Metropolis: Welcome %s your home is between (%d, %d, %d) and (%d, %d, %d)", player.getName(), cuboid.getMinX(), cuboid.getMinY(), cuboid.getMinZ(), cuboid.getMaxX(), cuboid.getMaxY(), cuboid.getMaxZ())); + } + */ + } +} diff --git a/Metropolis/src/plugin.yml b/Metropolis/src/plugin.yml index 07da87c..eb7f840 100644 --- a/Metropolis/src/plugin.yml +++ b/Metropolis/src/plugin.yml @@ -2,7 +2,7 @@ name: Metropolis main: com.majinnaibu.bukkit.plugins.metropolis.MetropolisPlugin depend: [WorldGuard] softdepend: [WorldEdit] -version: 0.4.2 +version: 0.4.3 database: false commands: metropolis-home-generate: