让事情发生的机会C#

时间:2009-08-29 21:48:51

标签: c# .net visual-studio scripting

如何创建一个脚本,使一件事发生4/5次,另一件事发生1/5次

我需要它出现在

之后
private void Arrest()
{
    Ped Criminal = Player.GetTargetedPed();
    if (Exists(Criminal) && 
        (Player.Character.Position.DistanceTo(Criminal.Position) <= 10.0F))
    {

1 个答案:

答案 0 :(得分:6)

static Random rnd = new Random();
static void DoOne() { ... }
static void DoTwo() { ... }
static void RollDice() {
   if (rnd.Next(5) == 0)
       DoOne(); // happens 1/5 times
   else
       DoTwo(); // happens 4/5 times
}

重要的是您不会在每次通话中重新创建Random个实例。您应该保留旧实例并重用它。否则,随机生成的序列将不会均匀分布。