gpt4 book ai didi

c# - 如何在两个标志 bool 值之间切换?

转载 作者:行者123 更新时间:2023-11-30 22:57:51 24 4
gpt4 key购买 nike

public bool animCurve = true;
public bool straightLine = false;

然后在更新中:

void Update()
{
if (objectsToMove != null && objectsToMove.Length > 0)
{
if (animCurve)
{
straightLine = false;
AnimationCurve();
}

if (straightLine)
{
animCurve = false;
StraightLineTrack();
}
}
}

运行游戏时,animCurve 为真,但如果我点击直线,则没有任何反应。我需要先取消选中 animCurve,然后再选中直线。

但如果直线没有被选中,我可以将 animCurve 设为真,它会自动将直线更改为假。为什么它不能以其他方式工作?为什么我需要先取消选中 animCurve,然后再选中 straightLine?

我希望当我检查将其中一个标志设置为 true 时,另一个标志将自动设置为 false。

最佳答案

您有两个 bool 变量,但您只希望其中一个为真。当一个为真时,另一个为假。这是应该使用枚举来简化您的逻辑的地方。

你的枚举:

public enum LineType
{
Curve, Straight
}

声明并检查启用了哪个:

LineType lineType = LineType.Straight;

void Update()
{
if (lineType == LineType.Straight)
{
StraightLineTrack();
}

else if (lineType == LineType.Curve)
{
AnimationCurve();
}
}

将其更改为曲线:

lineType = LineType.Curve;

关于c# - 如何在两个标志 bool 值之间切换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53363904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com