外部条件 (自動的にエミュレートされている) が false の場合は (0.01 の増分で) 0 から 1 (そのビットは簡単です) に移動し、条件が true の場合はカウンターを停止したいという問題があります。
条件は、2 つのオブジェクト間で衝突が発生した場合です。手動でループ内でテストしたため、この部分が正しく機能することはわかっています。しかし、衝突が発生した場合にカウンターを停止するのは難しいことがわかっています。私が見逃しているのは非常に単純なものだと確信しています。
def autoHandClose():
global collisionDeteched # this is set to false but on collision correctly changes to true
counter = 0
for x in range(100):
if collisionDeteched == False:
counter = counter + 0.01
h.setGesture(hand.GESTURE_FIST, closeThumb=True, weight = counter)
else:
break
重みパラメーターは 0 から 1 です (したがって、手を閉じるために 0 から 1 に移動する必要があるのはそのためです) 手を閉じることはできますが、衝突が検出された場合に手を止めることはできません。このメソッドは、キーボード ボタンの押下に割り当てられます。
ロジックが間違っていると思いますよね?