GlovePIE:Ballance
From WiiLi
(Redirected from Ballance)
lavarsi
// Ballance script (http://www.ballance.org/download.htm)
// Hold wiimote with D-Pad to the left and buttons facing up
// Tilt wiimote to tilt the level
// D-Pad to rotate level 90 degrees, or zoom out
// A = Enter ("Return")
// Plus = Exit tutorial (Q)
// Home = Menu (Escape)
// By Carl Kenner
Var.DeadZone = 26%
Var.FullAngle = 17 degrees
Var.PreventExtraTilt = true
Pie.FrameRate = 60 Hz
// Type your program here, or click the GUI tab to autogenerate it!
var.IRJoyX = DeadZone(MapRange(Wiimote1.Pitch+Wiimote2.Pitch, -var.FullAngle,var.FullAngle, -1,1), var.DeadZone)
var.IRJoyY = DeadZone(MapRange(-Wiimote1.Roll-Wiimote2.Roll, -var.FullAngle,var.FullAngle, -1,1), var.DeadZone)
var.Aiming = not Shift
if var.PreventExtraTilt then
var.IRJoyX = EnsureRange(var.IRJoyX, -1,1)
var.IRJoyY = EnsureRange(var.IRJoyY, -1,1)
end if
// Additional aiming controls, for example if you want to also use the
// joystick to aim
var.OtherJoyX = Int(Wiimote.Down)+Int(Wiimote2.Down)-Int(Wiimote.Up)-Int(Wiimote2.Up)
var.OtherJoyY = 0
if var.Aiming then
var.jx = Var.OtherJoyX + var.IRJoyX + var.LeftOverX
var.jjx = Var.OtherJoyX + var.IRJoyX + var.jLeftOverX
var.jy = Var.OtherJoyX + var.IRJoyY + var.LeftOverY
var.jjy = Var.OtherJoyX + var.IRJoyY + var.jLeftOverY
else
var.jx = Var.OtherJoyX + var.LeftOverX
var.jjx = Var.OtherJoyX + var.jLeftOverX
var.jy = Var.OtherJoyX + var.LeftOverY
var.jjy = Var.OtherJoyX + var.jLeftOverY
end if
if var.jx > 1 then
var.LeftOverX = Var.jx - 1
var.jLeftOverX = Var.jjx - 1
var.LeftKey = false
var.RightKey = true
else if var.jx < -1 then
var.LeftOverX = Var.jx + 1
var.jLeftOverX = Var.jjx + 1
var.RightKey = false
var.LeftKey = true
else
var.LeftOverX = Var.jx
var.jLeftOverX = 0
var.LeftKey = false
var.RightKey = false
end if
if var.jy > 1 then
var.LeftOverY = Var.jy - 1
var.jLeftOverY = Var.jjy - 1
var.UpKey = false
var.DownKey = true
else if var.jy < -1 then
var.LeftOverY = Var.jy + 1
var.jLeftOverY = Var.jjy + 1
var.DownKey = false
var.UpKey = true
else
var.LeftOverY = Var.jy
var.jLeftOverY = 0
var.UpKey = false
var.DownKey = false
end if
var.PPJoyX = EnsureRange(var.jjx, -1, 1)
var.PPJoyY = EnsureRange(var.jjy, -1, 1)
// Move this block to the bottom of the script for better performance
// Digital controls for vertical aiming
Key.Up = var.UpKey
Key.Down = var.DownKey
// Digital controls for horizontal aiming
Key.Left = var.LeftKey
Key.Right = var.RightKey
// Analog controls for vertical aiming
//PPJoy.Analog0 = var.PPJoyX
// Analog controls for horizontal aiming
//PPJoy.Analog1 = var.PPJoyY
debug = var.IRJoyX+', '+var.IRJoyY
Key.Shift = Wiimote.Up or Wiimote2.Up or Wiimote.Down or Wiimote2.Down or Wiimote.Two or Wiimote2.Two
Esc = Wiimote.Home or Wiimote2.Home
StopScript = DoubleClicked(Wiimote.Home) or DoubleClicked(Wiimote2.Home)
Q = Wiimote.Plus or Wiimote2.Plus
Enter = Wiimote.A or Wiimote2.A
Space = Wiimote.One or Wiimote2.One or Wiimote.Left or Wiimote2.Left

