初学者,我正在尝试做一个 while true 循环,无限期地读取游戏中整数的值。我想做的是,当该整数 = x 值时,执行某个代码,但仅执行一次。
我用了这个代码
while (true)
{
var value = swed.ReadInt(localplayer, offsets.health);
if (value == 70)
{
Console.WriteLine("hello");
}
}
问题是,当值为 70 时,当我只想打印一次时,它会永远打印“hello”。我尝试使用 for 循环,按照我的意愿打印该消息一次,但只有当该值一开始就是 70 时它才有效。它不像 while 循环那样连续读取该值。所以我想我需要使用嵌套循环?我尝试了很多不同的方法,但到目前为止没有任何效果
正如评论所建议的,我们使用一个标志来触发“hello”一次,例如:
while (true)
{
var hasExecuted = false;
var value = swed.ReadInt(localplayer, offsets.health);
if (value == 70 && !hasExecuted)
{
Console.WriteLine("hello");
hasExecuted = true;
}
}