背景
我有一个精灵(一个openGL四边形),它从屏幕顶部“落”到底部。
当它到达屏幕底部时,它的值被重置并重新开始(从上到下)但沿 X 轴移动到新的 X 位置。
我正在做的是将 X 位置存储在一个 ArrayList 中(可能只有 1 个,所以它一遍又一遍地落在同一个地方,或者 10 个,所以它每次下落时都会轻微移动)。
问题
我无法解决的是如何通过这个数组列表并将精灵的新 X 位置设置为“下一个”数组列表位置中保存的值,同时记住可能没有“下一个”位置。
所以.......(这是伪代码)......一旦精灵下降并且它的 Y 位置已重置回屏幕顶部:
spriteX = value_held_in_next_arrayList_position(if_there_is_one)
由于我的游戏的不同级别会有不同数量的位置,我不能明确地说“转到位置 2”,因为 arrayList 的大小只有 1。基本上我想说的是“转到下一个位置”和“如果没有下一个位置,则返回位置 0。