mirror of
https://github.com/yuzu-emu/yuzu-android.git
synced 2025-06-19 19:48:50 -05:00
input_common/tas: Add swap controller
This commit is contained in:
@ -1205,6 +1205,11 @@ void Config::SaveControlValues() {
|
||||
WriteBasicSetting(Settings::values.emulate_analog_keyboard);
|
||||
WriteBasicSetting(Settings::values.mouse_panning_sensitivity);
|
||||
|
||||
WriteSetting(QStringLiteral("enable_tas"), Settings::values.tas_enable, false);
|
||||
WriteSetting(QStringLiteral("loop_tas"), Settings::values.tas_loop, false);
|
||||
WriteSetting(QStringLiteral("swap_tas_controllers"), Settings::values.tas_swap_controllers,
|
||||
true);
|
||||
WriteSetting(QStringLiteral("tas_pause_on_load"), Settings::values.pause_tas_on_load, true);
|
||||
qt_config->endGroup();
|
||||
}
|
||||
|
||||
|
@ -175,10 +175,7 @@ void PlayerControlPreview::ResetInputs() {
|
||||
}
|
||||
|
||||
void PlayerControlPreview::UpdateInput() {
|
||||
if (controller_callback.update != nullptr) {
|
||||
controller_callback.update(std::move(true));
|
||||
}
|
||||
if (!is_enabled && !mapping_active) {
|
||||
if (!is_enabled && !mapping_active && !Settings::values.tas_enable) {
|
||||
return;
|
||||
}
|
||||
bool input_changed = false;
|
||||
@ -223,20 +220,25 @@ void PlayerControlPreview::UpdateInput() {
|
||||
}
|
||||
}
|
||||
|
||||
ControllerInput input{};
|
||||
if (input_changed) {
|
||||
update();
|
||||
input.changed = true;
|
||||
ControllerInput input{
|
||||
.axis_values =
|
||||
{std::pair<float, float>{axis_values[Settings::NativeAnalog::LStick].value.x(),
|
||||
axis_values[Settings::NativeAnalog::LStick].value.y()},
|
||||
std::pair<float, float>{axis_values[Settings::NativeAnalog::RStick].value.x(),
|
||||
axis_values[Settings::NativeAnalog::RStick].value.y()}},
|
||||
.button_values = button_values,
|
||||
.changed = true,
|
||||
};
|
||||
|
||||
if (controller_callback.input != nullptr) {
|
||||
controller_callback.input(std::move(input));
|
||||
}
|
||||
}
|
||||
input.axis_values[Settings::NativeAnalog::LStick] = {
|
||||
axis_values[Settings::NativeAnalog::LStick].value.x(),
|
||||
axis_values[Settings::NativeAnalog::LStick].value.y()};
|
||||
input.axis_values[Settings::NativeAnalog::RStick] = {
|
||||
axis_values[Settings::NativeAnalog::RStick].value.x(),
|
||||
axis_values[Settings::NativeAnalog::RStick].value.y()};
|
||||
input.button_values = button_values;
|
||||
if (controller_callback.input != nullptr) {
|
||||
controller_callback.input(std::move(input));
|
||||
|
||||
if (controller_callback.update != nullptr) {
|
||||
controller_callback.update(std::move(true));
|
||||
}
|
||||
|
||||
if (mapping_active) {
|
||||
|
@ -31,9 +31,6 @@
|
||||
</item>
|
||||
<item row="1" column="0" colspan="4">
|
||||
<widget class="QCheckBox" name="tas_control_swap">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Automatic controller profile swapping</string>
|
||||
</property>
|
||||
|
Reference in New Issue
Block a user