001 002 import java.util.Random; 003 004 public class ic extends fe { 005 006 public jl a; 007 private int e; 008 public int b = 0; 009 public int c; 010 private int f = 5; 011 public float d = (float) (Math.random() * 3.141592653589793D * 2.0D); 012 013 public ic(fv paramfv, double paramDouble1, double paramDouble2, double paramDouble3, jl paramjl) { 014 super(paramfv); 015 a(0.25F, 0.25F); 016 H = (J / 2.0F); 017 a(paramDouble1, paramDouble2, paramDouble3); 018 a = paramjl; 019 020 v = (float) (Math.random() * 360.0D); 021 022 s = (float) (Math.random() * 0.2000000029802322D - 0.1000000014901161D); 023 t = 0.2000000029802322D; 024 u = (float) (Math.random() * 0.2000000029802322D - 0.1000000014901161D); 025 M = false; 026 } 027 028 public ic(fv paramfv) { 029 super(paramfv); 030 a(0.25F, 0.25F); 031 H = (J / 2.0F); 032 } 033 034 protected void a() { 035 } 036 037 public void b_() { 038 super.b_(); 039 if (c > 0) { 040 c -= 1; 041 } 042 m = p; 043 n = q; 044 o = r; 045 046 t -= 0.03999999910593033D; 047 if (l.c(iz.b(p), iz.b(q), iz.b(r)) == mh.g) { 048 t = 0.2000000029802322D; 049 s = ((W.nextFloat() - W.nextFloat()) * 0.2F); 050 u = ((W.nextFloat() - W.nextFloat()) * 0.2F); 051 l.a(this, "random.fizz", 0.4F, 2.0F + W.nextFloat() * 0.4F); 052 } 053 g(p, q, r); 054 c(s, t, u); 055 056 float f1 = 0.98F; 057 if (A) { 058 f1 = 0.5880001F; 059 int i = l.a(iz.b(p), iz.b(z.b) - 1, iz.b(r)); 060 if (i > 0) { 061 f1 = hr.m[i].bu * 0.98F; 062 } 063 } 064 065 s *= f1; 066 t *= 0.9800000190734863D; 067 u *= f1; 068 069 if (A) { 070 t *= -0.5D; 071 } 072 073 e += 1; 074 b += 1; 075 if (b >= 6000) { 076 q(); 077 } 078 } 079 080 public boolean v() { 081 return l.a(z, mh.f, this); 082 } 083 084 private boolean g(double paramDouble1, double paramDouble2, double paramDouble3) { 085 int i = iz.b(paramDouble1); 086 int j = iz.b(paramDouble2); 087 int k = iz.b(paramDouble3); 088 089 double d1 = paramDouble1 - i; 090 double d2 = paramDouble2 - j; 091 double d3 = paramDouble3 - k; 092 093 if (hr.o[l.a(i, j, k)]) { 094 int m = hr.o[l.a(i - 1, j, k)] == false ? 1 : 0; 095 int n = hr.o[l.a(i + 1, j, k)] == false ? 1 : 0; 096 int i1 = hr.o[l.a(i, j - 1, k)] == false ? 1 : 0; 097 int i2 = hr.o[l.a(i, j + 1, k)] == false ? 1 : 0; 098 int i3 = hr.o[l.a(i, j, k - 1)] == false ? 1 : 0; 099 int i4 = hr.o[l.a(i, j, k + 1)] == false ? 1 : 0; 100 101 int i5 = -1; 102 double d4 = 9999.0D; 103 if ((m != 0) && (d1 < d4)) { 104 d4 = d1; 105 i5 = 0; 106 } 107 if ((n != 0) && (1.0D - d1 < d4)) { 108 d4 = 1.0D - d1; 109 i5 = 1; 110 } 111 if ((i1 != 0) && (d2 < d4)) { 112 d4 = d2; 113 i5 = 2; 114 } 115 if ((i2 != 0) && (1.0D - d2 < d4)) { 116 d4 = 1.0D - d2; 117 i5 = 3; 118 } 119 if ((i3 != 0) && (d3 < d4)) { 120 d4 = d3; 121 i5 = 4; 122 } 123 if ((i4 != 0) && (1.0D - d3 < d4)) { 124 d4 = 1.0D - d3; 125 i5 = 5; 126 } 127 128 float f1 = W.nextFloat() * 0.2F + 0.1F; 129 if (i5 == 0) { 130 s = (-f1); 131 } 132 if (i5 == 1) { 133 s = f1; 134 } 135 if (i5 == 2) { 136 t = (-f1); 137 } 138 if (i5 == 3) { 139 t = f1; 140 } 141 if (i5 == 4) { 142 u = (-f1); 143 } 144 if (i5 == 5) { 145 u = f1; 146 } 147 } 148 149 return false; 150 } 151 152 protected void b(int paramInt) { 153 a((fe) null, paramInt); 154 } 155 156 public boolean a(fe paramfe, int paramInt) { 157 y(); 158 f -= paramInt; 159 if (f <= 0) { 160 q(); 161 } 162 return false; 163 } 164 165 public void a(ah paramah) { 166 paramah.a("Health", (short) (byte) f); 167 paramah.a("Age", (short) b); 168 paramah.a("Item", a.a(new ah())); 169 } 170 171 public void b(ah paramah) { 172 f = (paramah.c("Health") & 0xFF); 173 b = paramah.c("Age"); 174 ah localah = paramah.j("Item"); 175 a = new jl(localah); 176 } 177 178 public void b(hl paramhl) { 179 if (l.z) { 180 return; 181 } 182 183 int i = a.a; 184 if ((c == 0) && (paramhl.an.a(a))) { 185 // hMod: allow item pickups 186 Item item = new Item(a.c, i); 187 if (!(Boolean) etc.getLoader().callHook(PluginLoader.Hook.ITEM_PICK_UP, ((fy) paramhl).getPlayer(), item)) { 188 l.a(this, "random.pop", 0.2F, ((W.nextFloat() - W.nextFloat()) * 0.7F + 1.0F) * 2.0F); 189 paramhl.c(this, i); 190 q(); 191 } 192 } 193 } 194 }