mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-15 11:03:00 +01:00
Use helper function GetSpriteBounds
It's intended to retrieve a rct_sprite_bounds from the global array g_peep_animation_entries, given PeepSpriteType and PeepActionSpriteType as parameters.
This commit is contained in:
@@ -22,7 +22,6 @@
|
||||
#include "../scenario/Scenario.h"
|
||||
#include "../ui/UiContext.h"
|
||||
#include "../ui/WindowManager.h"
|
||||
#include "../util/Util.h"
|
||||
#include "../world/Entrance.h"
|
||||
#include "../world/Park.h"
|
||||
#include "../world/Sprite.h"
|
||||
@@ -210,7 +209,7 @@ private:
|
||||
newPeep->Name = nullptr;
|
||||
newPeep->SpriteType = spriteType;
|
||||
|
||||
const rct_sprite_bounds* spriteBounds = g_peep_animation_entries[EnumValue(spriteType)].sprite_bounds;
|
||||
const rct_sprite_bounds* spriteBounds = &GetSpriteBounds(spriteType);
|
||||
newPeep->sprite_width = spriteBounds->sprite_width;
|
||||
newPeep->sprite_height_negative = spriteBounds->sprite_height_negative;
|
||||
newPeep->sprite_height_positive = spriteBounds->sprite_height_positive;
|
||||
|
||||
@@ -509,10 +509,10 @@ void Peep::UpdateCurrentActionSpriteType()
|
||||
Invalidate();
|
||||
ActionSpriteType = newActionSpriteType;
|
||||
|
||||
const rct_sprite_bounds* spriteBounds = g_peep_animation_entries[EnumValue(SpriteType)].sprite_bounds;
|
||||
sprite_width = spriteBounds[EnumValue(ActionSpriteType)].sprite_width;
|
||||
sprite_height_negative = spriteBounds[EnumValue(ActionSpriteType)].sprite_height_negative;
|
||||
sprite_height_positive = spriteBounds[EnumValue(ActionSpriteType)].sprite_height_positive;
|
||||
const rct_sprite_bounds* spriteBounds = &GetSpriteBounds(SpriteType, ActionSpriteType);
|
||||
sprite_width = spriteBounds->sprite_width;
|
||||
sprite_height_negative = spriteBounds->sprite_height_negative;
|
||||
sprite_height_positive = spriteBounds->sprite_height_positive;
|
||||
|
||||
Invalidate();
|
||||
}
|
||||
@@ -1591,10 +1591,10 @@ Peep* Peep::Generate(const CoordsXYZ& coords)
|
||||
peep->FavouriteRide = RIDE_ID_NULL;
|
||||
peep->FavouriteRideRating = 0;
|
||||
|
||||
const rct_sprite_bounds* spriteBounds = g_peep_animation_entries[EnumValue(peep->SpriteType)].sprite_bounds;
|
||||
peep->sprite_width = spriteBounds[EnumValue(peep->ActionSpriteType)].sprite_width;
|
||||
peep->sprite_height_negative = spriteBounds[EnumValue(peep->ActionSpriteType)].sprite_height_negative;
|
||||
peep->sprite_height_positive = spriteBounds[EnumValue(peep->ActionSpriteType)].sprite_height_positive;
|
||||
const rct_sprite_bounds* spriteBounds = &GetSpriteBounds(peep->SpriteType, peep->ActionSpriteType);
|
||||
peep->sprite_width = spriteBounds->sprite_width;
|
||||
peep->sprite_height_negative = spriteBounds->sprite_height_negative;
|
||||
peep->sprite_height_positive = spriteBounds->sprite_height_positive;
|
||||
|
||||
peep->MoveTo(coords);
|
||||
peep->sprite_direction = 0;
|
||||
@@ -2192,10 +2192,10 @@ void Peep::SwitchNextActionSpriteType()
|
||||
{
|
||||
Invalidate();
|
||||
ActionSpriteType = NextActionSpriteType;
|
||||
const rct_sprite_bounds* spriteBounds = g_peep_animation_entries[EnumValue(SpriteType)].sprite_bounds;
|
||||
sprite_width = spriteBounds[EnumValue(NextActionSpriteType)].sprite_width;
|
||||
sprite_height_negative = spriteBounds[EnumValue(NextActionSpriteType)].sprite_height_negative;
|
||||
sprite_height_positive = spriteBounds[EnumValue(NextActionSpriteType)].sprite_height_positive;
|
||||
const rct_sprite_bounds* spriteBounds = &GetSpriteBounds(SpriteType, NextActionSpriteType);
|
||||
sprite_width = spriteBounds->sprite_width;
|
||||
sprite_height_negative = spriteBounds->sprite_height_negative;
|
||||
sprite_height_positive = spriteBounds->sprite_height_positive;
|
||||
Invalidate();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1091,4 +1091,10 @@ inline const rct_peep_animation& GetPeepAnimation(
|
||||
return g_peep_animation_entries[EnumValue(spriteType)].sprite_animation[EnumValue(actionSpriteType)];
|
||||
};
|
||||
|
||||
inline const rct_sprite_bounds& GetSpriteBounds(
|
||||
PeepSpriteType spriteType, PeepActionSpriteType actionSpriteType = PeepActionSpriteType::None)
|
||||
{
|
||||
return g_peep_animation_entries[EnumValue(spriteType)].sprite_bounds[EnumValue(actionSpriteType)];
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1409,10 +1409,10 @@ private:
|
||||
dst->ActionSpriteType = static_cast<PeepActionSpriteType>(src->action_sprite_type);
|
||||
dst->ActionFrame = src->action_frame;
|
||||
|
||||
const rct_sprite_bounds* spriteBounds = g_peep_animation_entries[EnumValue(dst->SpriteType)].sprite_bounds;
|
||||
dst->sprite_width = spriteBounds[EnumValue(dst->ActionSpriteType)].sprite_width;
|
||||
dst->sprite_height_negative = spriteBounds[EnumValue(dst->ActionSpriteType)].sprite_height_negative;
|
||||
dst->sprite_height_positive = spriteBounds[EnumValue(dst->ActionSpriteType)].sprite_height_positive;
|
||||
const rct_sprite_bounds* spriteBounds = &GetSpriteBounds(dst->SpriteType, dst->ActionSpriteType);
|
||||
dst->sprite_width = spriteBounds->sprite_width;
|
||||
dst->sprite_height_negative = spriteBounds->sprite_height_negative;
|
||||
dst->sprite_height_positive = spriteBounds->sprite_height_positive;
|
||||
|
||||
dst->MoveTo({ src->x, src->y, src->z });
|
||||
dst->Invalidate2();
|
||||
|
||||
Reference in New Issue
Block a user