随机数和switch语句

时间:2014-12-03 13:45:27

标签: c# random switch-statement

if (((turn % 2) != 0) && (vsComputer))
    {
        int generateAI = generateRandomAI(AI);
        switch (generateAI)
            {
                 case 0:                            
                 computerMedio();
                 break;

                 case 1:
                 computerDifficile();
                 break;
             }
}

我希望我的0/1值与所有游戏相同。 使用我编写的代码,每次移动都会选择不同的AI模式。

它不应该难以实现,但我无法找到解决方案。

谢谢大家!

2 个答案:

答案 0 :(得分:1)

您的问题是:

int generateAI = generateRandomAI(AI);

您正在为此代码块的每次调用生成一个新的随机值。如果您希望为所有执行保留相同的值,只需生成一次值并将其保留在范围内。

答案 1 :(得分:0)

好的,我用以下方式解决了

public Boolean difficult;

在newGame()方法中我生成了持续所有游戏的数字。 那么,

switch (generateAI)
    {
         case 0:                            
         difficult = false;
         break;

         case 1:
         difficult = true;
         break;
    }   

进入游戏:

 if (((turn % 2) != 0) && (vsComputer))
     {
          if (difficult)
          {
               computerDifficile();
          }
          else
          {
               computerMedio();
          }

 }