SERIALIZED_FIELD_WITHOUT_GETTER_SETTER(Option, std::shared_ptr< ParticleOption >)
Particle & SetParticleType(const ProtocolCraft::ParticleType particle_type_)
SERIALIZED_FIELD_WITHOUT_GETTER_SETTER(ParticleType, Internal::DiffType< ProtocolCraft::ParticleType, VarInt >)
DECLARE_READ_WRITE_SERIALIZE
std::string_view GetName() const