diff --git a/BetterJoyForCemu/Joycon.cs b/BetterJoyForCemu/Joycon.cs index a95dc811..86413710 100644 --- a/BetterJoyForCemu/Joycon.cs +++ b/BetterJoyForCemu/Joycon.cs @@ -657,6 +657,18 @@ private void ExtractIMUValues(byte[] report_buf, int n = 0) { break; } } + + if (other == null && !isPro) { // single joycon mode; Z do not swap, rest do + if (isLeft) { + acc_g.X = -acc_g.X; + gyr_g.X = -gyr_g.X; + } else { + gyr_g.Y = -gyr_g.Y; + } + + float temp = acc_g.X; acc_g.X = acc_g.Y; acc_g.Y = temp; + temp = gyr_g.X; gyr_g.X = gyr_g.Y; gyr_g.Y = temp; + } } public void Begin() { diff --git a/BetterJoyForCemu/MainForm.Designer.cs b/BetterJoyForCemu/MainForm.Designer.cs index 6720f9a5..46213cf2 100644 --- a/BetterJoyForCemu/MainForm.Designer.cs +++ b/BetterJoyForCemu/MainForm.Designer.cs @@ -42,6 +42,7 @@ private void InitializeComponent() { this.loc2 = new System.Windows.Forms.Button(); this.loc3 = new System.Windows.Forms.Button(); this.loc4 = new System.Windows.Forms.Button(); + this.btnTip = new System.Windows.Forms.ToolTip(this.components); this.contextMenu.SuspendLayout(); this.conCntrls.SuspendLayout(); this.SuspendLayout(); @@ -186,6 +187,7 @@ private void InitializeComponent() { this.con1.Size = new System.Drawing.Size(58, 58); this.con1.TabIndex = 0; this.con1.TabStop = false; + this.btnTip.SetToolTip(this.con1, "Click on Joycons to join/split them"); this.con1.UseVisualStyleBackColor = true; // // loc1 @@ -269,5 +271,6 @@ private void InitializeComponent() { private System.Windows.Forms.Button loc3; private System.Windows.Forms.Button loc2; private System.Windows.Forms.Button loc1; + private System.Windows.Forms.ToolTip btnTip; } } \ No newline at end of file diff --git a/BetterJoyForCemu/MainForm.resx b/BetterJoyForCemu/MainForm.resx index 9e1f6fc1..b84622fd 100644 --- a/BetterJoyForCemu/MainForm.resx +++ b/BetterJoyForCemu/MainForm.resx @@ -762,6 +762,9 @@ CICCwhBGEQAFhSHM/wf9FHIvlrkdFwAAAABJRU5ErkJggg== + + 247, 17 + True