void TASInputDlg::SetWiiButtons(u16* butt) { for (unsigned int i = 0; i < 11; ++i) { if (m_buttons[i] != nullptr) *butt |= (m_buttons[i]->checkbox->IsChecked()) ? m_wii_buttons_bitmask[i] : 0; } ButtonTurbo(); }
// NOTE: Host / CPU Thread void TASInputDlg::SetWiiButtons(u16* butt) { for (size_t i = 0; i < s_wii_buttons_bitmask.size(); ++i) { if (m_buttons[i] != nullptr) *butt |= (m_buttons[i]->is_checked) ? s_wii_buttons_bitmask[i] : 0; } ButtonTurbo(); }
void TASInputDlg::GetValues(SPADStatus *PadStatus, int controllerID) { if (!IsShown()) return; //TODO:: Make this instant not when polled. GetKeyBoardInput(PadStatus); SetLandRTriggers(); PadStatus->stickX = mainX; PadStatus->stickY = mainY; PadStatus->substickX = cX; PadStatus->substickY = cY; PadStatus->triggerLeft = lTrig; PadStatus->triggerRight = rTrig; if (wx_up_button->IsChecked()) PadStatus->button |= PAD_BUTTON_UP; else PadStatus->button &= ~PAD_BUTTON_UP; if (wx_down_button->IsChecked()) PadStatus->button |= PAD_BUTTON_DOWN; else PadStatus->button &= ~PAD_BUTTON_DOWN; if (wx_left_button->IsChecked()) PadStatus->button |= PAD_BUTTON_LEFT; else PadStatus->button &= ~PAD_BUTTON_LEFT; if (wx_right_button->IsChecked()) PadStatus->button |= PAD_BUTTON_RIGHT; else PadStatus->button &= ~PAD_BUTTON_RIGHT; if (wx_a_button->IsChecked()) { PadStatus->button |= PAD_BUTTON_A; PadStatus->analogA = 0xFF; } else { PadStatus->button &= ~PAD_BUTTON_A; PadStatus->analogA = 0x00; } if (wx_b_button->IsChecked()) { PadStatus->button |= PAD_BUTTON_B; PadStatus->analogB = 0xFF; } else { PadStatus->button &= ~PAD_BUTTON_B; PadStatus->analogB = 0x00; } if (wx_x_button->IsChecked()) PadStatus->button |= PAD_BUTTON_X; else PadStatus->button &= ~PAD_BUTTON_X; if (wx_y_button->IsChecked()) PadStatus->button |= PAD_BUTTON_Y; else PadStatus->button &= ~PAD_BUTTON_Y; if (wx_z_button->IsChecked()) PadStatus->button |= PAD_TRIGGER_Z; else PadStatus->button &= ~PAD_TRIGGER_Z; if (wx_start_button->IsChecked()) PadStatus->button |= PAD_BUTTON_START; else PadStatus->button &= ~PAD_BUTTON_START; if (wx_r_button->IsChecked() || rTrig >= 255) PadStatus->button |= PAD_TRIGGER_R; else PadStatus->button &= ~PAD_TRIGGER_R; if (wx_l_button->IsChecked() || lTrig >= 255) PadStatus->button |= PAD_TRIGGER_L; else PadStatus->button &= ~PAD_TRIGGER_L; ButtonTurbo(); }