以下代码有问题:
let torpedoNode = SKSpriteNode(imageNamed: "Torpedo")
torpedoNode.position = player.position
torpedoNode.position.y += 5
torpedoNode.physicsBody = SKPhysicsBody(circleOfRadius: torpedoNode.size / 2)
我得到的错误是行:
torpedoNode.physicsBody = SKPhysicsBody(circleOfRadius: torpedoNode.size / 2)
错误是:
二进制运算符“/”不能应用于“cgsize”和“int”类型的操作数
最佳答案
CGSize
是一个包含两个CGFloat
值的结构-宽度和高度。
所以你不能用Int
来划分它。
似乎您的parameter无论如何都需要一个CGFloat
。所以你应该把高度或者宽度除以2,然后通过。
torpedoNode.physicsBody = SKPhysicsBody(circleOfRadius: torpedoNode.size.width / 2) //or height whichever is appropriate