나는 공간 사수 게임을 만들고 모든 노드가 아닌 특정 노드와 상호 작용할 때 내 노드 중 하나를 동적으로 만들고 싶습니다. 본질적으로, 나는 하나의 지정된 노드와 상호 작용할 때 노드가 동적으로 행동하기를 원한다. 어떻게해야합니까?오직 하나의 객체 Swift와 Spritekit만을위한 노드 만들기
감사합니다.
나는이 질문이 혼란 스럽다는 것을 알고 있지만, 누군가 아이디어가 있다면 그것은 매우 도움이 될 것입니다 !!
let Bullet = SKSpriteNode(imageNamed: "BulletGalaga.png")
Bullet.zPosition = -5
Bullet.position = CGPoint(x: ship.position.x, y: ship.position.y)
Bullet.zRotation = ship.zRotation
//let action = SKAction.moveTo(CGPointMake(400 * cos(Bullet.zRotation),(400 * -sin(Bullet.zRotation))), duration: 0.8)
let action = SKAction.move(
to: CGPoint(
x: 1200 * -cos(Bullet.zRotation - 1.57079633) + Bullet.position.x,
y: 1200 * -sin(Bullet.zRotation - 1.57079633) + Bullet.position.y
),
duration: 2.4)
//let action = SKAction.moveToY(self.size.height + 30, duration: 0.8)
//let action = SKAction.moveTo(self.ship.size.height, duration: 0.8)
let actionDone = SKAction.removeFromParent()
Bullet.run(SKAction.sequence([action, actionDone]), withKey: "bulletAction")
Bullet.physicsBody = SKPhysicsBody(rectangleOf: Bullet.size)
Bullet.physicsBody?.affectedByGravity = false
Bullet.physicsBody?.isDynamic = false
self.addChild(Bullet)
내가 추가 한이 :
ship.physicsBody?.categoryBitMask = shipCategoryBitMask
Bullet.physicsBody?.categoryBitMask = bulletCategoryBitMask
enemy.physicsBody?.categoryBitMask = enemyCategoryBitMask
enemyBullet.physicsBody?.categoryBitMask = enemyBulletCategoryBitMask
ship.physicsBody?.collisionBitMask = enemyBulletCategoryBitMask
Bullet.physicsBody?.collisionBitMask = enemyCategoryBitMask
enemyBullet.physicsBody?.collisionBitMask = shipCategoryBitMask
enemy.physicsBody?.collisionBitMask = bulletCategoryBitMask
@claassenApps 아직 작동하지 않습니다. –
죄송합니다. 지금은 코드를 작성하지 못했습니다. 오늘 저녁에 고마워. 고마워. – claassenApps
@claassenApps great !! 고맙습니다. –