diff --git a/src/openrct2-ui/windows/TitleCommandEditor.cpp b/src/openrct2-ui/windows/TitleCommandEditor.cpp index 64121664e2..455e4039b9 100644 --- a/src/openrct2-ui/windows/TitleCommandEditor.cpp +++ b/src/openrct2-ui/windows/TitleCommandEditor.cpp @@ -662,7 +662,7 @@ static void window_title_command_editor_tool_down( validSprite = true; format_string(command.SpriteName, USER_STRING_MAX_LENGTH, STR_SHOP_ITEM_SINGULAR_BALLOON, nullptr); } - else if (info.sprite->IsDuck()) + else if (info.sprite->generic.Is()) { validSprite = true; format_string(command.SpriteName, USER_STRING_MAX_LENGTH, STR_DUCK, nullptr); diff --git a/src/openrct2/world/Duck.cpp b/src/openrct2/world/Duck.cpp index bd737c4b2a..1a04b58b8e 100644 --- a/src/openrct2/world/Duck.cpp +++ b/src/openrct2/world/Duck.cpp @@ -79,15 +79,10 @@ template<> bool SpriteBase::Is() const return sprite_identifier == SPRITE_IDENTIFIER_MISC && type == SPRITE_MISC_DUCK; } -bool rct_sprite::IsDuck() -{ - return this->duck.sprite_identifier == SPRITE_IDENTIFIER_MISC && this->duck.type == SPRITE_MISC_DUCK; -} - Duck* rct_sprite::AsDuck() { Duck* result = nullptr; - if (IsDuck()) + if (generic.Is()) { return reinterpret_cast(this); } diff --git a/src/openrct2/world/Sprite.cpp b/src/openrct2/world/Sprite.cpp index a14e49a07c..094f8ddc55 100644 --- a/src/openrct2/world/Sprite.cpp +++ b/src/openrct2/world/Sprite.cpp @@ -886,7 +886,7 @@ uint16_t remove_floating_sprites() sprite_misc_update(rctSprite); removed++; } - else if (rctSprite->IsDuck()) + else if (rctSprite->generic.Is()) { if (rctSprite->AsDuck()->IsFlying()) { diff --git a/src/openrct2/world/Sprite.h b/src/openrct2/world/Sprite.h index c72d3ca494..c1cac013b1 100644 --- a/src/openrct2/world/Sprite.h +++ b/src/openrct2/world/Sprite.h @@ -137,7 +137,6 @@ union rct_sprite CrashSplashParticle crash_splash; SteamParticle steam_particle; - bool IsDuck(); bool IsMoneyEffect(); bool IsPeep() const; Balloon* AsBalloon();