Skip to content

Commit

Permalink
freeze food level for limbo players
Browse files Browse the repository at this point in the history
  • Loading branch information
imaohw committed Sep 25, 2011
1 parent 68fde77 commit 3a692b2
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/uk/org/whoami/authme/AuthMe.java
Expand Up @@ -123,6 +123,8 @@ public void onEnable() {
Priority.Lowest, this);
pm.registerEvent(Event.Type.BLOCK_BREAK, blockListener,
Priority.Lowest, this);
pm.registerEvent(Event.Type.FOOD_LEVEL_CHANGE, entityListener,
Priority.Low, this);
pm.registerEvent(Event.Type.ENTITY_DAMAGE, entityListener,
Priority.Lowest, this);
pm.registerEvent(Event.Type.ENTITY_TARGET, entityListener,
Expand Down
28 changes: 28 additions & 0 deletions src/uk/org/whoami/authme/listener/AuthMeEntityListener.java
Expand Up @@ -21,6 +21,7 @@
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.entity.EntityListener;
import org.bukkit.event.entity.EntityTargetEvent;
import org.bukkit.event.entity.FoodLevelChangeEvent;
import uk.org.whoami.authme.cache.auth.PlayerCache;
import uk.org.whoami.authme.citizens.CitizensCommunicator;
import uk.org.whoami.authme.datasource.DataSource;
Expand Down Expand Up @@ -91,4 +92,31 @@ public void onEntityTarget(EntityTargetEvent event) {

event.setCancelled(true);
}

@Override
public void onFoodLevelChange(FoodLevelChangeEvent event) {
if (event.isCancelled()) {
return;
}

Entity entity = event.getEntity();
if (!(entity instanceof Player)) {
return;
}

Player player = (Player) entity;
String name = player.getName().toLowerCase();

if (PlayerCache.getInstance().isAuthenticated(name)) {
return;
}

if (!data.isAuthAvailable(name)) {
if (!settings.isForcedRegistrationEnabled()) {
return;
}
}

event.setCancelled(true);
}
}

0 comments on commit 3a692b2

Please sign in to comment.