TU19: merge Minecraft.World/Network

This commit is contained in:
Tropical
2026-03-21 18:09:02 -05:00
parent 0f280b5ed3
commit 11a0440998
66 changed files with 1355 additions and 462 deletions

View File

@@ -3,8 +3,6 @@
#include "../../Headers/net.minecraft.network.packet.h"
#include "PlayerAbilitiesPacket.h"
const float PlayerAbilitiesPacket::SPEED_ACCURACY = 255.0f;
PlayerAbilitiesPacket::PlayerAbilitiesPacket() {
invulnerable = false;
_isFlying = false;
@@ -15,23 +13,23 @@ PlayerAbilitiesPacket::PlayerAbilitiesPacket() {
}
PlayerAbilitiesPacket::PlayerAbilitiesPacket(Abilities* abilities) {
this->setInvulnerable(abilities->invulnerable);
this->setFlying(abilities->flying);
this->setCanFly(abilities->mayfly);
this->setInstabuild(abilities->instabuild);
this->setFlyingSpeed(abilities->getFlyingSpeed());
this->setWalkingSpeed(abilities->getWalkingSpeed());
setInvulnerable(abilities->invulnerable);
setFlying(abilities->flying);
setCanFly(abilities->mayfly);
setInstabuild(abilities->instabuild);
setFlyingSpeed(abilities->getFlyingSpeed());
setWalkingSpeed(abilities->getWalkingSpeed());
}
void PlayerAbilitiesPacket::read(DataInputStream* dis) {
uint8_t bitfield = dis->readByte();
this->setInvulnerable((bitfield & FLAG_INVULNERABLE) > 0);
this->setFlying((bitfield & FLAG_FLYING) > 0);
this->setCanFly((bitfield & FLAG_CAN_FLY) > 0);
this->setInstabuild((bitfield & FLAG_INSTABUILD) > 0);
this->setFlyingSpeed(dis->readByte() / SPEED_ACCURACY);
this->setWalkingSpeed(dis->readByte() / SPEED_ACCURACY);
setInvulnerable((bitfield & FLAG_INVULNERABLE) > 0);
setFlying((bitfield & FLAG_FLYING) > 0);
setCanFly((bitfield & FLAG_CAN_FLY) > 0);
setInstabuild((bitfield & FLAG_INSTABUILD) > 0);
setFlyingSpeed(dis->readFloat());
setWalkingSpeed(dis->readFloat());
}
void PlayerAbilitiesPacket::write(DataOutputStream* dos) {
@@ -43,8 +41,8 @@ void PlayerAbilitiesPacket::write(DataOutputStream* dos) {
if (canInstabuild()) bitfield |= FLAG_INSTABUILD;
dos->writeByte(bitfield);
dos->writeByte((int)(flyingSpeed * SPEED_ACCURACY));
dos->writeByte((int)(walkingSpeed * SPEED_ACCURACY));
dos->writeFloat(flyingSpeed);
dos->writeFloat(walkingSpeed);
}
void PlayerAbilitiesPacket::handle(PacketListener* listener) {
@@ -53,11 +51,11 @@ void PlayerAbilitiesPacket::handle(PacketListener* listener) {
int PlayerAbilitiesPacket::getEstimatedSize() { return 2; }
// std::wstring getDebugInfo()
// wstring getDebugInfo()
//{
// return String.format("invuln=%b, flying=%b, canfly=%b, instabuild=%b,
//flyspeed=%.4f, walkspped=%.4f", isInvulnerable(), isFlying(), canFly(),
//canInstabuild(), getFlyingSpeed(), getWalkingSpeed());
// flyspeed=%.4f, walkspped=%.4f", isInvulnerable(), isFlying(), canFly(),
// canInstabuild(), getFlyingSpeed(), getWalkingSpeed());
// }
bool PlayerAbilitiesPacket::isInvulnerable() { return invulnerable; }
@@ -83,7 +81,7 @@ void PlayerAbilitiesPacket::setInstabuild(bool instabuild) {
float PlayerAbilitiesPacket::getFlyingSpeed() { return flyingSpeed; }
void PlayerAbilitiesPacket::setFlyingSpeed(float flySpeed) {
this->flyingSpeed = flySpeed;
flyingSpeed = flySpeed;
}
float PlayerAbilitiesPacket::getWalkingSpeed() { return walkingSpeed; }