Skip to content

Instantly share code, notes, and snippets.

@SpaceManiac
SpaceManiac / gist:2024110
Created March 12, 2012 19:22
Damage Listener
package me.hunterboerner.war;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.entity.Player;
import org.bukkit.entity.Entity;
public class DamageListener implements Listener {
#include <cstdio>
#include <vector>
#include <utility>
#include <allegro.h>
using namespace std;
volatile bool close_button_pressed = false;
void close_button_callback() { close_button_pressed = true; }
volatile int ticks = 0;
@SpaceManiac
SpaceManiac / testjars.py
Created June 29, 2012 02:57
Tests a list of jars for compatibility with a given Bukkit or CraftBukkit jar
#!/usr/bin/python
# testjars.py
#
# Scans .jar files passed on command line for compatability with a given
# Bukkit or CraftBukkit jar.
#
# Requires Solum (https://github.com/TkTech/Solum)
import sys, urllib2, re
from glob import glob
@SpaceManiac
SpaceManiac / WIItemStack.java
Created August 15, 2012 01:12
Java Serialization Stuff for TkTech
package me.drayshak.WorldInventories;
import java.io.Serializable;
/* Trimmed to relevant parts only */
public class WIItemStack implements Serializable {
private static final long serialVersionUID = -6239771143618730223L;
private int type = 0;
private int amount = 0;
private WIMaterialData data = null;
private short durability = 0;
@SpaceManiac
SpaceManiac / utils.py
Created December 27, 2012 11:33
Utils.py from Profile Master for use in formats
# utils.py
# common utilities for profile master format files
from construct import *
from PyQt4 import QtCore, QtGui
import functools
# qt utilities
class Dialog(QtGui.QDialog):
@SpaceManiac
SpaceManiac / champs.py
Created July 23, 2013 00:27
League of Legends game log analyzer
# -*- coding: utf-8 -*-
# champs.py
from __future__ import print_function
import os, os.path
import sys
import re
# log processing
@SpaceManiac
SpaceManiac / varint.java
Last active January 3, 2016 17:49
VarInt reading/writing from Glowstone
/**
* The bit flag indicating a varint continues.
*/
public static final byte VARINT_MORE_FLAG = (byte) (1 << 7);
/**
* Read a protobuf varint from the buffer.
* @param buf The buffer.
* @return The value read.
*/
@SpaceManiac
SpaceManiac / bytebuf-leaks.log
Created January 31, 2014 07:47
Trace of ByteBuf leaks in flow-networking in Glowstone usage.
"C:\Program Files\Java\jdk1.7.0_25\bin\java" -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:52963,suspend=y,server=n -Dio.netty.leakDetectionLevel=advanced -javaagent:C:\Users\Tad\.IdeaIC13\system\groovyHotSwap\gragent.jar -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.7.0_25\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\jce.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\jfxrt.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\resources.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\rt.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\jaccess
@SpaceManiac
SpaceManiac / ParticleTestPlugin.java
Created February 6, 2014 03:26
Testing materials for Bukkit Particles PR
package particletest;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.Particle;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.material.MaterialData;
@SpaceManiac
SpaceManiac / BlockPlacementHandler.java
Created February 28, 2014 00:29
Comment on BlockPlacementHandler regarding double-packet behavior
/**
* The client sends this packet for the following cases:
* Right click air:
* - Send direction=-1 packet for any non-null item
* Right click block:
* - Send packet with all values filled
* - If client DOES NOT expect a block placement to result:
* - Send direction=-1 packet (unless item is null)
*
* Client will expect a block placement to result from blocks and from