Fix dequeuing (#594)

This commit is contained in:
shukenmg 2020-11-04 00:42:48 +08:00 committed by GitHub
parent eda7605739
commit 57c1680537
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -128,6 +128,10 @@ namespace BetterJoyForCemu {
public void set_vals(float low_freq, float high_freq, float amplitude) {
float[] rumbleQueue = new float[] {low_freq, high_freq, amplitude};
// Keep a queue of 15 items, discard oldest item if queue is full.
if (queue.Count > 15) {
queue.Dequeue();
}
queue.Enqueue(rumbleQueue);
}
public Rumble(float[] rumble_info) {
@ -767,10 +771,6 @@ namespace BetterJoyForCemu {
while (!stop_polling & state > state_.NO_JOYCONS) {
if (rumble_obj.queue.Count > 0) {
SendRumble(rumble_obj.GetData());
// Keep a queue of 15 items, discard oldest item if queue is full.
if (rumble_obj.queue.Count > 15) {
rumble_obj.queue.Dequeue();
}
}
int a = ReceiveRaw();