Browse Source
Merge pull request #10174 from german77/motriod
input_common: Add experimental motion to button
pull/15/merge
bunnei
3 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
10 additions and
0 deletions
-
src/core/hid/input_converter.cpp
-
src/input_common/input_mapping.cpp
|
|
|
@ -62,6 +62,9 @@ Common::Input::ButtonStatus TransformToButton(const Common::Input::CallbackStatu |
|
|
|
case Common::Input::InputType::Button: |
|
|
|
status = callback.button_status; |
|
|
|
break; |
|
|
|
case Common::Input::InputType::Motion: |
|
|
|
status.value = std::abs(callback.motion_status.gyro.x.raw_value) > 1.0f; |
|
|
|
break; |
|
|
|
default: |
|
|
|
LOG_ERROR(Input, "Conversion from type {} to button not implemented", callback.type); |
|
|
|
break; |
|
|
|
@ -227,6 +230,10 @@ Common::Input::TriggerStatus TransformToTrigger(const Common::Input::CallbackSta |
|
|
|
status = callback.trigger_status; |
|
|
|
calculate_button_value = false; |
|
|
|
break; |
|
|
|
case Common::Input::InputType::Motion: |
|
|
|
status.analog.properties.range = 1.0f; |
|
|
|
raw_value = callback.motion_status.accel.x.raw_value; |
|
|
|
break; |
|
|
|
default: |
|
|
|
LOG_ERROR(Input, "Conversion from type {} to trigger not implemented", callback.type); |
|
|
|
break; |
|
|
|
|
|
|
|
@ -82,6 +82,9 @@ void MappingFactory::RegisterButton(const MappingData& data) { |
|
|
|
new_input.Set("axis", data.index); |
|
|
|
new_input.Set("threshold", 0.5f); |
|
|
|
break; |
|
|
|
case EngineInputType::Motion: |
|
|
|
new_input.Set("motion", data.index); |
|
|
|
break; |
|
|
|
default: |
|
|
|
return; |
|
|
|
} |
|
|
|
|