1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-08-06 17:41:04 +00:00

Physics overrides: Move values to a common struct (#12591)

Co-authored-by: sfan5 <sfan5@live.de>
This commit is contained in:
SmallJoker 2022-08-12 11:17:02 +02:00 committed by GitHub
parent df1d215f48
commit c8ee755c05
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 81 additions and 71 deletions

View file

@ -1762,21 +1762,20 @@ void GenericCAO::processMessage(const std::string &data)
float override_speed = readF32(is);
float override_jump = readF32(is);
float override_gravity = readF32(is);
// these are sent inverted so we get true when the server sends nothing
// MT 0.4.10 legacy: send inverted for detault `true` if the server sends nothing
bool sneak = !readU8(is);
bool sneak_glitch = !readU8(is);
bool new_move = !readU8(is);
if(m_is_local_player)
{
LocalPlayer *player = m_env->getLocalPlayer();
player->physics_override_speed = override_speed;
player->physics_override_jump = override_jump;
player->physics_override_gravity = override_gravity;
player->physics_override_sneak = sneak;
player->physics_override_sneak_glitch = sneak_glitch;
player->physics_override_new_move = new_move;
if (m_is_local_player) {
auto &phys = m_env->getLocalPlayer()->physics_override;
phys.speed = override_speed;
phys.jump = override_jump;
phys.gravity = override_gravity;
phys.sneak = sneak;
phys.sneak_glitch = sneak_glitch;
phys.new_move = new_move;
}
} else if (cmd == AO_CMD_SET_ANIMATION) {
// TODO: change frames send as v2s32 value