- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在制作一个游戏,在该游戏中,在某些时候会出现一个新按钮和一个标签。问题是在某些情况下它们都不会出现。
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
/* Called when a touch begins */
circuloAmarillo.name = "button2"
let touch2 = touches.first
let positionInScene2 = touch2!.locationInNode(self)
let touchedNode2 = self.nodeAtPoint(positionInScene2)
if let name = touchedNode2.name {
print("name : \(name)")
if name == "button2" {
//do my stuff
circuloPrincipal.color = colorAmarillo
}
}
circuloAzul.name = "button3"
let touch3 = touches.first
let positionInScene3 = touch3!.locationInNode(self)
let touchedNode3 = self.nodeAtPoint(positionInScene3)
if let name = touchedNode3.name {
print("name : \(name)")
if name == "button3" {
//do my stuff
circuloPrincipal.color = colorAzul
}
}
circuloBlanco.name = "button4"
let touch4 = touches.first
let positionInScene4 = touch4!.locationInNode(self)
let touchedNode4 = self.nodeAtPoint(positionInScene4)
if let name = touchedNode4.name {
print("name : \(name)")
if name == "button4" {
//do my stuff
circuloPrincipal.color = colorBlanco
}
}
if gameStarted == false {
circuloBlanco.removeFromParent()
circuloPrincipal.color = colorAzul
enemigoTimer = NSTimer.scheduledTimerWithTimeInterval(0.7, target: self, selector: Selector("enemigos"), userInfo: nil, repeats: true)
gameStarted = true
circuloPrincipal.runAction(SKAction.scaleTo(0.44, duration: 0.4))
score = 0
scoreLabel.text = "\(score)"
hits = 0
highscoreLabel.runAction(SKAction.fadeOutWithDuration(0.5))
}
}
func enemigos() {
circuloBlanco.size = CGSize(width: 60, height: 60)
circuloBlanco.position = CGPoint(x: frame.width / 2 - 105 , y: frame.height / 2 - 345)
circuloBlanco.color = colorBlanco
circuloBlanco.colorBlendFactor = 1.0
circuloBlanco.zPosition = 4.0
textLabel = SKLabelNode(fontNamed: "STHeitiJ-Medium")
textLabel.text = "New color added"
textLabel.fontSize = 35
textLabel.position = CGPoint(x: frame.width / 2, y: frame.height / 2 + 147)
textLabel.fontColor = UIColor(red: 0.2, green: 0.2, blue: 0.2, alpha: 1.0)
textLabel.colorBlendFactor = 1.0
textLabel.zPosition = 2.0
linea = SKSpriteNode(imageNamed: "linea")
linea.position = CGPoint(x: frame.width / 2, y: frame.height / 2 + 160)
linea.size = CGSize(width: frame.width, height: 50)
linea.alpha = 0.3
linea.zPosition = 1.0
let enemigo = SKSpriteNode(imageNamed: "enemigo")
enemigo.size = CGSize(width: 25, height: 25)
enemigo.zPosition = 3.0
enemigo.physicsBody = SKPhysicsBody(circleOfRadius: enemigo.size.height / 2)
enemigo.physicsBody?.categoryBitMask = physicsCategory.enemigo
enemigo.physicsBody?.contactTestBitMask = physicsCategory.circuloPrincipal
enemigo.physicsBody?.collisionBitMask = physicsCategory.circuloPrincipal
enemigo.physicsBody?.dynamic = true
var colors = [colorAzul, colorAmarillo]
if score >= 22 { colors.append(colorBlanco) };let randomColorIndex = GKRandomDistribution(lowestValue: 0, highestValue: colors.count - 1).nextInt(); enemigo.color = colors[randomColorIndex]
if score == 20 {
let fadingAnimation = SKAction.sequence([SKAction.fadeInWithDuration(0.7), SKAction.fadeOutWithDuration(0.7)])
if linea.parent == nil {
linea.runAction(fadingAnimation)
self.addChild(linea)
}
if textLabel.parent == nil {
textLabel.runAction(fadingAnimation)
self.addChild(textLabel)
}
if circuloBlanco.parent == nil {
self.addChild(circuloBlanco)
}
}
}
最佳答案
我认为你丢失了这一行:
func enemigos() {
circuloBlanco = SKSpriteNode(imageNamed:"nameOfYourWhiteButton.png")
...
}
这是必要的,因为你removeFromParent
这个元素,所以下次你调用enemigos
函数时,我看到你改变了circuloBlanco参数。
关于swift - SpriteNode 不出现某些情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38033048/
我有一个(移动的) Sprite 节点。 我想检测此节点一定范围内的其他(移动) Sprite 节点。一旦检测到一个,它应该执行一个 Action 。 扮演 Action 部分对我来说没问题,但我似乎
我正在制作一款有云彩移动的游戏,我希望当角色降落在云彩上时云彩会消失。然而,当我输入代码时,如果角色绕过它并在仍在下落时撞到云的底部或侧面,它就会消失。这是我用于检测角色和云何时击中的代码。 是否有办
我想实现一个带有“彩色突出显示”的 Sprite 节点。 “突出显示可以有多种颜色。这是在沙盒应用程序中完成的,以进行尝试。 我考虑过使用SKTextures来表示节点的“高光”。然而,使用这种方法,
当将 spriteNode 缩放到较小尺寸(或较大尺寸)时,spriteNode 默认从中心缩放,这通常没问题。然而,我需要我的 Sprite 从它 body 的最左边开始缩放。有什么方法可以改变 s
我正在学习如何编码,作为第一个项目,我认为创建一个针对计算机的小石头剪刀布游戏是个好主意。问题是,显然计算机可能不会显示他的选择,所以我必须创建一个函数,使随机图片 x (我使用苹果的笑脸)出现在屏幕
我想在没有 uiscrollview 的情况下滚动 Sprite 套件中的节点 //触摸移动 let touch: UITouch = touches.first as! UITouch; let l
我正在尝试使用以下方法创建我的用户 SpriteNode。纹理是 Kladde,图像也不为空。 func spawnPlayer() { if didFirstTap == true && i
所以基本上我有 coin 对象,我想在屏幕上启动它。我有以下代码在滑动时运行一些计算,但不确定什么与我当前的情况相关: override func touchesBegan(touches: Set,
我正在制作一个游戏,在该游戏中,在某些时候会出现一个新按钮和一个标签。问题是在某些情况下它们都不会出现。 override func touchesBegan(touches: Set, withE
我有两个类别 enum ColliderType:UInt32 { case bulletCategory = 1 case bossCategory = 2 } 我让我的类(class)使用 SKP
我一直在尝试让 Sprite 具有不止一种纹理,这样它看起来就像在移动一样。我正在查看其他问题,但他们所做的一切都没有解决我的问题,这是我的代码: var textures = [SKText
如何通过触摸在固定点上旋转 SpriteKit 节点。所以当用户拖动他的手指时它会转动。我也希望能够获得 rpm。 (之前有人问过这个问题,但我想知道如何使用 SpriteKit 来做) swift
我有这段代码可以对子弹节点施加力并使其向敌人移动。在这种情况下,火箭始终朝上。我的问题是如何旋转这颗子弹以面向节点头部的方向。 let asd=SKSpriteNode(imageNamed: "
我有一个函数,可以创建 8 发来自玩家的子弹,呈圆形向外发射。我认为问题在于此处的这一行: let endPoint = CGPoint(x: distance * cos(angle), y: d
所以我正在使用带有图像的 spritenode 并且我没有设置它的位置。有趣的是,我在设置它的位置时遇到了问题,所以我没有,它默认设置为页面中心(出于明显的原因),这最终是完美的。所以现在在我的 to
我正在尝试创建一个小游戏,其中 SpriteNode(又名玩家)以恒定速度垂直向上移动。我想用它的角度向左或向右转向。但是,我无法使用其角度正确移动播放器。 感谢您的宝贵时间。 这是我写的部分代码:
所以我有 3 个不同的障碍物,它们随机产生并在 3 秒后被移除,但是如果例如 Obstacle1 已经产生并且随机数告诉程序产生另一个 Obstacle1,我得到一个错误 "Terminating a
我试图将 Sprite 的初始角度设置为 90 度。我不想调用 Action ,有没有办法像设置位置一样设置 Sprite 的角度参数? 最佳答案 z旋转 您可以使用接受辐射的 SKNode 的 zR
我在使用 Swift 3 和 Spritekit 开发我的应用程序时遇到了一个问题。为了检测碰撞,我制作了四个独立的三角形组成一个正方形。当我将这些三角形作为一个单元旋转时,它们会重叠并且在旋转过程中
我的新游戏 Sprite 有问题... 我的“汽车”在第一圈完美地沿着赛道行驶,但从那时起,它似乎在每圈结束时都会发生偏移。有人能告诉我我做错了什么吗? - (void)createSceneCont
我是一名优秀的程序员,十分优秀!