Skip to content

Instantly share code, notes, and snippets.

@pschichtel
Created April 20, 2012 22:18
Show Gist options
  • Save pschichtel/2432301 to your computer and use it in GitHub Desktop.
Save pschichtel/2432301 to your computer and use it in GitHub Desktop.
package de.cubeisland.KeepAlive;
import java.util.List;
import java.util.Random;
import java.util.Timer;
import java.util.TimerTask;
import net.minecraft.server.EntityPlayer;
import net.minecraft.server.Packet0KeepAlive;
import net.minecraft.server.ServerConfigurationManager;
import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.plugin.java.JavaPlugin;
public class KeepAlive extends JavaPlugin
{
private Timer timer;
@Override
public void onEnable()
{
timer = new Timer("keepAliveTimer");
timer.schedule(new KeepAliveTimer() , 5 * 1000, 5 * 1000);
}
@Override
public void onDisable()
{
timer.cancel();
timer = null;
}
private class KeepAliveTimer extends TimerTask
{
private final ServerConfigurationManager mojangServer;
private final Random random;
public KeepAliveTimer()
{
this.mojangServer = ((CraftServer)getServer()).getHandle();
this.random = new Random();
}
@Override
public void run()
{
for (EntityPlayer player : (List<EntityPlayer>)this.mojangServer.players)
{
player.netServerHandler.sendPacket(new Packet0KeepAlive(random.nextInt()));
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment