mirror of
https://github.com/mat-1/azalea.git
synced 2024-09-19 22:52:32 +00:00
merge main
This commit is contained in:
commit
8be3921ad4
34 changed files with 324 additions and 239 deletions
186
Cargo.lock
generated
186
Cargo.lock
generated
|
@ -121,7 +121,7 @@ checksum = "0e97ce7de6cf12de5d7226c73f5ba9811622f4db3a5b91b55c53e987e5f91cba"
|
|||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.15",
|
||||
"syn 2.0.16",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -138,7 +138,7 @@ checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842"
|
|||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.15",
|
||||
"syn 2.0.16",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -160,7 +160,7 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
|
|||
|
||||
[[package]]
|
||||
name = "azalea"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
|
@ -177,6 +177,7 @@ dependencies = [
|
|||
"azalea-world",
|
||||
"bevy_app",
|
||||
"bevy_ecs",
|
||||
"bevy_log",
|
||||
"bevy_tasks",
|
||||
"derive_more",
|
||||
"futures",
|
||||
|
@ -193,7 +194,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-auth"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-buf",
|
||||
"azalea-crypto",
|
||||
|
@ -211,7 +212,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-block"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-block-macros",
|
||||
"azalea-buf",
|
||||
|
@ -220,7 +221,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-block-macros"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
|
@ -229,7 +230,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-brigadier"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-buf",
|
||||
"azalea-chat",
|
||||
|
@ -238,7 +239,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-buf"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-buf-macros",
|
||||
"byteorder",
|
||||
|
@ -250,7 +251,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-buf-macros"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
|
@ -259,7 +260,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-chat"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-buf",
|
||||
"azalea-language",
|
||||
|
@ -271,7 +272,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-client"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
|
@ -304,7 +305,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-core"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-buf",
|
||||
"azalea-chat",
|
||||
|
@ -319,7 +320,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-crypto"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"aes",
|
||||
"azalea-buf",
|
||||
|
@ -334,7 +335,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-inventory"
|
||||
version = "0.1.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-buf",
|
||||
"azalea-inventory-macros",
|
||||
|
@ -344,7 +345,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-inventory-macros"
|
||||
version = "0.1.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
|
@ -353,7 +354,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-language"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"once_cell",
|
||||
"serde",
|
||||
|
@ -362,7 +363,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-nbt"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-buf",
|
||||
"byteorder",
|
||||
|
@ -380,7 +381,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-physics"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-block",
|
||||
"azalea-core",
|
||||
|
@ -397,7 +398,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-protocol"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-compression",
|
||||
|
@ -435,7 +436,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-protocol-macros"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
|
@ -444,7 +445,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-registry"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-buf",
|
||||
"azalea-registry-macros",
|
||||
|
@ -453,7 +454,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-registry-macros"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
|
@ -462,7 +463,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "azalea-world"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
dependencies = [
|
||||
"azalea-block",
|
||||
"azalea-buf",
|
||||
|
@ -729,9 +730,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "bumpalo"
|
||||
version = "3.12.1"
|
||||
version = "3.12.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9b1ce199063694f33ffb7dd4e0ee620741495c32833cde5aa08f02a0bf96f0c8"
|
||||
checksum = "3c6ed94e98ecff0c12dd1b04c15ec0d7d9458ca8fe806cea6f12954efe74c63b"
|
||||
|
||||
[[package]]
|
||||
name = "bytemuck"
|
||||
|
@ -805,9 +806,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "ciborium"
|
||||
version = "0.2.0"
|
||||
version = "0.2.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b0c137568cc60b904a7724001b35ce2630fd00d5d84805fbb608ab89509d788f"
|
||||
checksum = "effd91f6c78e5a4ace8a5d3c0b6bfaec9e2baaef55f3efc00e45fb2e477ee926"
|
||||
dependencies = [
|
||||
"ciborium-io",
|
||||
"ciborium-ll",
|
||||
|
@ -816,15 +817,15 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "ciborium-io"
|
||||
version = "0.2.0"
|
||||
version = "0.2.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "346de753af073cc87b52b2083a506b38ac176a44cfb05497b622e27be899b369"
|
||||
checksum = "cdf919175532b369853f5d5e20b26b43112613fd6fe7aee757e35f7a44642656"
|
||||
|
||||
[[package]]
|
||||
name = "ciborium-ll"
|
||||
version = "0.2.0"
|
||||
version = "0.2.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "213030a2b5a4e0c0892b6652260cf6ccac84827b83a85a534e178e3906c4cf1b"
|
||||
checksum = "defaa24ecc093c77630e6c15e17c51f5e187bf35ee514f4e2d67baaa96dae22b"
|
||||
dependencies = [
|
||||
"ciborium-io",
|
||||
"half",
|
||||
|
@ -1220,7 +1221,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
|
|||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.15",
|
||||
"syn 2.0.16",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -1319,9 +1320,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "h2"
|
||||
version = "0.3.18"
|
||||
version = "0.3.19"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "17f8a914c2987b688368b5138aa05321db91f4090cf26118185672ad588bce21"
|
||||
checksum = "d357c7ae988e7d2182f7d7871d0b963962420b0678b0997ce7de72001aeab782"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"fnv",
|
||||
|
@ -1442,9 +1443,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "hyper-rustls"
|
||||
version = "0.23.2"
|
||||
version = "0.24.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c"
|
||||
checksum = "0646026eb1b3eea4cd9ba47912ea5ce9cc07713d105b1a14698f4e6433d348b7"
|
||||
dependencies = [
|
||||
"http",
|
||||
"hyper",
|
||||
|
@ -1528,9 +1529,9 @@ checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
|
|||
|
||||
[[package]]
|
||||
name = "js-sys"
|
||||
version = "0.3.61"
|
||||
version = "0.3.63"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730"
|
||||
checksum = "2f37a4a5928311ac501dee68b3c7613a1037d0edb30c8e5427bd832d55d1b790"
|
||||
dependencies = [
|
||||
"wasm-bindgen",
|
||||
]
|
||||
|
@ -1543,9 +1544,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
|||
|
||||
[[package]]
|
||||
name = "libc"
|
||||
version = "0.2.142"
|
||||
version = "0.2.144"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6a987beff54b60ffa6d51982e1aa1146bc42f19bd26be28b0586f252fccf5317"
|
||||
checksum = "2b00cc1c228a6782d0f076e7b232802e0c5689d41bb5df366f2a6b6621cfdfe1"
|
||||
|
||||
[[package]]
|
||||
name = "libm"
|
||||
|
@ -1904,18 +1905,18 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "proc-macro2"
|
||||
version = "1.0.56"
|
||||
version = "1.0.57"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435"
|
||||
checksum = "c4ec6d5fe0b140acb27c9a0444118cf55bfbb4e0b259739429abb4521dd67c16"
|
||||
dependencies = [
|
||||
"unicode-ident",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "quote"
|
||||
version = "1.0.26"
|
||||
version = "1.0.27"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
|
||||
checksum = "8f4f29d145265ec1c483c7c654450edde0bfe043d3938d6972630663356d9500"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
]
|
||||
|
@ -2015,9 +2016,9 @@ checksum = "a5996294f19bd3aae0453a862ad728f60e6600695733dd5df01da90c54363a3c"
|
|||
|
||||
[[package]]
|
||||
name = "reqwest"
|
||||
version = "0.11.17"
|
||||
version = "0.11.18"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "13293b639a097af28fc8a90f22add145a9c954e49d77da06263d58cf44d5fb91"
|
||||
checksum = "cde824a14b7c14f85caff81225f411faacc04a2013f41670f41443742b1c1c55"
|
||||
dependencies = [
|
||||
"base64",
|
||||
"bytes",
|
||||
|
@ -2101,14 +2102,14 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "rustls"
|
||||
version = "0.20.8"
|
||||
version = "0.21.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f"
|
||||
checksum = "c911ba11bc8433e811ce56fde130ccf32f5127cab0e0194e9c68c5a5b671791e"
|
||||
dependencies = [
|
||||
"log",
|
||||
"ring",
|
||||
"rustls-webpki",
|
||||
"sct",
|
||||
"webpki",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -2120,6 +2121,16 @@ dependencies = [
|
|||
"base64",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rustls-webpki"
|
||||
version = "0.100.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d6207cd5ed3d8dca7816f8f3725513a34609c0c765bf652b8c3cb4cfd87db46b"
|
||||
dependencies = [
|
||||
"ring",
|
||||
"untrusted",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rustversion"
|
||||
version = "1.0.12"
|
||||
|
@ -2165,9 +2176,9 @@ checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed"
|
|||
|
||||
[[package]]
|
||||
name = "serde"
|
||||
version = "1.0.160"
|
||||
version = "1.0.163"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bb2f3770c8bce3bcda7e149193a069a0f4365bda1fa5cd88e03bca26afc1216c"
|
||||
checksum = "2113ab51b87a539ae008b5c6c02dc020ffa39afd2d83cffcb3f4eb2722cebec2"
|
||||
dependencies = [
|
||||
"serde_derive",
|
||||
]
|
||||
|
@ -2183,13 +2194,13 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "serde_derive"
|
||||
version = "1.0.160"
|
||||
version = "1.0.163"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "291a097c63d8497e00160b166a967a4a79c64f3facdd01cbd7502231688d77df"
|
||||
checksum = "8c805777e3930c8883389c602315a24224bcc738b63905ef87cd1420353ea93e"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.15",
|
||||
"syn 2.0.16",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -2309,9 +2320,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "syn"
|
||||
version = "2.0.15"
|
||||
version = "2.0.16"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822"
|
||||
checksum = "a6f671d4b5ffdb8eadec19c0ae67fe2639df8684bd7bc4b83d986b8db549cf01"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
|
@ -2350,14 +2361,14 @@ checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
|
|||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.15",
|
||||
"syn 2.0.16",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "thread-id"
|
||||
version = "4.0.0"
|
||||
version = "4.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5fdfe0627923f7411a43ec9ec9c39c3a9b4151be313e0922042581fb6c9b717f"
|
||||
checksum = "3ee93aa2b8331c0fec9091548843f2c90019571814057da3b783f9de09349d73"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"redox_syscall",
|
||||
|
@ -2401,9 +2412,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
|
|||
|
||||
[[package]]
|
||||
name = "tokio"
|
||||
version = "1.28.0"
|
||||
version = "1.28.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c3c786bf8134e5a3a166db9b29ab8f48134739014a3eca7bc6bfa95d673b136f"
|
||||
checksum = "0aa32867d44e6f2ce3385e89dceb990188b8bb0fb25b0cf576647a6f98ac5105"
|
||||
dependencies = [
|
||||
"autocfg",
|
||||
"bytes",
|
||||
|
@ -2426,18 +2437,17 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
|
|||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.15",
|
||||
"syn 2.0.16",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tokio-rustls"
|
||||
version = "0.23.4"
|
||||
version = "0.24.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59"
|
||||
checksum = "e0d409377ff5b1e3ca6437aa86c1eb7d40c134bfec254e44c830defa92669db5"
|
||||
dependencies = [
|
||||
"rustls",
|
||||
"tokio",
|
||||
"webpki",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -2497,14 +2507,14 @@ checksum = "0f57e3ca2a01450b1a921183a9c9cbfda207fd822cef4ccb00a65402cbba7a74"
|
|||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.15",
|
||||
"syn 2.0.16",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tracing-core"
|
||||
version = "0.1.30"
|
||||
version = "0.1.31"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a"
|
||||
checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a"
|
||||
dependencies = [
|
||||
"once_cell",
|
||||
"valuable",
|
||||
|
@ -2645,9 +2655,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "uuid"
|
||||
version = "1.3.2"
|
||||
version = "1.3.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4dad5567ad0cf5b760e5665964bec1b47dfd077ba8a2544b513f3556d3d239a2"
|
||||
checksum = "345444e32442451b267fc254ae85a209c64be56d2890e601a0c37ff0c3c5ecd2"
|
||||
dependencies = [
|
||||
"getrandom",
|
||||
"serde",
|
||||
|
@ -2710,9 +2720,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
|
|||
|
||||
[[package]]
|
||||
name = "wasm-bindgen"
|
||||
version = "0.2.84"
|
||||
version = "0.2.86"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b"
|
||||
checksum = "5bba0e8cb82ba49ff4e229459ff22a191bbe9a1cb3a341610c9c33efc27ddf73"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"wasm-bindgen-macro",
|
||||
|
@ -2720,24 +2730,24 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wasm-bindgen-backend"
|
||||
version = "0.2.84"
|
||||
version = "0.2.86"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9"
|
||||
checksum = "19b04bc93f9d6bdee709f6bd2118f57dd6679cf1176a1af464fca3ab0d66d8fb"
|
||||
dependencies = [
|
||||
"bumpalo",
|
||||
"log",
|
||||
"once_cell",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 1.0.109",
|
||||
"syn 2.0.16",
|
||||
"wasm-bindgen-shared",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "wasm-bindgen-futures"
|
||||
version = "0.4.34"
|
||||
version = "0.4.36"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f219e0d211ba40266969f6dbdd90636da12f75bee4fc9d6c23d1260dadb51454"
|
||||
checksum = "2d1985d03709c53167ce907ff394f5316aa22cb4e12761295c5dc57dacb6297e"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"js-sys",
|
||||
|
@ -2747,9 +2757,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wasm-bindgen-macro"
|
||||
version = "0.2.84"
|
||||
version = "0.2.86"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5"
|
||||
checksum = "14d6b024f1a526bb0234f52840389927257beb670610081360e5a03c5df9c258"
|
||||
dependencies = [
|
||||
"quote",
|
||||
"wasm-bindgen-macro-support",
|
||||
|
@ -2757,28 +2767,28 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "wasm-bindgen-macro-support"
|
||||
version = "0.2.84"
|
||||
version = "0.2.86"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
|
||||
checksum = "e128beba882dd1eb6200e1dc92ae6c5dbaa4311aa7bb211ca035779e5efc39f8"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 1.0.109",
|
||||
"syn 2.0.16",
|
||||
"wasm-bindgen-backend",
|
||||
"wasm-bindgen-shared",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "wasm-bindgen-shared"
|
||||
version = "0.2.84"
|
||||
version = "0.2.86"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
|
||||
checksum = "ed9d5b4305409d1fc9482fee2d7f9bcbf24b3972bf59817ef757e23982242a93"
|
||||
|
||||
[[package]]
|
||||
name = "web-sys"
|
||||
version = "0.3.61"
|
||||
version = "0.3.63"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e33b99f4b23ba3eec1a53ac264e35a755f00e966e0065077d6027c0f575b0b97"
|
||||
checksum = "3bdd9ef4e984da1187bf8110c5cf5b845fbc87a23602cdf912386a76fcd3a7c2"
|
||||
dependencies = [
|
||||
"js-sys",
|
||||
"wasm-bindgen",
|
||||
|
@ -2968,9 +2978,9 @@ checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
|
|||
|
||||
[[package]]
|
||||
name = "winnow"
|
||||
version = "0.4.4"
|
||||
version = "0.4.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5617da7e1f97bf363947d767b91aaf3c2bbc19db7fda9c65af1278713d58e0a2"
|
||||
checksum = "61de7bac303dc551fe038e2b3cef0f571087a47571ea6e79a87692ac99b99699"
|
||||
dependencies = [
|
||||
"memchr",
|
||||
]
|
||||
|
|
|
@ -4,13 +4,13 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-auth"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-auth"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.6.0" }
|
||||
azalea-crypto = { path = "../azalea-crypto", version = "^0.6.0" }
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.7.0" }
|
||||
azalea-crypto = { path = "../azalea-crypto", version = "^0.7.0" }
|
||||
chrono = { version = "0.4.22", default-features = false }
|
||||
log = "0.4.17"
|
||||
num-bigint = "0.4.3"
|
||||
|
|
|
@ -4,13 +4,13 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-block"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-block"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
[lib]
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
azalea-block-macros = { path = "./azalea-block-macros", version = "^0.6.0" }
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.6.0" }
|
||||
azalea-registry = { version = "0.6.0", path = "../azalea-registry" }
|
||||
azalea-block-macros = { path = "./azalea-block-macros", version = "^0.7.0" }
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.7.0" }
|
||||
azalea-registry = { version = "0.7.0", path = "../azalea-registry" }
|
||||
|
|
|
@ -4,7 +4,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-block-macros"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-block/azalea-block-macros"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
[lib]
|
||||
proc-macro = true
|
||||
|
|
|
@ -4,13 +4,13 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-brigadier"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-brigadier"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
azalea-buf = {path = "../azalea-buf", version = "^0.6.0", optional = true}
|
||||
azalea-chat = {path = "../azalea-chat", version = "^0.6.0", optional = true}
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.7.0", optional = true }
|
||||
azalea-chat = { path = "../azalea-chat", version = "^0.7.0", optional = true }
|
||||
parking_lot = "0.12.1"
|
||||
|
||||
[features]
|
||||
|
|
|
@ -4,15 +4,15 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-buf"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-buf"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
azalea-buf-macros = {path = "./azalea-buf-macros", version = "^0.6.0" }
|
||||
azalea-buf-macros = { path = "./azalea-buf-macros", version = "^0.7.0" }
|
||||
byteorder = "^1.4.3"
|
||||
log = "0.4.17"
|
||||
serde_json = {version = "^1.0", optional = true}
|
||||
serde_json = { version = "^1.0", optional = true }
|
||||
thiserror = "1.0.37"
|
||||
uuid = "^1.1.2"
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-buf-macros"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-buf"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
[lib]
|
||||
proc-macro = true
|
||||
|
@ -13,4 +13,4 @@ proc-macro = true
|
|||
[dependencies]
|
||||
proc-macro2 = "^1.0.36"
|
||||
quote = "^1.0.10"
|
||||
syn = {version = "^1.0.82", features = ["extra-traits"]}
|
||||
syn = { version = "^1.0.82", features = ["extra-traits"] }
|
||||
|
|
|
@ -4,7 +4,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-chat"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-chat"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
|
@ -14,8 +14,8 @@ default = ["azalea-buf"]
|
|||
[dependencies]
|
||||
azalea-buf = { path = "../azalea-buf", features = [
|
||||
"serde_json",
|
||||
], version = "^0.6.0", optional = true }
|
||||
azalea-language = { path = "../azalea-language", version = "^0.6.0" }
|
||||
], version = "^0.7.0", optional = true }
|
||||
azalea-language = { path = "../azalea-language", version = "^0.7.0" }
|
||||
log = "0.4.17"
|
||||
once_cell = "1.16.0"
|
||||
serde = { version = "^1.0", features = ["derive"] }
|
||||
|
|
|
@ -4,28 +4,28 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-client"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-client"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
anyhow = "1.0.59"
|
||||
async-trait = "0.1.58"
|
||||
azalea-auth = { path = "../azalea-auth", version = "0.6.0" }
|
||||
azalea-block = { path = "../azalea-block", version = "0.6.0" }
|
||||
azalea-chat = { path = "../azalea-chat", version = "0.6.0" }
|
||||
azalea-core = { path = "../azalea-core", version = "0.6.0" }
|
||||
azalea-crypto = { path = "../azalea-crypto", version = "0.6.0" }
|
||||
azalea-physics = { path = "../azalea-physics", version = "0.6.0" }
|
||||
azalea-protocol = { path = "../azalea-protocol", version = "0.6.0" }
|
||||
azalea-registry = { path = "../azalea-registry", version = "0.6.0" }
|
||||
azalea-world = { path = "../azalea-world", version = "0.6.0" }
|
||||
azalea-auth = { path = "../azalea-auth", version = "0.7.0" }
|
||||
azalea-block = { path = "../azalea-block", version = "0.7.0" }
|
||||
azalea-chat = { path = "../azalea-chat", version = "0.7.0" }
|
||||
azalea-core = { path = "../azalea-core", version = "0.7.0" }
|
||||
azalea-crypto = { path = "../azalea-crypto", version = "0.7.0" }
|
||||
azalea-physics = { path = "../azalea-physics", version = "0.7.0" }
|
||||
azalea-protocol = { path = "../azalea-protocol", version = "0.7.0" }
|
||||
azalea-registry = { path = "../azalea-registry", version = "0.7.0" }
|
||||
azalea-world = { path = "../azalea-world", version = "0.7.0" }
|
||||
bevy_app = "0.10.0"
|
||||
bevy_ecs = "0.10.0"
|
||||
bevy_log = "0.10.0"
|
||||
bevy_tasks = "0.10.0"
|
||||
bevy_time = "0.10.0"
|
||||
azalea-inventory = { path = "../azalea-inventory", version = "0.1.0" }
|
||||
azalea-inventory = { path = "../azalea-inventory", version = "0.7.0" }
|
||||
derive_more = { version = "0.99.17", features = ["deref", "deref_mut"] }
|
||||
futures = "0.3.25"
|
||||
log = "0.4.17"
|
||||
|
|
|
@ -108,6 +108,16 @@ impl ChatPacket {
|
|||
overlay: false,
|
||||
}))
|
||||
}
|
||||
|
||||
/// Whether this message was sent with /msg (or aliases). It works by
|
||||
/// checking the translation key, so it won't work on servers that use their
|
||||
/// own whisper system.
|
||||
pub fn is_whisper(&self) -> bool {
|
||||
match self.message() {
|
||||
FormattedText::Text(_) => false,
|
||||
FormattedText::Translatable(t) => t.key == "commands.message.display.incoming",
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl Client {
|
||||
|
|
|
@ -221,7 +221,10 @@ impl Client {
|
|||
|
||||
// An event that causes the schedule to run. This is only used internally.
|
||||
let (run_schedule_sender, run_schedule_receiver) = mpsc::unbounded_channel();
|
||||
let app = init_ecs_app();
|
||||
|
||||
let mut app = App::new();
|
||||
app.add_plugins(DefaultPlugins);
|
||||
|
||||
let ecs_lock = start_ecs(app, run_schedule_receiver, run_schedule_sender.clone());
|
||||
|
||||
Self::start_client(
|
||||
|
@ -583,35 +586,10 @@ impl Plugin for AzaleaPlugin {
|
|||
}
|
||||
}
|
||||
|
||||
/// Create the [`App`]. This won't actually run anything yet.
|
||||
/// Start running the ECS loop!
|
||||
///
|
||||
/// Note that you usually only need this if you're creating a client manually,
|
||||
/// otherwise use [`Client::join`].
|
||||
///
|
||||
/// Use [`start_ecs`] to actually start running the app and then
|
||||
/// [`Client::start_client`] to add a client to the ECS and make it join a
|
||||
/// server.
|
||||
#[doc(hidden)]
|
||||
pub fn init_ecs_app() -> App {
|
||||
// if you get an error right here that means you're doing something with locks
|
||||
// wrong read the error to see where the issue is
|
||||
// you might be able to just drop the lock or put it in its own scope to fix
|
||||
|
||||
let mut app = App::new();
|
||||
|
||||
app.edit_schedule(CoreSchedule::Main, |schedule| {
|
||||
schedule.set_build_settings(ScheduleBuildSettings {
|
||||
ambiguity_detection: LogLevel::Warn,
|
||||
..Default::default()
|
||||
});
|
||||
});
|
||||
|
||||
app.add_plugins(DefaultPlugins);
|
||||
app
|
||||
}
|
||||
|
||||
/// Start running the ECS loop! You must create your `App` from [`init_ecs_app`]
|
||||
/// first.
|
||||
/// You can create your app with `App::new()`, but don't forget to add
|
||||
/// [`DefaultPlugins`].
|
||||
#[doc(hidden)]
|
||||
pub fn start_ecs(
|
||||
mut app: App,
|
||||
|
@ -698,6 +676,18 @@ impl Plugin for TickBroadcastPlugin {
|
|||
}
|
||||
}
|
||||
|
||||
pub struct AmbiguityLoggerPlugin;
|
||||
impl Plugin for AmbiguityLoggerPlugin {
|
||||
fn build(&self, app: &mut App) {
|
||||
app.edit_schedule(CoreSchedule::Main, |schedule| {
|
||||
schedule.set_build_settings(ScheduleBuildSettings {
|
||||
ambiguity_detection: LogLevel::Warn,
|
||||
..Default::default()
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/// This plugin group will add all the default plugins necessary for Azalea to
|
||||
/// work.
|
||||
pub struct DefaultPlugins;
|
||||
|
@ -706,6 +696,7 @@ impl PluginGroup for DefaultPlugins {
|
|||
fn build(self) -> PluginGroupBuilder {
|
||||
PluginGroupBuilder::start::<Self>()
|
||||
.add(LogPlugin::default())
|
||||
.add(AmbiguityLoggerPlugin)
|
||||
.add(TimePlugin::default())
|
||||
.add(PacketHandlerPlugin)
|
||||
.add(AzaleaPlugin)
|
||||
|
|
|
@ -73,7 +73,7 @@ pub struct CurrentSequenceNumber(u32);
|
|||
#[derive(Component, Clone, Debug, Deref, DerefMut)]
|
||||
pub struct HitResultComponent(BlockHitResult);
|
||||
|
||||
fn handle_block_interact_event(
|
||||
pub fn handle_block_interact_event(
|
||||
mut events: EventReader<BlockInteractEvent>,
|
||||
mut query: Query<(
|
||||
&LocalPlayer,
|
||||
|
|
|
@ -628,7 +628,7 @@ fn handle_container_close_event(
|
|||
pub struct ClientSideCloseContainerEvent {
|
||||
pub entity: Entity,
|
||||
}
|
||||
fn handle_client_side_close_container_event(
|
||||
pub fn handle_client_side_close_container_event(
|
||||
mut events: EventReader<ClientSideCloseContainerEvent>,
|
||||
mut query: Query<&mut InventoryComponent>,
|
||||
) {
|
||||
|
@ -645,7 +645,7 @@ pub struct ContainerClickEvent {
|
|||
pub window_id: u8,
|
||||
pub operation: ClickOperation,
|
||||
}
|
||||
fn handle_container_click_event(
|
||||
pub fn handle_container_click_event(
|
||||
mut events: EventReader<ContainerClickEvent>,
|
||||
mut query: Query<(&mut InventoryComponent, &LocalPlayer)>,
|
||||
) {
|
||||
|
|
|
@ -30,7 +30,7 @@ pub mod task_pool;
|
|||
|
||||
pub use account::{Account, AccountOpts};
|
||||
pub use client::{
|
||||
init_ecs_app, start_ecs, Client, ClientInformation, JoinError, JoinedClientBundle, TabList,
|
||||
start_ecs, Client, ClientInformation, DefaultPlugins, JoinError, JoinedClientBundle, TabList,
|
||||
TickBroadcast,
|
||||
};
|
||||
pub use events::Event;
|
||||
|
|
|
@ -4,7 +4,7 @@ use azalea_protocol::packets::game::serverbound_client_command_packet::{
|
|||
use bevy_app::{App, Plugin};
|
||||
use bevy_ecs::prelude::*;
|
||||
|
||||
use crate::LocalPlayer;
|
||||
use crate::local_player::{handle_send_packet_event, SendPacketEvent};
|
||||
|
||||
/// Tell the server that we're respawning.
|
||||
#[derive(Debug, Clone)]
|
||||
|
@ -17,22 +17,21 @@ pub struct RespawnPlugin;
|
|||
impl Plugin for RespawnPlugin {
|
||||
fn build(&self, app: &mut App) {
|
||||
app.add_event::<PerformRespawnEvent>()
|
||||
.add_system(perform_respawn);
|
||||
.add_system(perform_respawn.before(handle_send_packet_event));
|
||||
}
|
||||
}
|
||||
|
||||
pub fn perform_respawn(
|
||||
mut events: EventReader<PerformRespawnEvent>,
|
||||
mut query: Query<&mut LocalPlayer>,
|
||||
mut send_packets: EventWriter<SendPacketEvent>,
|
||||
) {
|
||||
for event in events.iter() {
|
||||
if let Ok(local_player) = query.get_mut(event.entity) {
|
||||
local_player.write_packet(
|
||||
ServerboundClientCommandPacket {
|
||||
send_packets.send(SendPacketEvent {
|
||||
entity: event.entity,
|
||||
packet: ServerboundClientCommandPacket {
|
||||
action: serverbound_client_command_packet::Action::PerformRespawn,
|
||||
}
|
||||
.get(),
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
12
azalea-core/Cargo.toml
Executable file → Normal file
12
azalea-core/Cargo.toml
Executable file → Normal file
|
@ -4,16 +4,16 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-core"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-core"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.6.0" }
|
||||
azalea-chat = { path = "../azalea-chat", version = "^0.6.0" }
|
||||
azalea-inventory = { version = "0.1.0", path = "../azalea-inventory" }
|
||||
azalea-nbt = { path = "../azalea-nbt", version = "^0.6.0" }
|
||||
azalea-registry = { path = "../azalea-registry", version = "^0.6.0" }
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.7.0" }
|
||||
azalea-chat = { path = "../azalea-chat", version = "^0.7.0" }
|
||||
azalea-inventory = { version = "0.7.0", path = "../azalea-inventory" }
|
||||
azalea-nbt = { path = "../azalea-nbt", version = "^0.7.0" }
|
||||
azalea-registry = { path = "../azalea-registry", version = "^0.7.0" }
|
||||
bevy_ecs = { version = "0.10.0", default-features = false, optional = true }
|
||||
num-traits = "0.2.15"
|
||||
serde = { version = "^1.0", optional = true }
|
||||
|
|
|
@ -3,23 +3,23 @@ description = "Cryptography features used in Minecraft."
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "azalea-crypto"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-crypto"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
aes = "0.8.1"
|
||||
azalea-buf = {path = "../azalea-buf", version = "^0.6.0" }
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.7.0" }
|
||||
cfb8 = "0.8.1"
|
||||
num-bigint = "^0.4.3"
|
||||
rand = {version = "^0.8.4", features = ["getrandom"]}
|
||||
rand = { version = "^0.8.4", features = ["getrandom"] }
|
||||
rsa_public_encrypt_pkcs1 = "0.4.0"
|
||||
sha-1 = "^0.10.0"
|
||||
uuid = "^1.1.2"
|
||||
|
||||
[dev-dependencies]
|
||||
criterion = {version = "^0.4.0", features = ["html_reports"]}
|
||||
criterion = { version = "^0.4.0", features = ["html_reports"] }
|
||||
|
||||
[[bench]]
|
||||
harness = false
|
||||
|
|
|
@ -1,12 +1,15 @@
|
|||
[package]
|
||||
description = "Representations of various inventory data structures in Minecraft."
|
||||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "azalea-inventory"
|
||||
version = "0.1.0"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-inventory-macros"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
azalea-buf = { version = "0.6.0", path = "../azalea-buf" }
|
||||
azalea-inventory-macros = { version = "0.1.0", path = "./azalea-inventory-macros" }
|
||||
azalea-nbt = { version = "0.6.0", path = "../azalea-nbt" }
|
||||
azalea-registry = { version = "0.6.0", path = "../azalea-registry" }
|
||||
azalea-buf = { version = "0.7.0", path = "../azalea-buf" }
|
||||
azalea-inventory-macros = { version = "0.7.0", path = "./azalea-inventory-macros" }
|
||||
azalea-nbt = { version = "0.7.0", path = "../azalea-nbt" }
|
||||
azalea-registry = { version = "0.7.0", path = "../azalea-registry" }
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
[package]
|
||||
name = "azalea-inventory-macros"
|
||||
version = "0.1.0"
|
||||
description = "Internal macros for azalea-inventory."
|
||||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "azalea-inventory-macros"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-inventory/azalea-inventory-macros"
|
||||
version = "0.7.0"
|
||||
|
||||
[lib]
|
||||
proc-macro = true
|
||||
|
|
|
@ -4,7 +4,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-language"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-language"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
|
|
|
@ -3,13 +3,13 @@ description = "A fast NBT serializer and deserializer."
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "azalea-nbt"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-nbt"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.6.0" }
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.7.0" }
|
||||
byteorder = "^1.4.3"
|
||||
compact_str = { version = "0.7.0", features = ["serde"] }
|
||||
enum-as-inner = "0.5.1"
|
||||
|
|
|
@ -4,16 +4,16 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-physics"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-physics"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
azalea-block = { path = "../azalea-block", version = "^0.6.0" }
|
||||
azalea-core = { path = "../azalea-core", version = "^0.6.0" }
|
||||
azalea-inventory = { version = "0.1.0", path = "../azalea-inventory" }
|
||||
azalea-registry = { path = "../azalea-registry", version = "^0.6.0" }
|
||||
azalea-world = { path = "../azalea-world", version = "^0.6.0" }
|
||||
azalea-block = { path = "../azalea-block", version = "^0.7.0" }
|
||||
azalea-core = { path = "../azalea-core", version = "^0.7.0" }
|
||||
azalea-inventory = { version = "0.7.0", path = "../azalea-inventory" }
|
||||
azalea-registry = { path = "../azalea-registry", version = "^0.7.0" }
|
||||
azalea-world = { path = "../azalea-world", version = "^0.7.0" }
|
||||
bevy_app = "0.10.0"
|
||||
bevy_ecs = "0.10.0"
|
||||
once_cell = "1.16.0"
|
||||
|
|
|
@ -4,7 +4,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-protocol"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-protocol"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
|
@ -14,24 +14,24 @@ async-compression = { version = "^0.3.8", features = [
|
|||
"zlib",
|
||||
], optional = true }
|
||||
async-recursion = "1.0.0"
|
||||
azalea-auth = { path = "../azalea-auth", version = "^0.6.0" }
|
||||
azalea-block = { path = "../azalea-block", default-features = false, version = "^0.6.0" }
|
||||
azalea-brigadier = { path = "../azalea-brigadier", version = "^0.6.0", features = [
|
||||
azalea-auth = { path = "../azalea-auth", version = "^0.7.0" }
|
||||
azalea-block = { path = "../azalea-block", default-features = false, version = "^0.7.0" }
|
||||
azalea-brigadier = { path = "../azalea-brigadier", version = "^0.7.0", features = [
|
||||
"azalea-buf",
|
||||
] }
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.6.0" }
|
||||
azalea-chat = { path = "../azalea-chat", version = "^0.6.0" }
|
||||
azalea-core = { path = "../azalea-core", optional = true, version = "^0.6.0", features = [
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.7.0" }
|
||||
azalea-chat = { path = "../azalea-chat", version = "^0.7.0" }
|
||||
azalea-core = { path = "../azalea-core", optional = true, version = "^0.7.0", features = [
|
||||
"serde",
|
||||
] }
|
||||
azalea-crypto = { path = "../azalea-crypto", version = "^0.6.0" }
|
||||
azalea-inventory = { version = "0.1.0", path = "../azalea-inventory" }
|
||||
azalea-nbt = { path = "../azalea-nbt", version = "^0.6.0", features = [
|
||||
azalea-crypto = { path = "../azalea-crypto", version = "^0.7.0" }
|
||||
azalea-inventory = { version = "0.7.0", path = "../azalea-inventory" }
|
||||
azalea-nbt = { path = "../azalea-nbt", version = "^0.7.0", features = [
|
||||
"serde",
|
||||
] }
|
||||
azalea-protocol-macros = { path = "./azalea-protocol-macros", version = "^0.6.0" }
|
||||
azalea-registry = { path = "../azalea-registry", version = "^0.6.0" }
|
||||
azalea-world = { path = "../azalea-world", version = "^0.6.0" }
|
||||
azalea-protocol-macros = { path = "./azalea-protocol-macros", version = "^0.7.0" }
|
||||
azalea-registry = { path = "../azalea-registry", version = "^0.7.0" }
|
||||
azalea-world = { path = "../azalea-world", version = "^0.7.0" }
|
||||
bevy_ecs = { version = "0.10.0", default-features = false }
|
||||
byteorder = "^1.4.3"
|
||||
bytes = "^1.1.0"
|
||||
|
|
|
@ -3,7 +3,7 @@ description = "Macros internally used in azalea-protocol."
|
|||
edition = "2021"
|
||||
license = "MIT"
|
||||
name = "azalea-protocol-macros"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-protocol/azalea-protocol-macros"
|
||||
|
||||
[lib]
|
||||
|
|
|
@ -4,14 +4,14 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-registry"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-registry"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.6.0" }
|
||||
azalea-registry-macros = { path = "./azalea-registry-macros", version = "^0.6.0" }
|
||||
serde = { version = "1.0.155", optional = true }
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.7.0" }
|
||||
azalea-registry-macros = { path = "./azalea-registry-macros", version = "^0.7.0" }
|
||||
serde = { version = "^1.0", optional = true }
|
||||
|
||||
[features]
|
||||
serde = ["dep:serde", "azalea-registry-macros/serde"]
|
||||
|
|
|
@ -4,7 +4,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-registry-macros"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-registry/azalea-registry-macros"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
[lib]
|
||||
proc-macro = true
|
||||
|
|
|
@ -4,20 +4,20 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea-world"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea-world"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
azalea-block = { path = "../azalea-block", default-features = false, version = "^0.6.0" }
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.6.0" }
|
||||
azalea-chat = { path = "../azalea-chat", version = "^0.6.0" }
|
||||
azalea-core = { path = "../azalea-core", version = "^0.6.0", features = [
|
||||
azalea-block = { path = "../azalea-block", default-features = false, version = "^0.7.0" }
|
||||
azalea-buf = { path = "../azalea-buf", version = "^0.7.0" }
|
||||
azalea-chat = { path = "../azalea-chat", version = "^0.7.0" }
|
||||
azalea-core = { path = "../azalea-core", version = "^0.7.0", features = [
|
||||
"bevy_ecs",
|
||||
] }
|
||||
azalea-inventory = { version = "0.1.0", path = "../azalea-inventory" }
|
||||
azalea-nbt = { path = "../azalea-nbt", version = "^0.6.0" }
|
||||
azalea-registry = { path = "../azalea-registry", version = "^0.6.0" }
|
||||
azalea-inventory = { version = "0.7.0", path = "../azalea-inventory" }
|
||||
azalea-nbt = { path = "../azalea-nbt", version = "^0.7.0" }
|
||||
azalea-registry = { path = "../azalea-registry", version = "^0.7.0" }
|
||||
bevy_app = "0.10.0"
|
||||
bevy_ecs = "0.10.0"
|
||||
derive_more = { version = "0.99.17", features = ["deref", "deref_mut"] }
|
||||
|
|
|
@ -4,7 +4,7 @@ edition = "2021"
|
|||
license = "MIT"
|
||||
name = "azalea"
|
||||
repository = "https://github.com/mat-1/azalea/tree/main/azalea"
|
||||
version = "0.6.0"
|
||||
version = "0.7.0"
|
||||
|
||||
[package.metadata.release]
|
||||
pre-release-replacements = [
|
||||
|
@ -14,17 +14,17 @@ pre-release-replacements = [
|
|||
[dependencies]
|
||||
anyhow = "^1.0.65"
|
||||
async-trait = "0.1.58"
|
||||
azalea-block = { version = "0.6.0", path = "../azalea-block" }
|
||||
azalea-chat = { version = "0.6.0", path = "../azalea-chat" }
|
||||
azalea-client = { version = "0.6.0", path = "../azalea-client" }
|
||||
azalea-core = { version = "0.6.0", path = "../azalea-core" }
|
||||
azalea-inventory = { version = "0.1.0", path = "../azalea-inventory" }
|
||||
azalea-physics = { version = "0.6.0", path = "../azalea-physics" }
|
||||
azalea-protocol = { version = "0.6.0", path = "../azalea-protocol" }
|
||||
azalea-registry = { version = "0.6.0", path = "../azalea-registry" }
|
||||
azalea-world = { version = "0.6.0", path = "../azalea-world" }
|
||||
azalea-auth = { version = "0.6.0", path = "../azalea-auth" }
|
||||
azalea-brigadier = { version = "0.6.0", path = "../azalea-brigadier" }
|
||||
azalea-block = { version = "0.7.0", path = "../azalea-block" }
|
||||
azalea-chat = { version = "0.7.0", path = "../azalea-chat" }
|
||||
azalea-client = { version = "0.7.0", path = "../azalea-client" }
|
||||
azalea-core = { version = "0.7.0", path = "../azalea-core" }
|
||||
azalea-inventory = { version = "0.7.0", path = "../azalea-inventory" }
|
||||
azalea-physics = { version = "0.7.0", path = "../azalea-physics" }
|
||||
azalea-protocol = { version = "0.7.0", path = "../azalea-protocol" }
|
||||
azalea-registry = { version = "0.7.0", path = "../azalea-registry" }
|
||||
azalea-world = { version = "0.7.0", path = "../azalea-world" }
|
||||
azalea-auth = { version = "0.7.0", path = "../azalea-auth" }
|
||||
azalea-brigadier = { version = "0.7.0", path = "../azalea-brigadier" }
|
||||
bevy_app = "0.10.0"
|
||||
bevy_ecs = "0.10.0"
|
||||
bevy_tasks = "0.10.0"
|
||||
|
@ -39,3 +39,4 @@ priority-queue = "1.3.0"
|
|||
thiserror = "^1.0.37"
|
||||
tokio = "^1.24.2"
|
||||
uuid = "1.2.2"
|
||||
bevy_log = "0.10.1"
|
||||
|
|
|
@ -15,7 +15,7 @@ Then, add one of the following lines to your Cargo.toml:
|
|||
Latest bleeding-edge version:
|
||||
`azalea = { git="https://github.com/mat-1/azalea" }`\
|
||||
Latest "stable" release:
|
||||
`azalea = "0.6.0"`
|
||||
`azalea = "0.7.0"`
|
||||
|
||||
## Optimization
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
use crate::app::{App, Plugin};
|
||||
use azalea_client::packet_handling::DeathEvent;
|
||||
use azalea_client::respawn::PerformRespawnEvent;
|
||||
use azalea_client::respawn::{perform_respawn, PerformRespawnEvent};
|
||||
use bevy_ecs::prelude::*;
|
||||
|
||||
/// A plugin that makes [`DeathEvent`]s send [`PerformRespawnEvent`]s.
|
||||
|
@ -8,7 +8,7 @@ use bevy_ecs::prelude::*;
|
|||
pub struct AutoRespawnPlugin;
|
||||
impl Plugin for AutoRespawnPlugin {
|
||||
fn build(&self, app: &mut App) {
|
||||
app.add_system(auto_respawn);
|
||||
app.add_system(auto_respawn.before(perform_respawn));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -14,12 +14,13 @@ use app::{App, Plugin, PluginGroup};
|
|||
pub use azalea_auth as auth;
|
||||
pub use azalea_block as blocks;
|
||||
pub use azalea_brigadier as brigadier;
|
||||
pub use azalea_chat::FormattedText;
|
||||
pub use azalea_client::*;
|
||||
pub use azalea_core::{BlockPos, Vec3};
|
||||
pub use azalea_protocol as protocol;
|
||||
pub use azalea_registry::{Block, EntityKind, Item};
|
||||
pub use azalea_world::{entity, Instance};
|
||||
use bot::DefaultBotPlugins;
|
||||
pub use bot::DefaultBotPlugins;
|
||||
use ecs::component::Component;
|
||||
use futures::Future;
|
||||
use protocol::{
|
||||
|
@ -80,16 +81,42 @@ where
|
|||
/// Start building a client that can join the world.
|
||||
#[must_use]
|
||||
pub fn new() -> Self {
|
||||
Self::new_without_plugins()
|
||||
.add_plugins(DefaultPlugins)
|
||||
.add_plugins(DefaultBotPlugins)
|
||||
}
|
||||
|
||||
/// [`Self::new`] but without adding the plugins by default. This is useful
|
||||
/// if you want to disable a default plugin.
|
||||
///
|
||||
/// You **must** add [`DefaultPlugins`] and [`DefaultBotPlugins`] to this.
|
||||
///
|
||||
/// ```
|
||||
/// # use azalea::prelude::*;
|
||||
/// use azalea::{app::PluginGroup, DefaultBotPlugins, DefaultPlugins};
|
||||
/// use bevy_log::LogPlugin;
|
||||
///
|
||||
/// let client_builder = ClientBuilder::new_without_plugins()
|
||||
/// .add_plugins(DefaultPlugins.build().disable::<LogPlugin>())
|
||||
/// .add_plugins(DefaultBotPlugins);
|
||||
/// # client_builder.set_handler(handle);
|
||||
/// # #[derive(Component, Clone, Default)]
|
||||
/// # pub struct State;
|
||||
/// # async fn handle(mut bot: Client, event: Event, state: State) -> anyhow::Result<()> {
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[must_use]
|
||||
pub fn new_without_plugins() -> Self {
|
||||
Self {
|
||||
// we create the app here so plugins can add onto it.
|
||||
// the schedules won't run until [`Self::start`] is called.
|
||||
app: init_ecs_app(),
|
||||
|
||||
app: App::new(),
|
||||
handler: None,
|
||||
state: S::default(),
|
||||
}
|
||||
.add_plugins(DefaultBotPlugins)
|
||||
}
|
||||
|
||||
/// Set the function that's called every time a bot receives an [`Event`].
|
||||
/// This is the way to handle normal per-bot events.
|
||||
///
|
||||
|
|
|
@ -70,6 +70,13 @@ pub trait PathfinderClientExt {
|
|||
}
|
||||
|
||||
impl PathfinderClientExt for azalea_client::Client {
|
||||
/// ```
|
||||
/// # use azalea::prelude::*;
|
||||
/// # use azalea::{BlockPos, pathfinder::BlockPosGoal};
|
||||
/// # fn example(bot: &Client) {
|
||||
/// bot.goto(BlockPosGoal::from(BlockPos::new(0, 70, 0)));
|
||||
/// # }
|
||||
/// ```
|
||||
fn goto(&self, goal: impl Goal + Send + Sync + 'static) {
|
||||
self.ecs.lock().send_event(GotoEvent {
|
||||
entity: self.entity,
|
||||
|
|
|
@ -15,7 +15,8 @@ fn is_block_passable(pos: &BlockPos, world: &Instance) -> bool {
|
|||
/// whether this block has a solid hitbox (i.e. we can stand on it)
|
||||
fn is_block_solid(pos: &BlockPos, world: &Instance) -> bool {
|
||||
if let Some(block) = world.chunks.get_block_state(pos) {
|
||||
block.shape() == &collision::block_shape()
|
||||
// block.shape() == &collision::block_shape()
|
||||
block.shape() != &collision::empty_shape()
|
||||
} else {
|
||||
false
|
||||
}
|
||||
|
|
|
@ -5,7 +5,9 @@ mod events;
|
|||
pub mod prelude;
|
||||
|
||||
use crate::{bot::DefaultBotPlugins, HandleFn};
|
||||
use azalea_client::{chat::ChatPacket, init_ecs_app, start_ecs, Account, Client, Event, JoinError};
|
||||
use azalea_client::{
|
||||
chat::ChatPacket, start_ecs, Account, Client, DefaultPlugins, Event, JoinError,
|
||||
};
|
||||
use azalea_protocol::{
|
||||
connect::ConnectionError,
|
||||
resolver::{self, ResolverError},
|
||||
|
@ -83,10 +85,43 @@ where
|
|||
/// Start creating the swarm.
|
||||
#[must_use]
|
||||
pub fn new() -> Self {
|
||||
Self::new_without_plugins()
|
||||
.add_plugins(DefaultPlugins)
|
||||
.add_plugins(DefaultBotPlugins)
|
||||
.add_plugins(DefaultSwarmPlugins)
|
||||
}
|
||||
|
||||
/// [`Self::new`] but without adding the plugins by default. This is useful
|
||||
/// if you want to disable a default plugin.
|
||||
///
|
||||
/// You **must** add [`DefaultPlugins`], [`DefaultBotPlugins`], and
|
||||
/// [`DefaultSwarmPlugins`] to this.
|
||||
///
|
||||
/// ```
|
||||
/// # use azalea::{prelude::*, swarm::prelude::*};
|
||||
/// use azalea::{app::PluginGroup, DefaultBotPlugins, DefaultPlugins, swarm::{DefaultSwarmPlugins}};
|
||||
/// use bevy_log::LogPlugin;
|
||||
///
|
||||
/// let swarm_builder = SwarmBuilder::new_without_plugins()
|
||||
/// .add_plugins(DefaultPlugins.build().disable::<LogPlugin>())
|
||||
/// .add_plugins(DefaultBotPlugins)
|
||||
/// .add_plugins(DefaultSwarmPlugins);
|
||||
/// # swarm_builder.set_handler(handle).set_swarm_handler(swarm_handle);
|
||||
/// # #[derive(Component, Resource, Clone, Default)]
|
||||
/// # pub struct State;
|
||||
/// # async fn handle(mut bot: Client, event: Event, state: State) -> anyhow::Result<()> {
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// # async fn swarm_handle(swarm: Swarm, event: SwarmEvent, state: State) -> anyhow::Result<()> {
|
||||
/// # Ok(())
|
||||
/// # }
|
||||
/// ```
|
||||
#[must_use]
|
||||
pub fn new_without_plugins() -> Self {
|
||||
Self {
|
||||
// we create the app here so plugins can add onto it.
|
||||
// the schedules won't run until [`Self::start`] is called.
|
||||
app: init_ecs_app(),
|
||||
app: App::new(),
|
||||
|
||||
accounts: Vec::new(),
|
||||
states: Vec::new(),
|
||||
|
@ -95,8 +130,6 @@ where
|
|||
swarm_handler: None,
|
||||
join_delay: None,
|
||||
}
|
||||
.add_plugins(DefaultSwarmPlugins)
|
||||
.add_plugins(DefaultBotPlugins)
|
||||
}
|
||||
|
||||
/// Add a vec of [`Account`]s to the swarm.
|
||||
|
|
Loading…
Reference in a new issue