实现 ComputeTarget 预测落点计算逻辑 实现函数18

This commit is contained in:
2026-04-24 09:12:11 +08:00
parent 6e038f39ed
commit f943bd7c76
4 changed files with 23 additions and 2 deletions
+22 -1
View File
@@ -334,9 +334,30 @@ bool GameOver()
return false;
}
/**
* @brief 计算当前活动方块的预测落点位置。
*
* 该函数以当前活动方块的位置为起点,使用虚拟下落的方式不断尝试向下移动,
* 直到方块无法继续下落为止。最终得到的最低可达位置会写入 target,
* 供后续界面绘制瞄准器或落点提示时使用。
*
* 计算过程中不会改变当前方块的真实位置 point。
*/
void ComputeTarget()
{
// TODO(作业18): 计算瞄准器的预测落点。
Point originalPoint = point;
// 从当前方块位置开始向下试探
target = point;
while (CanMoveDown())
{
point.y++;
target = point;
}
// 恢复当前方块的真实位置
point = originalPoint;
}
void Restart()