Class MochaMath

java.lang.Object
team.unnamed.mocha.runtime.standard.MochaMath
All Implemented Interfaces:
ObjectValue, Value

@Binding("math") @BindExternalFunction(at=java.lang.Math.class,name="abs",args=double.class,pure=true) @BindExternalFunction(at=java.lang.Math.class,name="log",args=double.class,as="ln",pure=true) @BindExternalFunction(at=java.lang.Math.class,name="max",args={double.class,double.class},pure=true) @BindExternalFunction(at=java.lang.Math.class,name="min",args={double.class,double.class},pure=true) @BindExternalFunction(at=java.lang.Math.class,name="round",args=double.class,pure=true) @BindExternalFunction(at=java.lang.Math.class,name="sqrt",args=double.class,pure=true) @BindExternalFunction(at=java.lang.Math.class,name="pow",args={double.class,double.class},pure=true) @BindExternalFunction(at=java.lang.Math.class,name="exp",args=double.class,pure=true) @BindExternalFunction(at=java.lang.Math.class,name="floor",args=double.class,pure=true) @BindExternalFunction(at=java.lang.Math.class,name="ceil",args=double.class,pure=true) public final class MochaMath extends Object implements ObjectValue
Math function bindings inside an object binding, commonly named 'math'
  • Field Details

  • Constructor Details

    • MochaMath

      public MochaMath()
  • Method Details

    • acos

      @Binding(value="acos", skipChecking=true, pure=true) public static double acos(double value)
    • asin

      @Binding(value="asin", skipChecking=true, pure=true) public static double asin(double value)
    • atan

      @Binding(value="atan", pure=true) public static double atan(double value)
    • atan2

      @Binding(value="atan2", pure=true) public static double atan2(double y, double x)
    • clamp

      @Binding(value="clamp", pure=true) public static double clamp(double value, double min, double max)
    • cos

      @Binding(value="cos", pure=true) public static double cos(double value)
    • dieRoll

      @Binding("die_roll") public static double dieRoll(double amount, double low, double high)
    • dieRollInteger

      @Binding("die_roll_integer") public static double dieRollInteger(double amount, double low, double high)
    • hermiteBlend

      @Binding(value="hermite_blend", pure=true) public static double hermiteBlend(double t)
    • lerp

      @Binding(value="lerp", pure=true) public static double lerp(double start, double end, double lerp)
    • lerpRotate

      @Binding(value="lerprotate", pure=true) public static double lerpRotate(double start, double end, double lerp)
    • minAngle

      @Binding(value="min_angle", pure=true) public static double minAngle(double angle)
    • mod

      @Binding(value="mod", pure=true) public static double mod(double a, double b)
    • random

      @Binding("random") public static double random(double min, double max)
    • randomInteger

      @Binding("random_integer") public static int randomInteger(double min, double max)
    • sin

      @Binding(value="sin", pure=true) public static double sin(double value)
    • trunc

      @Binding(value="trunc", pure=true) public static double trunc(double value)
    • getProperty

      @Nullable public @Nullable ObjectProperty getProperty(@NotNull @NotNull String name)
      Description copied from interface: ObjectValue
      Returns the property for the given name ignoring its case. This method is CASE-INSENSITIVE.
      Specified by:
      getProperty in interface ObjectValue
      Parameters:
      name - The name of the property
      Returns:
      The property for the given name