It's strange: Even if the only command in the Gobbler-Hit-Subs is the "Destroyball" command, the ballrolling sound is still there.
So that i have at least the illusion of a fall-through ball i re-did the whole thing . This solution also corrects the problem that a ball which has just fallen into the gobble hole shows up immediately in the "Balls Played Window".
You need six new timers. Here are the corrections and additions:
Timer3.Interval =50
Timer4.Interval =50
Timer5.Interval =2000
Timer6.Interval =50
Timer7.Interval =50
Timer8.Interval =2000
sub Gobbler1_Hit()
Dim tempkickscore
Dim speedx,speedy,finalspeed
speedx=activeball.velx
speedy=activeball.vely
finalspeed=SQR(activeball.velx * activeball.velx + activeball.vely * activeball.vely)
if finalspeed>15 then
Gobbler1.Kick 0,0
activeball.velx=speedx
activeball.vely=speedy
else
if TableTilted=false then
tempkickscore=0
for each obj in CenterLights
if obj.state=1 then tempkickscore=tempkickscore+1
next
tempkickscore=tempkickscore*10
SetMotor(tempkickscore)
If GobblerLight1.state=1 then
AddSpecial
end if
end if
Gobbler1.DestroyBall
Gobbler1.CreateSizedBall 20
Timer6.enabled =1
BallsOnTable=BallsOnTable-1
PlaySound "fx_ballrolling10",-1
DOF 128, DOFPulse
'Pause4Bonustimer.enabled=true
end if
end sub
sub Gobbler2_Hit()
Dim tempkickscore
Dim speedx,speedy,finalspeed
speedx=activeball.velx
speedy=activeball.vely
finalspeed=SQR(activeball.velx * activeball.velx + activeball.vely * activeball.vely)
if finalspeed>15 then
Gobbler2.Kick 0,0
activeball.velx=speedx
activeball.vely=speedy
else
if TableTilted=false then
tempkickscore=0
for each obj in CenterLights
if obj.state=1 then tempkickscore=tempkickscore+1
next
tempkickscore=tempkickscore*10
SetMotor(tempkickscore)
If GobblerLight2.state=1 then
AddSpecial
end if
end if
Gobbler2.DestroyBall
Gobbler2.CreateSizedBall 20
Timer3.enabled =1
BallsOnTable=BallsOnTable-1
PlaySound "fx_ballrolling10",-1
DOF 128, DOFPulse
'Pause4Bonustimer.enabled=true
end if
end sub
Sub Timer3_Timer
Gobbler2.DestroyBall
Gobbler2.CreateSizedBall 15
Timer4.enabled =1
Me.enabled =0
End Sub
Sub Timer4_Timer
Gobbler2.DestroyBall
Timer5.enabled =1
Me.enabled =0
End Sub
Sub Timer5_Timer
Kicker3.CreateSizedBall 20
Kicker3.Kick 0,12
StopSound "fx_ballrolling10"
BallIndicatorCount=BallIndicatorCount+1
If BallLiftOption=1 then
NextBall
Else
Pause4Bonustimer.enabled=true
end if
Me.enabled =0
End Sub
Sub Timer6_Timer
Gobbler1.DestroyBall
Gobbler1.CreateSizedBall 15
Timer7.enabled =1
Me.enabled =0
End Sub
Sub Timer7_Timer
Gobbler1.DestroyBall
Timer8.enabled =1
Me.enabled =0
End Sub
Sub Timer8_Timer
Kicker3.CreateSizedBall 20
Kicker3.Kick 0,12
StopSound "fx_ballrolling10"
BallIndicatorCount=BallIndicatorCount+1
If BallLiftOption=1 then
NextBall
Else
Pause4Bonustimer.enabled=true
end if
Me.enabled =0
End Sub