私の .NET ゲームでは、プレイヤーの 5 人のキャラクターがどれだけのダメージを受けるかを決定している私の rand 関数ですが、最初のものは常にスケールの一番下にあり、最後のものは一番上にあるようです。したがって、私Character[0]
の場合、ダメージが最小ランド値よりも 1 を超えることはめったになく、よりCharacter
高いインデックスのそれぞれについて、受けたダメージはスケールの上からランダム化されるだけです。
public int GetDamage(int low, int high)
{
Random r = new Random();
int rand = r.Next(low, high);
return rand;
}
これは私が使用するランダマイザーです。次に、ヘルス レフトを次のように更新します。
int Damage = GetDamage(3, 10);
Characters[Target].Health = Characters[Target].Health - Damage;
この例では、dmg は次のように分割されます。
Number 1: 3-4
Number 2: 4-6
Number 3: 5-7
Number 4: 7-8
Number 5: 8-9