kinugasa.util

## クラス Random

- java.lang.Object
- - kinugasa.util.Random

- すべての実装されたインタフェース:
    java.io.Serializable

      public final class Random
      extends java.lang.Object
      implements java.io.Serializable

  乱数とダイスのエミュレートを提供します.
  乱数ジェネレータを利用する方法は2つあります。
  1つは、シードを指定してから、乱数生成機能を使用する方法です。
  シードはリプレイの保存などに使用するため、そのようなゲームデザインの場合には、 適切なタイミングでシードを初期化したり取得する必要があります。
  2つめの方法は、シードを指定しないで乱数生成機能を使用することです。
  この場合には、最初に乱数生成機能(シードの取得(getSeed)を含む)を使用した時点で、適当なシードが適用されます。
  関連項目:
    直列化された形式

- - ### メソッドのサマリー

    All Methods Static Methods Concrete Methods
    修飾子とタイプ | メソッドと説明
    --- | ---
    `static int` | `d10(int num)` 10面ダイスをnum回振った合計値を返します.
    `static int` | `d100(int num)` 100面ダイスをnum回振った合計値を返します.
    `static int` | `d12(int num)` 12面ダイスをnum回振った合計値を返します.
    `static int` | `d20(int num)` 20面ダイスをnum回振った合計値を返します.
    `static int` | `d24(int num)` 24面ダイスをnum回振った合計値を返します.
    `static int` | `d3(int num)` 3面ダイスをnum回振った合計値を返します.
    `static int` | `d30(int num)` 30面ダイスをnum回振った合計値を返します.
    `static int` | `d4(int num)` 4面ダイスをnum回振った合計値を返します.
    `static int` | `d50(int num)` 50面ダイスをnum回振った合計値を返します.
    `static int` | `d6(int num)` 6面ダイスをnum回振った合計値を返します.
    `static int` | `d8(int num)` 8面ダイスをnum回振った合計値を返します.
    `static int` | `dice(int num, int sided)` レガシーなダイスロールをエミュレートするメソッドです.
    `static long` | `getSeed()` 使用中のシードを返します.
    `static long` | `initSeed()` シードを適当な数値で初期化します.
    `static long` | `initSeed(long seed)` 指定されたシードを使用してジェネレータを初期化します.
    `static boolean` | `percent(float p)` 確率pを判定します.
    `static int` | `randomAbsInt()` ランダムな整数のint値を返します.
    `static int` | `randomAbsInt(int maxValue)` 0からmaxValueまでのランダムなint値を返します.
    `static boolean` | `randomBool()` ランダムなbooleanを返します.
    `static float` | `randomFloat()` 0から1までのランダムなfloat値を返します.
    `static float` | `randomFloat(float maxValue)` 0からmaxValueまでのランダムなfloat値を返します.
    `static int` | `randomInt()` ランダムなint値を返します。

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### メソッドの詳細

    - #### initSeed

          public static long initSeed()

      シードを適当な数値で初期化します.
      戻り値:
        適用されたシードを返します。

    - #### initSeed

          public static long initSeed(long seed)

      指定されたシードを使用してジェネレータを初期化します.
      パラメータ:
        `seed` - 設定するシードを指定します。
      戻り値:
        適用されたシードを返します。

    - #### getSeed

          public static long getSeed()

      使用中のシードを返します. ジェネレータが初期化されていない場合は、適当なシードを使用して初期化されます。
      戻り値:
        使用中のシードを返します。

    - #### randomFloat

          public static float randomFloat()

      0から1までのランダムなfloat値を返します. 結果には、0は含まれますが、1は含まれません。
      戻り値:
        0から1までのランダムなfloatを返します。

    - #### randomFloat

          public static float randomFloat(float maxValue)

      0からmaxValueまでのランダムなfloat値を返します. 結果には、0は含まれますが、maxValueは含まれません。
      パラメータ:
        `maxValue` - 乱数の最大値を指定します。
      戻り値:
        0からmaxValueまでのランダムなfloatを返します。

    - #### randomInt

          public static int randomInt()

      ランダムなint値を返します。
      戻り値:
        Intの全ての範囲のランダムな値を返します。

    - #### randomAbsInt

          public static int randomAbsInt(int maxValue)

      0からmaxValueまでのランダムなint値を返します. 結果には、0は含まれますが、maxValueは含まれません。
      パラメータ:
        `maxValue` - 乱数の最大値を指定します。0以下の場合には0に切り詰められます。
      戻り値:
        0からmaxValueまでのランダムなintを返します。

    - #### randomAbsInt

          public static int randomAbsInt()

      ランダムな整数のint値を返します.
      戻り値:
        整数のIntのランダムな値を返します。0を含みます。

    - #### randomBool

          public static boolean randomBool()

      ランダムなbooleanを返します.
      戻り値:
        true又はfalseを返します。

    - #### percent

          public static boolean percent(float p)

      確率pを判定します.
      パラメータ:
        `p` - 発生する確率を0から1のfloatとして指定します。
      戻り値:
        p*100(%)の確率でtrueを返します。] ただしpが0以下の場合はfalse、pが1以上の場合はtrueを返します。

    - #### dice

          public static int dice(int num,
                                 int sided)

      レガシーなダイスロールをエミュレートするメソッドです.
      パラメータ:
        `num` - ダイスを振る回数を指定します。この引数が0の場合、0を返します。
        `sided` - ダイスの面数を指定します。
      戻り値:
        [num D sided] を返します。

    - #### d3

          public static int d3(int num)

      3面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 3]を返します。

    - #### d4

          public static int d4(int num)

      4面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 4]を返します。

    - #### d6

          public static int d6(int num)

      6面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 6]を返します。

    - #### d8

          public static int d8(int num)

      8面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 8]を返します。

    - #### d10

          public static int d10(int num)

      10面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 10]を返します。

    - #### d12

          public static int d12(int num)

      12面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 12]を返します。

    - #### d20

          public static int d20(int num)

      20面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 20]を返します。

    - #### d24

          public static int d24(int num)

      24面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 24]を返します。

    - #### d30

          public static int d30(int num)

      30面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 30]を返します。

    - #### d50

          public static int d50(int num)

      50面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 50]を返します。

    - #### d100

          public static int d100(int num)

      100面ダイスをnum回振った合計値を返します.
      パラメータ:
        `num` - ダイスを振る回数を指定します。
      戻り値:
        [num D 100]を返します。