Package colonies.lunatrius.client.lunatrius.schematica

Source Code of colonies.lunatrius.client.lunatrius.schematica.RendererSchematicChunkSorter

package colonies.lunatrius.client.lunatrius.schematica;

import java.util.Comparator;
import colonies.lunatrius.client.lunatrius.schematica.util.Vector3f;

public class RendererSchematicChunkSorter implements Comparator {
  private final Settings settings = Settings.instance();

  public int doCompare(RendererSchematicChunk par1RendererSchematicChunk, RendererSchematicChunk par2RendererSchematicChunk) {
    if (par1RendererSchematicChunk.isInFrustrum && !par2RendererSchematicChunk.isInFrustrum) {
      return -1;
    } else if (!par1RendererSchematicChunk.isInFrustrum && par2RendererSchematicChunk.isInFrustrum) {
      return 1;
    } else {
      Vector3f position = this.settings.playerPosition.clone().sub(this.settings.offset.x, this.settings.offset.y, this.settings.offset.z);
      double dist1 = par1RendererSchematicChunk.distanceToPoint(position);
      double dist2 = par2RendererSchematicChunk.distanceToPoint(position);
      return dist1 > dist2 ? 1 : (dist1 < dist2 ? -1 : 0);
    }
  }

  @Override
  public int compare(Object par1Obj, Object par2Obj) {
    return doCompare((RendererSchematicChunk) par1Obj, (RendererSchematicChunk) par2Obj);
  }
}
TOP

Related Classes of colonies.lunatrius.client.lunatrius.schematica.RendererSchematicChunkSorter

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.