[package]
name = "rantz_suite"
version = "1.5.6"
readme = "README.md"
description = "A combined suite of tools provided by Rantz for use with the Bevy game engine."
authors.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true
keywords.workspace = true
categories.workspace = true

[dependencies]
bevy = { workspace = true, optional = true }
rantz_spatial2d = { workspace = true, features = ["serde"], optional = true }
rantz_random = { workspace = true, optional = true }
rantz_camera2d = { workspace = true, optional = true }
rantz_proto = { workspace = true, optional = true }
rantz_cereal = { workspace = true, optional = true }

[features]
default = ["plugin", "spatial2d", "random", "camera2d", "proto", "cereal"]
plugin = ["dep:bevy"]
spatial2d = ["rantz_spatial2d"]
random = ["rantz_random", "rantz_spatial2d/random"]
camera2d = ["rantz_camera2d"]
proto = ["rantz_proto"]
cereal = ["rantz_cereal"]
progress = ["proto", "cereal", "proto_progress", "cereal_progress"]
proto_progress = ["rantz_proto/progress_tracking"]
cereal_progress = ["rantz_cereal/progress_tracking"]

# Additional prototype formats
all_asset_loaders = [
  "rantz_proto/all_asset_loaders",
  "rantz_cereal/all_asset_loaders",
]
toml = ["rantz_proto/toml", "rantz_cereal/toml"]
yaml = ["rantz_proto/yaml", "rantz_cereal/yaml"]
json = ["rantz_proto/json", "rantz_cereal/json"]
msgpack = ["rantz_proto/msgpack", "rantz_cereal/msgpack"]
xml = ["rantz_proto/xml", "rantz_cereal/xml"]
csv = ["rantz_proto/csv", "rantz_cereal/csv"]

[lints]
workspace = true
