Skip to content

Instantly share code, notes, and snippets.

@EdGruberman
EdGruberman / gist:2200086
Created March 25, 2012 21:45
How can the HashMap be guaranteed to be updated before the next update() is processed?
class Monitor implements Observer {
Map<Object, String> recordings = new HashMap<Object, String>();
@Override
void update(Observable o, Object arg) {
this.schedule(arg);
}
void schedule(Object arg) {
@EdGruberman
EdGruberman / SimpleSave
Created July 9, 2012 04:38 — forked from anonymous/gist:3074136
SimpleSave
package me.sonarbeserk.simplesave;
import java.util.List;
import java.util.concurrent.TimeUnit;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.plugin.java.JavaPlugin;
package me.shadycraft.mentalist14;
import java.util.concurrent.TimeUnit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
import org.bukkit.plugin.java.JavaPlugin;
Thank you, Kevin Sawicki! http://www.eclipse.org/forums/index.php/t/367805/
@EdGruberman
EdGruberman / Main.java
Created July 25, 2012 19:18
Main.java
@Override
public void saveDefaultConfig() {
this.extractConfig("config.yml", false);
}
private void extractConfig(final String resource, final boolean replace) {
final Charset source = Charset.forName("UTF-8");
final Charset target = Charset.defaultCharset();
if (target.equals(source)) {
super.saveResource(resource, replace);
protected static float restrict(final float value, final float min, final float max) {
if (value < min) return min;
if (value > max) return max;
return value;
}
@EdGruberman
EdGruberman / gist:3272677
Created August 6, 2012 09:33
Custom AsyncPlayerChatEvent extends error
2012-08-06 02:22:26 [SEVERE] Could not pass event AsyncFormattedChat to PlayerActivity
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:324)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:459)
at edgruberman.bukkit.messageformatter.Formatter.onPlayerChat(Formatter.java:48)
at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
@EdGruberman
EdGruberman / tremor77.java
Created August 12, 2012 01:53
tremor77.java
@Override
public boolean onCommand(final CommandSender sender, final Command cmd, final String commandLabel, final String[] args ) {
sender.sendMessage(ChatColor.RED + "[PwnFilter] Reloading rules.txt");
this.getLogger().info("[PwnFilter] rules.txt reloaded by " + sender.getName());
//reload the rules
rules.clear();
patterns.clear();
loadRules();
@EdGruberman
EdGruberman / gist:4164512
Created November 28, 2012 21:10
69 duuuuuude
2012-11-28 14:10:03 [INFO] Durability: 69
2012-11-28 14:10:03 [SEVERE] Could not pass event PlayerInteractEvent to SimpleTest v3.0.0a21
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:341)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462)
at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:177)
at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:114)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:555)
@EdGruberman
EdGruberman / Inventory.java
Created January 5, 2013 02:56
Inventory.java
package edgruberman.bukkit.simpletest;
import org.bukkit.Bukkit;
import org.bukkit.block.BlockState;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.inventory.InventoryCloseEvent;
import org.bukkit.plugin.Plugin;