//Connect the BalanceBoard *before* the wiiremote to ensure things //behave correctly //After starting script, step on and off the BalanceBoard to //calibrate it. //Balance Board does left / right //wiimote Dpad or punching does up/down: nunchuck down, wiimote up //wiimote A is enter var.punchthresh = 4 wiimote2.led1= true wiimote1.BalanceBoard.LED = true Enter = wiimote2.A var.mote = Abs(wiimote2.gx)+Abs(wiimote2.gy)+Abs(wiimote2.gz) if var.mote > var.punchthresh then Up = true wait 0.05 Up = false else Up = wiimote2.Up endif var.nun = Abs(wiimote2.nunchuk.gx)+Abs(wiimote2.nunchuk.gy)+Abs(wiimote2.nunchuk.gz) if var.nun > var.punchthresh then Down = true wait 0.05 Down = false else Down = wiimote2.Down endif if (var.cnt < 3) var.lmin = 100000000 var.lmax = -1000000000 var.rmin = 100000000 var.rmax = -1000000000 endif var.cnt = var.cnt + 1 var.left = wiimote1.BalanceBoard.RawBackLeft + wiimote1.BalanceBoard.RawBackRight var.right = wiimote1.BalanceBoard.RawFrontLeft + wiimote1.BalanceBoard.RawFrontRight if (var.cnt > 3 && var.cnt < 200) { if (var.left < var.lmin) var.lmin = var.left if (var.left > var.lmax) var.lmax = var.left if (var.right < var.rmin) var.rmin = var.right if (var.right > var.rmax) var.rmax = var.right debug = "Calibrating... step on and off..."+ var.lmin + ","+var.lmax+","+var.rmin+","+var.rmax } else { var.pl = (var.left - var.lmin)/(var.lmax - var.lmin) Left = ((var.pl>.3) || (var.pr<.2 && var.pl>.2) || wiimote2.Left) var.pr = (var.right - var.rmin)/(var.rmax - var.rmin) Right = ((var.pr>.3) || (var.pl<.2 && var.pr>.2) || wiimote2.Right) debug = "Calibrated. "+var.pl + "," + var.pr + ","+var.nun+","+var.mote }