Advertisement
Guest User

Untitled

a guest
Oct 25th, 2016
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.35 KB | None | 0 0
  1. ballNode = childNode(withName: "ballNode") as? SKSpriteNode
  2. ballNode?.physicsBody = SKPhysicsBody(circleOfRadius: (ballNode?.frame.size.width)! / 2)
  3. ballNode?.physicsBody?.isDynamic = true
  4. ballNode?.physicsBody?.usesPreciseCollisionDetection = true
  5. ballNode?.zPosition = 3
  6. ballNode?.physicsBody!.categoryBitMask = PhysicsCategory.ballCategory
  7. ballNode?.physicsBody!.contactTestBitMask = PhysicsCategory.trampolineCategory
  8. ballNode?.physicsBody!.collisionBitMask = PhysicsCategory.platformCategory
  9. ballNode?.physicsBody?.velocity = CGVector(dx: 0.0, dy: 0.0)
  10. ballNode?.move(toParent: _gameNode)
  11.  
  12. enumerateChildNodes(withName: "trampoline") {trampolineNode,_ in
  13. trampoline = trampolineNode as? SKSpriteNode
  14. trampolineNode.physicsBody = SKPhysicsBody.init(rectangleOf: CGSize(width: (trampoline?.size.width)!, height: (trampoline?.size.height)!))
  15. trampolineNode.physicsBody?.categoryBitMask = PhysicsCategory.trampolineCategory
  16. trampolineNode.physicsBody?.contactTestBitMask = PhysicsCategory.ballCategory
  17. trampolineNode.physicsBody?.collisionBitMask = PhysicsCategory.ballCategory
  18. trampolineNode.physicsBody?.affectedByGravity = false
  19. trampolineNode.physicsBody?.isDynamic = false
  20. trampolineNode.physicsBody?.usesPreciseCollisionDetection = true
  21. trampolineNode.physicsBody?.restitution = 1
  22. trampolineNode.move(toParent: _gameNode)
  23.  
  24. if collision == PhysicsCategory.ballCategory | PhysicsCategory.trampolineCategory {
  25. let src = [float2(0.0), float2(1.0), float2(2.0),
  26. float2(3.0), float2(4.0), float2(5.0),
  27. float2(6.0), float2(7.0), float2(8.0)]
  28.  
  29. let dst = [float2(0.0), float2(0.0), float2(2.0),
  30. float2(3.0), float2(1.0), float2(5.0),
  31. float2(6.0), float2(7.0), float2(8.0)]
  32.  
  33. warpGrid = SKWarpGeometryGrid(columns: 2, rows: 2,
  34. sourcePositions: src,
  35. destinationPositions: dst)
  36. //
  37. trampoline?.warpGeometry = warpGrid <---This line removes the trampoline image, so I could only assume its the way I set up the source and destination points.
  38.  
  39. let transform = SKAction.warp(to: warpGrid!, duration: 1)
  40. let transformAction = SKAction.repeat(transform!, count: 1)
  41. trampoline?.run(transformAction)
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement