Skip to content

Instantly share code, notes, and snippets.

@dkolb
Created February 6, 2016 19:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dkolb/bb13b52486943c017c46 to your computer and use it in GitHub Desktop.
Save dkolb/bb13b52486943c017c46 to your computer and use it in GitHub Desktop.
Optional In the Wild
package com.krinchan.minecraft.spongediamondfinder.listeners;
import org.slf4j.Logger;
import org.spongepowered.api.entity.living.player.Player;
import org.spongepowered.api.event.Listener;
import org.spongepowered.api.event.block.ChangeBlockEvent;
/**
* Created by david on 2/6/16.
*/
public class StoneBreakingListener {
Logger logger;
public StoneBreakingListener(Logger logger) {
this.logger = logger;
}
@Listener
public void handle(ChangeBlockEvent.Break event) throws Exception {
String playerString = event.getCause().first(Player.class) //Returns Optional<Player>
.map(player -> player.getName() + "/" + player.getUniqueId().toString())
.orElse("UNKNOWN");
String blockName = event.getTransactions().get(0).getFinal().getState().getType().getName();
logger.info(String.format("Player %s broke %s",
playerString, blockName));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment