我是一个初学者,我正尝试使用SplashKit的Library用C ++编写一个简单的2D太空游戏。
我正在尝试使用IF进行选择循环-否则检查是否已访问过该行星。
但是,我认为它太乱而且不好。任何使它更简单的帮助都将是不错的:)
// Draws the Scoreboard and check if the planet is visited or not
if ( planet[0].visited == true)
{
draw_hud(player, planet[0]);
}
else if ( planet[1]. visited == true)
{
draw_hud(player, planet[1]);
}
else if ( planet[2]. visited == true)
{
draw_hud(player, planet[2]);
}
else if ( planet[3]. visited == true)
{
draw_hud(player, planet[3]);
}
else if ( planet[4]. visited == true)
{
draw_hud(player, planet[4]);
}
else if ( planet[5]. visited == true)
{
draw_hud(player, planet[5]);
}
else if ( planet[6]. visited == true)
{
draw_hud(player, planet[6]);
}
else if ( planet[7]. visited == true)
{
draw_hud(player, planet[7]);
}
else if ( planet[8]. visited == true)
{
draw_hud(player, planet[8]);
}
else
{
draw_hud(player, planet[9]);
}
最佳答案
查找for loops
您无需指定== true。您可以简单地忽略它,并在您的脑海中像“如果这是真的”那样阅读它。 (对于false,如果(!planet [i] .visited)),您会这样做。
整个代码块变成:
for (int i=0; i<10; i++) {
if (planet[i].visited) {
draw_hud(player,planet[i]);
}
}
还请查看codereview堆栈交换,它更专注于这些类型的问题。
关于c++ - 凌乱的选择循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58072495/