public final void method190( int i, Class11 aclass11[], int j, WorldController worldController, byte abyte0[]) { label0: { Stream stream = new Stream(abyte0); int l = -1; do { int i1 = stream.method422(); if (i1 == 0) break label0; l += i1; int j1 = 0; do { int k1 = stream.method422(); if (k1 == 0) break; j1 += k1 - 1; int l1 = j1 & 0x3f; int i2 = j1 >> 6 & 0x3f; int j2 = j1 >> 12; int k2 = stream.readUnsignedByte(); int l2 = k2 >> 2; int i3 = k2 & 3; int j3 = i2 + i; int k3 = l1 + j; if (j3 > 0 && k3 > 0 && j3 < 103 && k3 < 103) { int l3 = j2; if ((aByteArrayArrayArray149[1][j3][k3] & 2) == 2) l3--; Class11 class11 = null; if (l3 >= 0) class11 = aclass11[l3]; method175(k3, worldController, class11, l2, j2, j3, l, i3); } } while (true); } while (true); } }
public final void method183( Class11 aclass11[], WorldController worldController, int i, int j, int k, int l, byte abyte0[], int i1, int j1, int k1) { label0: { Stream stream = new Stream(abyte0); int l1 = -1; do { int i2 = stream.method422(); if (i2 == 0) break label0; l1 += i2; int j2 = 0; do { int k2 = stream.method422(); if (k2 == 0) break; j2 += k2 - 1; int l2 = j2 & 0x3f; int i3 = j2 >> 6 & 0x3f; int j3 = j2 >> 12; int k3 = stream.readUnsignedByte(); int l3 = k3 >> 2; int i4 = k3 & 3; if (j3 == i && i3 >= i1 && i3 < i1 + 8 && l2 >= k && l2 < k + 8) { ObjectDef class46 = ObjectDef.forID(l1); int j4 = j + Class4.method157(j1, class46.anInt761, i3 & 7, l2 & 7, class46.anInt744); int k4 = k1 + Class4.method158(l2 & 7, class46.anInt761, j1, class46.anInt744, i3 & 7); if (j4 > 0 && k4 > 0 && j4 < 103 && k4 < 103) { int l4 = j3; if ((aByteArrayArrayArray149[1][j4][k4] & 2) == 2) l4--; Class11 class11 = null; if (l4 >= 0) class11 = aclass11[l4]; method175(k4, worldController, class11, l3, l, j4, l1, i4 + j1 & 3); } } } while (true); } while (true); } }
public static void method173(Stream stream, OnDemandFetcher class42_sub1) { label0: { int i = -1; do { int j = stream.method422(); if (j == 0) break label0; i += j; ObjectDef class46 = ObjectDef.forID(i); class46.method574(class42_sub1); do { int k = stream.method422(); if (k == 0) break; stream.readUnsignedByte(); } while (true); } while (true); } }
public static boolean method189( int i, byte[] is, int i_250_) // xxx bad method, decompiled with JODE { boolean bool = true; Stream stream = new Stream(is); int i_252_ = -1; for (; ; ) { int i_253_ = stream.method422(); if (i_253_ == 0) break; i_252_ += i_253_; int i_254_ = 0; boolean bool_255_ = false; for (; ; ) { if (bool_255_) { int i_256_ = stream.method422(); if (i_256_ == 0) break; stream.readUnsignedByte(); } else { int i_257_ = stream.method422(); if (i_257_ == 0) break; i_254_ += i_257_ - 1; int i_258_ = i_254_ & 0x3f; int i_259_ = i_254_ >> 6 & 0x3f; int i_260_ = stream.readUnsignedByte() >> 2; int i_261_ = i_259_ + i; int i_262_ = i_258_ + i_250_; if (i_261_ > 0 && i_262_ > 0 && i_261_ < 103 && i_262_ < 103) { ObjectDef class46 = ObjectDef.forID(i_252_); if (i_260_ != 22 || !lowMem || class46.hasActions || class46.aBoolean736) { bool &= class46.method579(); bool_255_ = true; } } } } } return bool; }