001 002 import java.util.List; 003 import java.util.Random; 004 005 public class bw extends hr { 006 007 private ee a; 008 009 protected bw(int paramInt1, int paramInt2, ee paramee) { 010 super(paramInt1, paramInt2, mh.d); 011 a = paramee; 012 a(true); 013 014 float f = 0.0625F; 015 a(f, 0.0F, f, 1.0F - f, 0.03125F, 1.0F - f); 016 } 017 018 public int b() { 019 return 20; 020 } 021 022 public fa d(fv paramfv, int paramInt1, int paramInt2, int paramInt3) { 023 return null; 024 } 025 026 public boolean a() { 027 return false; 028 } 029 030 public boolean a(fv paramfv, int paramInt1, int paramInt2, int paramInt3) { 031 return paramfv.d(paramInt1, paramInt2 - 1, paramInt3); 032 } 033 034 public void e(fv paramfv, int paramInt1, int paramInt2, int paramInt3) { 035 } 036 037 public void b(fv paramfv, int paramInt1, int paramInt2, int paramInt3, int paramInt4) { 038 int i = 0; 039 040 if (!paramfv.d(paramInt1, paramInt2 - 1, paramInt3)) { 041 i = 1; 042 } 043 044 if (i != 0) { 045 a_(paramfv, paramInt1, paramInt2, paramInt3, paramfv.b(paramInt1, paramInt2, paramInt3)); 046 paramfv.e(paramInt1, paramInt2, paramInt3, 0); 047 } 048 } 049 050 public void a(fv paramfv, int paramInt1, int paramInt2, int paramInt3, Random paramRandom) { 051 if (paramfv.z) { 052 return; 053 } 054 if (paramfv.b(paramInt1, paramInt2, paramInt3) == 0) { 055 return; 056 } 057 058 g(paramfv, paramInt1, paramInt2, paramInt3); 059 } 060 061 public void a(fv paramfv, int paramInt1, int paramInt2, int paramInt3, fe paramfe) { 062 if (paramfv.z) { 063 return; 064 } 065 066 if (paramfv.b(paramInt1, paramInt2, paramInt3) == 1) { 067 return; 068 } 069 070 g(paramfv, paramInt1, paramInt2, paramInt3); 071 } 072 073 private void g(fv paramfv, int paramInt1, int paramInt2, int paramInt3) { 074 int i = paramfv.b(paramInt1, paramInt2, paramInt3) == 1 ? 1 : 0; 075 int j = 0; 076 077 float f = 0.125F; 078 List localList = null; 079 if (a == ee.a) { 080 localList = paramfv.b(null, fa.b(paramInt1 + f, paramInt2, paramInt3 + f, paramInt1 + 1 - f, paramInt2 + 0.25D, paramInt3 + 1 - f)); 081 } 082 if (a == ee.b) { 083 localList = paramfv.a(mj.class, fa.b(paramInt1 + f, paramInt2, paramInt3 + f, paramInt1 + 1 - f, paramInt2 + 0.25D, paramInt3 + 1 - f)); 084 } 085 if (a == ee.c) { 086 localList = paramfv.a(hl.class, fa.b(paramInt1 + f, paramInt2, paramInt3 + f, paramInt1 + 1 - f, paramInt2 + 0.25D, paramInt3 + 1 - f)); 087 } 088 if (localList.size() > 0) { 089 j = 1; 090 } 091 // hMod: Allow pressure plate interaction to power redstone 092 if (j != i) { 093 j = (Integer) etc.getLoader().callHook(PluginLoader.Hook.REDSTONE_CHANGE, new Block(this.bh, paramInt1, paramInt2, paramInt3), i, j); 094 if (j > 0) { 095 j = 1; 096 } 097 } 098 099 if ((j != 0) && (i == 0)) { 100 paramfv.c(paramInt1, paramInt2, paramInt3, 1); 101 paramfv.h(paramInt1, paramInt2, paramInt3, bi); 102 paramfv.h(paramInt1, paramInt2 - 1, paramInt3, bi); 103 paramfv.b(paramInt1, paramInt2, paramInt3, paramInt1, paramInt2, paramInt3); 104 105 paramfv.a(paramInt1 + 0.5D, paramInt2 + 0.1D, paramInt3 + 0.5D, "random.click", 0.3F, 0.6F); 106 } 107 if ((j == 0) && (i != 0)) { 108 paramfv.c(paramInt1, paramInt2, paramInt3, 0); 109 paramfv.h(paramInt1, paramInt2, paramInt3, bi); 110 paramfv.h(paramInt1, paramInt2 - 1, paramInt3, bi); 111 paramfv.b(paramInt1, paramInt2, paramInt3, paramInt1, paramInt2, paramInt3); 112 113 paramfv.a(paramInt1 + 0.5D, paramInt2 + 0.1D, paramInt3 + 0.5D, "random.click", 0.3F, 0.5F); 114 } 115 116 if (j != 0) { 117 paramfv.i(paramInt1, paramInt2, paramInt3, bi); 118 } 119 } 120 121 public void b(fv paramfv, int paramInt1, int paramInt2, int paramInt3) { 122 int i = paramfv.b(paramInt1, paramInt2, paramInt3); 123 if (i > 0) { 124 paramfv.h(paramInt1, paramInt2, paramInt3, bi); 125 paramfv.h(paramInt1, paramInt2 - 1, paramInt3, bi); 126 } 127 super.b(paramfv, paramInt1, paramInt2, paramInt3); 128 } 129 130 public void a(la paramla, int paramInt1, int paramInt2, int paramInt3) { 131 int i = paramla.b(paramInt1, paramInt2, paramInt3) == 1 ? 1 : 0; 132 133 float f = 0.0625F; 134 if (i != 0) { 135 a(f, 0.0F, f, 1.0F - f, 0.03125F, 1.0F - f); 136 } else { 137 a(f, 0.0F, f, 1.0F - f, 0.0625F, 1.0F - f); 138 } 139 } 140 141 public boolean b(la paramla, int paramInt1, int paramInt2, int paramInt3, int paramInt4) { 142 return paramla.b(paramInt1, paramInt2, paramInt3) > 0; 143 } 144 145 public boolean d(fv paramfv, int paramInt1, int paramInt2, int paramInt3, int paramInt4) { 146 if (paramfv.b(paramInt1, paramInt2, paramInt3) == 0) { 147 return false; 148 } 149 return paramInt4 == 1; 150 } 151 152 public boolean c() { 153 return true; 154 } 155 }