私のゲームでは、スワイプできるボールがあります。私はそれをユーザーが特定のポイントの上にボールをドラッグすることができないようにしようとしています。しかし、スワイプして誤ってその点に入ると、ボールはまだ動きます。私はguard location < 100 else {return}
を置くたびに、エラー:タイプ 'CGPoint'と 'Int'のオペランドには、バイナリ演算子 '<'を適用できません。
"Binary operator '<' cannot be applied to operands of type 'CGPoint' and 'Int'"
が現れて、私はそれを修正する方法がわかりません。ちなみに、guard
は、ユーザーが誤って行の上に来たときでもボールの速度が変わらないようにしますか?ここで
は私のコードです:
for touch in touches {
let location = touch.location(in: self)
let node = self.atPoint(location)
guard location < 100 else { return }
if ball.frame.contains(location) {
touchPoint = location
touching = true
}
}
CGFloatにキャストしてみるか、100.0 – koropok
を試してみましたが、CGFloatにキャストするときに同じエラーが出て、100.0を使用するとdoubleを使用しています。 –
キャストは意味をなさない。 CGPointを 'Double'や' CGFloat'のような単純なスカラーにキャストすることはできません。私の答えを見てください。 –