Codechange: Move SpriteGroup cast from callers into Resolve.

This commit is contained in:
frosch
2025-04-29 10:35:10 +02:00
committed by frosch
parent af25eecc15
commit 010b944173
15 changed files with 59 additions and 50 deletions
+2 -2
View File
@@ -640,7 +640,7 @@ StationResolverObject::StationResolverObject(const StationSpec *statspec, BaseSt
SpriteID GetCustomStationRelocation(const StationSpec *statspec, BaseStation *st, TileIndex tile, uint32_t var10)
{
StationResolverObject object(statspec, st, tile, CBID_NO_CALLBACK, var10);
const SpriteGroup *group = object.Resolve();
const auto *group = object.Resolve<ResultSpriteGroup>();
if (group == nullptr || group->GetNumResults() == 0) return 0;
return group->GetResult() - SPR_RAIL_PLATFORM_Y_FRONT;
}
@@ -659,7 +659,7 @@ SpriteID GetCustomStationFoundationRelocation(const StationSpec *statspec, BaseS
/* callback_param1 == 2 means we are resolving the foundation sprites. */
StationResolverObject object(statspec, st, tile, CBID_NO_CALLBACK, 2, layout | (edge_info << 16));
const SpriteGroup *group = object.Resolve();
const auto *group = object.Resolve<ResultSpriteGroup>();
/* Note: SpriteGroup::Resolve zeroes all registers, so register 0x100 is initialised to 0. (compatibility) */
auto offset = GetRegister(0x100);
if (group == nullptr || group->GetNumResults() <= offset) return 0;