Commit graph

474 commits

Author SHA1 Message Date
mat
cfb190d00c
get rid of Readable & Writable (#21) 2022-09-02 12:11:14 -05:00
mat
32458d743f fix bad u32::write_into and add tests 2022-09-01 20:37:38 -05:00
mat
4d072d8057 sample can be empty 2022-09-01 19:26:21 -05:00
mat
d564b4cc4f ping players can be negative 2022-09-01 19:11:24 -05:00
mat
56afcb9dd8 make set_block_state return an Option 2022-08-31 22:39:38 -05:00
Ubuntu
7a159bdee5 add collision test 2022-08-31 20:16:39 +00:00
Ubuntu
e0cbf68df1 test gravity 2022-08-31 20:11:34 +00:00
Ubuntu
4678327848 remove some comments in az-protocol::read 2022-08-31 18:52:26 +00:00
Ubuntu
cbc0a13d9b fix a couple more possible panics 2022-08-31 18:50:59 +00:00
Ubuntu
efb1f3f2d5 fix panics 2022-08-31 18:48:51 +00:00
mat
0085f8a565 make some stuff publishable on crates.io 2022-08-30 21:42:40 -05:00
Ubuntu
a6c5017e38 clippy 2022-08-30 19:56:14 +00:00
mat
5f0fe9f29e azalea-buf-macros/Cargo.toml 2022-08-29 21:17:01 -05:00
mat
d88d46ca2d change it all to azalea-buf-macros 2022-08-29 21:14:42 -05:00
mat
ef3ac9f2a0 Update Cargo.toml 2022-08-29 21:13:17 -05:00
mat
5e32cc5593 azalea-buf crate stuff 2022-08-29 21:11:46 -05:00
mat
c1af5d15e3 physics stuff 2022-08-29 21:10:15 -05:00
mat
d9d7b87d61 buf macros -> azalea-buf-macros 2022-08-29 21:09:57 -05:00
mat
d4c8c5a952 try to make azalea-buf publishable 2022-08-29 21:01:48 -05:00
mat
f42d630544
Physics (#11)
* Put physics module in azalea-entity

* port aabb

* add more stuff to PositionXYZ

* azalea-physics

* important collision things

* more physics stuff

* backup because i'm about to delete shapes

* more shape stuff

* CubeVoxelShape

* no compile errors???

insane

* impl VoxelShape for ArrayVoxelShape

* Shapes stuff

* collide_x but it doesn't work yet

* binary_search

* it compiles

* Entity has bounding box

* Update discrete_voxel_shape.rs

* Entity::make_bounding_box

* ok i'm about to merge az-entity and az-world

might be a terrible idea which is why i'm committing first

* ok so i moved entity to world

* on_pos and move_entity compiles

* add send_position

* move collision stuff to collision module in az-physics

* dimension is no longer an Option

* start trying to do collision for the client

* collision works 🎉

* start adding palette resizing

* get_and_set (pain)

* it compiles but probably won't work

* add a test

* remove printlns

* add more tests for palette stuff

* ClientboundMoveVec3Packet -> ClientboundMoveEntityPosPacket

i think i changed this on accident once

* palette resizing works

todo: remove the printlns

* Remove printlns in palette.rs

* fix issues from merge

* fixes + work a bit more on physics

* Better entities (#19)

* well it compiles

* add tests to entity storage

* add suggestions in azalea-brigadier

* this probably causes ub

* fix brigadiersuggestions

* get rid of entityid

* test From<EntityMut> for EntityRef

* don't mention other libraries since there's too many

* fix warnings

* do todos in brigadier suggestions

* work on physics

* more physics stuff

* remove trait feature on az-block

i think rust gets confused and compiles the macro without the feature

* bump ahash

* aes tests in az-crypto

* optimize aes's deps

* fix crashes

* fix section_index for negative numbers and test

* fix BlockPos protocol implementation

* remove some debug prints

* prepare to add ai_step

* make ai step work

* clippy
2022-08-29 20:41:01 -05:00
mat
2ea804401f Update my_benchmark.rs 2022-08-28 15:47:34 -05:00
mat
250432a3f4 decrypting benchmark 2022-08-28 15:10:50 -05:00
mat
b44f1c84de encryption benchmark & test 2022-08-28 15:08:43 -05:00
mat
b8228a0360
Azalea registry (#20)
* make azalea-registry crate

* add trait feature to az-block

* registr

* registry macro

* impl Display for registry things

* registries
2022-08-27 20:31:21 -05:00
mat
029ae0e567 use unsigned integers for nbt lengths
probably not an optimization, just makes more sense
2022-08-24 21:09:17 -05:00
mat
c64f10605b fix 2022-08-24 21:03:05 -05:00
mat
e33d57e767 optimize nbt bytearray 2022-08-24 21:02:11 -05:00
mat
2a2e82efeb make some code more idiomatic 2022-08-24 20:00:44 -05:00
Ubuntu
d073a1c22b don't explain what stretch goals are 2022-08-24 19:27:46 +00:00
Ubuntu
d818bce866 add suggestions in azalea-brigadier 2022-08-22 19:27:23 +00:00
mat
2fff0e7564 fix block codegen for newer versions 2022-08-20 16:48:08 -05:00
mat
dbb2092ac0
Implement ALL packets (#16)
* add a couple more packets and improve codegen

* enums in packet codegen

* fix enums and MORE PACKETS

* make unsigned numbers the default

* codegen can make hashmaps

* UnsizedByteArray in codegen

* Vec and Option

* enum codgen works in more situations

* ServerboundInteractPacket

* Fix error with new error system

* More packets

* more packets

* more packets

* guess what was added

* yeah it's more packets

* add more packets

* packets

* start adding ClientboundBossEventPacket

* finish boss event packet

* improve codegen for linux

* start on command suggestions packet

* rename declare_commands to commands

* más paquetes

* fix generating custom payload packet

* more packets

* mehr Pakete

* improve codegen for movement packets

* rename move packets to have "packet" at the end

* fix some unused variable warns

* addere plus facis

* pli da pakoj

* plus de paquets

* più pacchetti

* make ChatFormatting a macro in azalea-chat

* change a match to matches! macro

* update SetPlayerTeam to use ChatFormatting

* ClientboundSetScorePacket & fix clippy warnings

* finish game state 🎉

* add remaining packets for other states

* fix error in ping.rs
2022-08-20 15:17:07 -05:00
mat
ac4d675d44
NBT decoder optimizations (#17)
* replace HashMap with AHashMap

* faster read_string by just doing read_exact

* re-enable all the benchmarks
2022-08-19 14:14:08 -05:00
Ubuntu
b9cb596ea7 shut up clippy 2022-08-19 18:06:43 +00:00
mat
a16b9dcd2e add stretch goals to readme and typo fix 2022-08-18 23:28:44 -05:00
mat
a54d74087b improve compilation time
use lld linker
2022-08-18 23:18:35 -05:00
mat
5a9fca0ca9
Better errors (#14)
* make reading use thiserror

* finish implementing all the error things

* clippy warnings related to ok_or

* fix some errors in other places

* thiserror in more places

* don't use closures in a couple places

* errors in writing packet

* rip backtraces

* change some BufReadError::Custom to UnexpectedEnumVariant

* Errors say what packet is bad

* error on leftover data and fix

it wasn't reading the properties for gameprofile
2022-08-06 02:22:19 -05:00
mat
1d48c3fe34
1.19.2 (#15)
* Fix stuff with readme in codegen scripts

Emojis broke it

* 1.19.2-rc1

* 1.19.2
2022-08-05 23:58:50 -05:00
mat
69f97dbf02 clippo the sequel 2022-07-31 18:05:41 -05:00
mat
0cf8f82994 add non-goals to readme 2022-07-30 18:00:54 -05:00
mat
bc71c74bef
Merge pull request #13 from mat-1/split-clientbound-serverbound
Split clientbound and serverbound packets
2022-07-30 22:57:02 +00:00
mat
9ef1e8d653 remove unnecessary empty impls 2022-07-30 17:56:36 -05:00
mat
1eef0a537e simplify switching packet states 2022-07-29 17:17:14 -05:00
mat
637e0e0984 remove unused structs 2022-07-29 16:29:57 -05:00
mat
0c2ce00bae make Connection a single struct with generics
This isn't that good of a solution but I couldn't come up with a better one and this was pretty simple to implement
2022-07-29 16:29:06 -05:00
mat
060d2f1592 grammar issue 2022-07-29 15:50:20 -05:00
mat
0f380f1a12 grammar issue 2022-07-29 15:50:11 -05:00
mat
f22a386c78 fix errors in az-client 2022-07-29 15:38:33 -05:00
mat
1b602d0be7 fix errors and warnings 2022-07-29 15:32:04 -05:00
mat
4ee4687053 Split clientbound and serverbound packets 2022-07-29 02:59:40 -05:00