1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-22 06:23:04 +01:00

Fix bug in sprite_move, add sprite null check

This commit is contained in:
Ted John
2017-06-29 19:25:59 +01:00
parent 2fffeb9470
commit 50c8fefb35

View File

@@ -557,10 +557,12 @@ void sprite_move(sint16 x, sint16 y, sint16 z, rct_sprite *sprite)
size_t currentIndex = GetSpatialIndexOffset(sprite->unknown.x, sprite->unknown.y);
if (newIndex != currentIndex) {
uint16 *spriteIndex = &gSpriteSpatialIndex[currentIndex];
rct_sprite *sprite2 = get_sprite(*spriteIndex);
while (sprite != sprite2) {
spriteIndex = &sprite2->unknown.next_in_quadrant;
sprite2 = get_sprite(*spriteIndex);
if (*spriteIndex != SPRITE_INDEX_NULL) {
rct_sprite *sprite2 = get_sprite(*spriteIndex);
while (sprite != sprite2) {
spriteIndex = &sprite2->unknown.next_in_quadrant;
sprite2 = get_sprite(*spriteIndex);
}
}
*spriteIndex = sprite->unknown.next_in_quadrant;