diff --git a/source/duke3d/src/gamedef.cpp b/source/duke3d/src/gamedef.cpp index 8ecc807d9..a8e9603b6 100644 --- a/source/duke3d/src/gamedef.cpp +++ b/source/duke3d/src/gamedef.cpp @@ -1320,7 +1320,9 @@ const memberlabel_t UserdefsLabels[]= const memberlabel_t InputLabels[]= { { "avel", INPUT_AVEL, 0, 0 }, + { "q16avel", INPUT_Q16AVEL, 0, 0 }, { "horz", INPUT_HORZ, 0, 0 }, + { "q16horz", INPUT_Q16HORZ, 0, 0 }, { "fvel", INPUT_FVEL, 0, 0 }, { "svel", INPUT_SVEL, 0, 0 }, { "bits", INPUT_BITS, 0, 0 }, diff --git a/source/duke3d/src/gamedef.h b/source/duke3d/src/gamedef.h index 97d33a623..c0bbad26b 100644 --- a/source/duke3d/src/gamedef.h +++ b/source/duke3d/src/gamedef.h @@ -715,7 +715,9 @@ enum ActorLabel_t enum InputLabel_t { INPUT_AVEL, + INPUT_Q16AVEL, INPUT_HORZ, + INPUT_Q16HORZ, INPUT_FVEL, INPUT_SVEL, INPUT_BITS, diff --git a/source/duke3d/src/gamestructures.cpp b/source/duke3d/src/gamestructures.cpp index dd918101a..2fa4e9413 100644 --- a/source/duke3d/src/gamestructures.cpp +++ b/source/duke3d/src/gamestructures.cpp @@ -906,13 +906,15 @@ int32_t __fastcall VM_GetPlayerInput(int32_t const playerNum, int32_t labelNum) switch (labelNum) { - case INPUT_AVEL: labelNum = fix16_to_int(i->qavel); break; - case INPUT_HORZ: labelNum = fix16_to_int(i->qhorz); break; - case INPUT_FVEL: labelNum = i->fvel; break; - case INPUT_SVEL: labelNum = i->svel; break; - case INPUT_BITS: labelNum = i->bits; break; + case INPUT_AVEL: labelNum = fix16_to_int(i->q16avel); break; + case INPUT_Q16AVEL: labelNum = i->q16avel; break; + case INPUT_HORZ: labelNum = fix16_to_int(i->q16horz); break; + case INPUT_Q16HORZ: labelNum = i->q16horz; break; + case INPUT_FVEL: labelNum = i->fvel; break; + case INPUT_SVEL: labelNum = i->svel; break; + case INPUT_BITS: labelNum = i->bits; break; case INPUT_EXTBITS: labelNum = i->extbits; break; - default: labelNum = -1; break; + default: labelNum = -1; break; } return labelNum; @@ -930,11 +932,13 @@ void __fastcall VM_SetPlayerInput(int32_t const playerNum, int32_t const labelNu switch (labelNum) { - case INPUT_AVEL: i->qavel = fix16_from_int(iSet); break; - case INPUT_HORZ: i->qhorz = fix16_from_int(iSet); break; - case INPUT_FVEL: i->fvel = iSet; break; - case INPUT_SVEL: i->svel = iSet; break; - case INPUT_BITS: i->bits = iSet; break; + case INPUT_AVEL: i->q16avel = fix16_from_int(iSet); break; + case INPUT_Q16AVEL: i->q16avel = iSet; break; + case INPUT_HORZ: i->q16horz = fix16_from_int(iSet); break; + case INPUT_Q16HORZ: i->q16horz = iSet; break; + case INPUT_FVEL: i->fvel = iSet; break; + case INPUT_SVEL: i->svel = iSet; break; + case INPUT_BITS: i->bits = iSet; break; case INPUT_EXTBITS: i->extbits = iSet; break; default: break; }