Interface ModelScaler

All Known Implementing Classes:
ModelScaler.Composite

public sealed interface ModelScaler permits ModelScaler.Composite (not exhaustive)
Model scaler
  • Field Details

  • Method Details

    • name

      @NotNull @NotNull String name()
      Gets this scaler's name
      Returns:
      name
    • scale

      float scale(@NotNull @NotNull Tracker tracker)
      Gets the scale of this tracker
      Parameters:
      tracker - tracker
      Returns:
      scale
    • data

      @Nullable @Nullable com.google.gson.JsonElement data()
      Gets the data of this scaler
      Returns:
      data
    • deserialize

      @NotNull static @NotNull ModelScaler deserialize(@NotNull @NotNull com.google.gson.JsonObject element)
      Deserializes scaler from JSON
      Parameters:
      element - JSON element
      Returns:
      result
    • defaultScaler

      @NotNull static @NotNull ModelScaler defaultScaler()
      Gets the default scaler (1.0)
      Returns:
      default scaler
    • entity

      @NotNull static @NotNull ModelScaler entity()
      Gets the entity's attribute scaler
      Returns:
      entity scaler
    • value

      @NotNull static @NotNull ModelScaler value(float value)
      Gets the constant scaler (value)
      Parameters:
      value - value
      Returns:
      value scaler
    • composite

      @NotNull static @NotNull ModelScaler composite(@NotNull @NotNull ModelScaler... scalers)
      Gets the composited scaler (a * b)
      Parameters:
      scalers - scalers
      Returns:
      composited scaler
    • multiply

      @NotNull default @NotNull ModelScaler multiply(float value)
      Multiplies this scaler
      Parameters:
      value - value
      Returns:
      new scaler
    • composite

      @NotNull default @NotNull ModelScaler composite(@NotNull @NotNull ModelScaler scaler)
      Composites this scaler to another one (a * b)
      Parameters:
      scaler - other
      Returns:
      composited scaler
    • serialize

      @NotNull default @NotNull com.google.gson.JsonObject serialize()
      Serializes this scaler to JSON
      Returns:
      JSON