mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-24 23:34:37 +01:00
fix ride type sorting and add water preview
This commit is contained in:
@@ -27,6 +27,7 @@ extern "C"
|
||||
|
||||
interface IStream;
|
||||
struct ObjectRepositoryItem;
|
||||
struct rct_drawpixelinfo;
|
||||
|
||||
interface IReadObjectContext
|
||||
{
|
||||
@@ -60,6 +61,8 @@ public:
|
||||
virtual void Load() abstract;
|
||||
virtual void Unload() abstract;
|
||||
|
||||
virtual void DrawPreview(rct_drawpixelinfo * dpi) const { }
|
||||
|
||||
virtual uint8 GetObjectType() const { return _objectEntry.flags & 0x0F; }
|
||||
virtual const utf8 * GetName() const abstract;
|
||||
|
||||
|
||||
@@ -812,4 +812,10 @@ extern "C"
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
void object_draw_preview(const void * object, rct_drawpixelinfo * dpi)
|
||||
{
|
||||
const Object * baseObject = (const Object *)object;
|
||||
baseObject->DrawPreview(dpi);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -83,5 +83,6 @@ void object_repository_unload(size_t itemIndex);
|
||||
|
||||
void object_delete(void * object);
|
||||
const utf8 * object_get_description(const void * object);
|
||||
void object_draw_preview(const void * object, rct_drawpixelinfo * dpi);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -59,6 +59,15 @@ void WaterObject::Unload()
|
||||
language_free_object_string(_legacyType.string_idx);
|
||||
}
|
||||
|
||||
void WaterObject::DrawPreview(rct_drawpixelinfo * dpi) const
|
||||
{
|
||||
// Write (no image)
|
||||
int x = dpi->width / 2;
|
||||
int y = dpi->height / 2;
|
||||
gfx_draw_string_centred(dpi, 3326, x, y, 0, nullptr);
|
||||
}
|
||||
|
||||
|
||||
const utf8 * WaterObject::GetName() const
|
||||
{
|
||||
const utf8 * name = GetStringTable()->GetString(OBJ_STRING_ID_NAME);
|
||||
|
||||
@@ -37,5 +37,7 @@ public:
|
||||
void Load() override;
|
||||
void Unload() override;
|
||||
|
||||
void DrawPreview(rct_drawpixelinfo * dpi) const override;
|
||||
|
||||
const utf8 * GetName() const override;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user