// 
// Decompiled by Procyon v0.6.0
// 

package com.hypixel.hytale.procedurallib.condition;

public interface IHeightThresholdInterpreter
{
    int getLowestNonOne();
    
    int getHighestNonZero();
    
    float getThreshold(final int p0, final double p1, final double p2, final int p3);
    
    float getThreshold(final int p0, final double p1, final double p2, final int p3, final double p4);
    
    double getContext(final int p0, final double p1, final double p2);
    
    int getLength();
    
    default boolean isSpawnable(final int height) {
        return height >= this.getLowestNonOne() && height <= this.getHighestNonZero();
    }
    
    default float lerp(final float from, final float to, final float t) {
        return from + (to - from) * t;
    }
}
