类从Game.cs获取参数

本文关键字:参数 获取 cs Game 类从 | 更新日期: 2023-09-27 18:28:12

我正在写一个简短的程序。我需要的是,我想在Game.cs中设置"正确"的参数,在我的advTry.cs中,我想使用这个"正确"参数来确定输出。与我的类advTry.cs类似:

public bool correct { get; set; }
if (correct)
{
    solveButton = new MenuButton(contentManager.Load<Texture2D>("solve"),
      buttonCenter, GameState.AnswerNo);
   Console.WriteLine("OK");
}
else
{
    solveButton2 = new MenuButton(contentManager.Load<Texture2D>("solve"),
                  buttonCenter, GameState.AnswerYes);
    Console.WriteLine("Not OK");
}

在我的游戏中,我将正确定义为:

if (messageString == "18")
{
    Console.WriteLine("Main OK");
    advTry.correct = true;
}
else
{
    advTry.correct = false;
    Console.WriteLine("Main not OK");
}

我使用Console.WriteLine来检查布尔参数"correct"的传递。虽然结果最初是"不正常",但当我开始输入"18"时,它会先给出"Main Not OK",然后给出"Main OK"(很容易理解,因为输入"1"然后是"8")。

然而,最大的问题是"OK"永远不会出现,状态"GameState.AnswerNo"无法实现,请问为什么?请问怎么修?

类从Game.cs获取参数

您的问题一点也不清楚。除了这两个条件外,您还没有给出任何关于代码结构的概念。现在不可能回答。然而,根据您在这里所写的内容,我的最佳猜测是,您已经在advTry类中将"correct"的值设置为true,但您还没有在该类中运行代码以将OK输出到控制台。该代码不会因为您设置了"correct"值而自动运行。你需要在advTry.cs:中做这样的事情

private bool _correct;
public bool correct  
{
    get { return _correct; }
    set 
    {
        _correct = value;
        output();
    }
}
private void output
{
    if (_correct)
    {
       //output "OK"
    }
    else
    {
       //output "Not OK"
    }
}