diff options
| author | mat <27899617+mat-1@users.noreply.github.com> | 2022-08-29 20:41:01 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-08-29 20:41:01 -0500 |
| commit | f42d630544165d11a544224ac273d6aaf89d8095 (patch) | |
| tree | 94bd73771ecb582d89a87cdca8e21b2d6573ef12 /bot/src | |
| parent | 2ea804401f54a45765860201d10d0569d07862ec (diff) | |
| download | azalea-drasl-f42d630544165d11a544224ac273d6aaf89d8095.tar.xz | |
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 :tada:
* 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
Diffstat (limited to 'bot/src')
| -rw-r--r-- | bot/src/main.rs | 44 |
1 files changed, 29 insertions, 15 deletions
diff --git a/bot/src/main.rs b/bot/src/main.rs index 0f3ea31a..c8f6bea7 100644 --- a/bot/src/main.rs +++ b/bot/src/main.rs @@ -1,12 +1,14 @@ +#![allow(unused_variables, unused_imports)] use azalea_client::{Account, Event}; -use azalea_core::PositionXYZ; +use azalea_core::{PositionXYZ, Vec3}; +use azalea_physics::collision::{HasCollision, MoverType}; #[tokio::main] async fn main() -> Result<(), Box<dyn std::error::Error>> { println!("Hello, world!"); // let address = "95.111.249.143:10000"; - let address = "localhost:25565"; + let address = "localhost"; // let response = azalea_client::ping::ping_server(&address.try_into().unwrap()) // .await // .unwrap(); @@ -38,19 +40,31 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> { // // println!("block state: {:?}", c); // // } // } - Event::Chat(_m) => { - let new_pos = { - let dimension_lock = client.dimension.lock().unwrap(); - let dimension = dimension_lock.as_ref().unwrap(); - let player = client.player.lock().unwrap(); - let entity = player - .entity(dimension) - .expect("Player entity is not in world"); - entity.pos().add_y(0.5) - }; - - println!("{:?}", new_pos); - client.move_to(new_pos).await.unwrap(); + Event::Chat(m) => { + // let new_pos = { + // let dimension_lock = client.dimension.lock().unwrap(); + // let player = client.player.lock().unwrap(); + // let entity = player + // .entity(&dimension_lock) + // .expect("Player entity is not in world"); + // entity.pos().add_y(-0.5) + // }; + + // println!("{:?}", new_pos); + // client.set_pos(new_pos).await.unwrap(); + // client.move_entity() + + // println!("{}", m.to_ansi(None)); + if let Err(e) = client + .move_entity(&Vec3 { + x: 0., + y: -0.5, + z: 0., + }) + .await + { + eprintln!("{:?}", e); + } } _ => {} } |
