package NET.worlds.scape; import java.io.IOException; public class PassthroughBumpCalc extends BumpCalc { private static Object classCookie = new Object(); @Override public void detectBump(BumpEventTemp b, WObject owner) { Transform xfrm = owner.getObjectToWorldMatrix(); Point3Temp start = xfrm.getPosition(); Point3Temp d = owner.getPlaneExtent().vectorTimes(xfrm); xfrm.recycle(); b.hitPlane(owner, start, d); } @Override public void saveState(Saver s) throws IOException { s.saveVersion(0, classCookie); super.saveState(s); } @Override public void restoreState(Restorer r) throws IOException, TooNewException { switch (r.restoreVersion(classCookie)) { case 0: super.restoreState(r); return; default: throw new TooNewException(); } } }