Advertisement
supersaiyansubtlety

beaconBlockEntityTickSnippet

Dec 27th, 2020
709
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.29 KB | None | 0 0
  1.       for(n = 0; n < 10 && blockPos2.getY() <= l; ++n) {
  2.          BlockState blockState = this.world.getBlockState(blockPos2);
  3.          Block block = blockState.getBlock();
  4.          if (block instanceof Stainable) {
  5.             float[] fs = ((Stainable)block).getColor().getColorComponents();
  6.             if (this.field_19178.size() <= 1) {
  7.                beamSegment = new BeaconBlockEntity.BeamSegment(fs);
  8.                this.field_19178.add(beamSegment);
  9.             } else if (beamSegment != null) {
  10.                if (Arrays.equals(fs, beamSegment.color)) {
  11.                   beamSegment.increaseHeight();
  12.                } else {
  13.                   beamSegment = new BeaconBlockEntity.BeamSegment(new float[]{(beamSegment.color[0] + fs[0]) / 2.0F, (beamSegment.color[1] + fs[1]) / 2.0F, (beamSegment.color[2] + fs[2]) / 2.0F});
  14.                   this.field_19178.add(beamSegment);
  15.                }
  16.             }
  17.          } else {
  18.             if (beamSegment == null || blockState.getOpacity(this.world, blockPos2) >= 15 && block != Blocks.BEDROCK) {
  19.                this.field_19178.clear();
  20.                this.field_19179 = l;
  21.                break;
  22.             }
  23.  
  24.             beamSegment.increaseHeight();
  25.          }
  26.  
  27.          blockPos2 = blockPos2.up();
  28.          ++this.field_19179;
  29.       }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement