001    
002    import java.util.Random;
003    
004    public class aj extends dz {
005    
006        protected aj(int paramInt, mh parammh) {
007            super(paramInt, parammh);
008    
009            a(false);
010            if (parammh == mh.g) {
011                a(true);
012            }
013        }
014    
015        public void b(fv paramfv, int paramInt1, int paramInt2, int paramInt3, int paramInt4) {
016            super.b(paramfv, paramInt1, paramInt2, paramInt3, paramInt4);
017            if (paramfv.a(paramInt1, paramInt2, paramInt3) == bi) {
018                i(paramfv, paramInt1, paramInt2, paramInt3);
019            }
020        }
021    
022        private void i(fv paramfv, int paramInt1, int paramInt2, int paramInt3) {
023            int i = paramfv.b(paramInt1, paramInt2, paramInt3);
024            paramfv.i = true;
025            paramfv.a(paramInt1, paramInt2, paramInt3, bi - 1, i);
026            paramfv.b(paramInt1, paramInt2, paramInt3, paramInt1, paramInt2, paramInt3);
027            paramfv.i(paramInt1, paramInt2, paramInt3, bi - 1);
028            paramfv.i = false;
029        }
030    
031        public void a(fv paramfv, int paramInt1, int paramInt2, int paramInt3, Random paramRandom) {
032            if (bt == mh.g) {
033                int i = paramRandom.nextInt(3);
034                // hMod: prevent lava from putting something on fire.
035                Block block = new Block(paramfv.a(paramInt1, paramInt2, paramInt3), paramInt1, paramInt2, paramInt3);
036                block.setStatus(1);
037                if (!(Boolean) etc.getLoader().callHook(PluginLoader.Hook.IGNITE, block, null)) {
038                    for (int j = 0; j < i; j++) {
039                        paramInt1 += paramRandom.nextInt(3) - 1;
040                        paramInt2++;
041                        paramInt3 += paramRandom.nextInt(3) - 1;
042                        int k = paramfv.a(paramInt1, paramInt2, paramInt3);
043                        if (k == 0) {
044                            if ((j(paramfv, paramInt1 - 1, paramInt2, paramInt3)) || (j(paramfv, paramInt1 + 1, paramInt2, paramInt3)) || (j(paramfv, paramInt1, paramInt2, paramInt3 - 1)) || (j(paramfv, paramInt1, paramInt2, paramInt3 + 1)) || (j(paramfv, paramInt1, paramInt2 - 1, paramInt3)) || (j(paramfv, paramInt1, paramInt2 + 1, paramInt3))) {
045                                paramfv.e(paramInt1, paramInt2, paramInt3, hr.ar.bi);
046                                return;
047                            }
048                        } else if (hr.m[k].bt.c()) {
049                            return;
050                        }
051                    }
052                }
053            }
054        }
055    
056        private boolean j(fv paramfv, int paramInt1, int paramInt2, int paramInt3) {
057            return paramfv.c(paramInt1, paramInt2, paramInt3).e();
058        }
059    }