我有一名球員和一堵牆,每當球員走進牆壁將球推開。牆是靜態的,玩家是動態的,任何人都知道如何解決這個問題?爲什麼我的動態物理體能夠推動我的靜態物理體?在雨燕
播放器代碼:
player.texture = SKTexture(imageNamed: "player")
player.position = CGPoint(x: 0 + player.frame.width/2,y: self.frame.height + player.frame.height/2)
player.zPosition = 2
player.physicsBody?.affectedByGravity = true
player.physicsBody?.dynamic = true
player.physicsBody?.allowsRotation = false
player.physicsBody?.pinned = false
player.physicsBody?.mass = 0.18
player.physicsBody?.restitution = 0
代碼到移動玩家:
let moveForward = SKAction.moveByX(1, y: 0, duration: 0.01)
牆代碼:
backWall = SKSpriteNode(imageNamed: "up")
backWall.size = CGSize(width: 70, height: 70)
backWall.position = CGPoint(x: 0 + 35, y: ground.frame.height)
backWall.zPosition = 3
backWall.physicsBody?.categoryBitMask = PhysicsCategory.backWall
backWall.physicsBody?.contactTestBitMask = PhysicsCategory.backWall
backWall.physicsBody?.collisionBitMask = PhysicsCategory.backWall
backWall.physicsBody?.dynamic = false
backWall.physicsBody?.affectedByGravity = false
backWall.physicsBody?.allowsRotation = false
backWall.physicsBody?.friction = 1.0
backWall.physicsBody = SKPhysicsBody(rectangleOfSize: backWall.size)
這絕對是不正確的,物理仍然適用,從移動物體的0速度 – Knight0fDragon