1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-29 09:44:52 +01:00
Files
OpenRCT2/src/openrct2/entity/Litter.h
2024-12-31 20:30:04 +01:00

48 lines
1.3 KiB
C++

/*****************************************************************************
* Copyright (c) 2014-2025 OpenRCT2 developers
*
* For a complete list of all authors, please refer to contributors.md
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
*
* OpenRCT2 is licensed under the GNU General Public License version 3.
*****************************************************************************/
#pragma once
#include "../localisation/StringIdType.h"
#include "EntityBase.h"
class DataSerialiser;
struct CoordsXYZ;
struct CoordsXYZD;
struct PaintSession;
struct Litter : EntityBase
{
enum class Type : uint8_t
{
Vomit,
VomitAlt,
EmptyCan,
Rubbish,
BurgerBox,
EmptyCup,
EmptyBox,
EmptyBottle,
EmptyBowlRed,
EmptyDrinkCarton,
EmptyJuiceCup,
EmptyBowlBlue,
};
static constexpr auto cEntityType = EntityType::Litter;
Type SubType;
uint32_t creationTick;
static void Create(const CoordsXYZD& litterPos, Type type);
static void RemoveAt(const CoordsXYZ& litterPos);
void Serialise(DataSerialiser& stream);
StringId GetName() const;
uint32_t GetAge() const;
void Paint(PaintSession& session, int32_t imageDirection) const;
};