- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我的 xCode 项目有问题。我有一个完整的 gamescene.swift 代码文件(600 行)。但是代码不会运行。当我在模拟器中运行我的游戏时,模拟器会显示标准的 gamescene.sks 颜色以及我的广告,但它不会显示我的任何代码。我已经检查过 gamescene.sks 中的自定义类是否正确。一切正常,除了 gamescene.swift 代码,它不会运行。
import UIKit
import SpriteKit
import GameplayKit
import GoogleMobileAds
class GameViewController: UIViewController {
@IBOutlet weak var GoogleBannerView: GADBannerView!
@IBOutlet weak var MainMenu: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
GoogleBannerView.adUnitID = "ca-app-pub-13***46014918193/236762****"
GoogleBannerView.rootViewController = self
GoogleBannerView.load(GADRequest())
if let view = self.view as! SKView? {
// Load the SKScene from 'GameScene.sks'
if let scene = SKScene(fileNamed: "GameScene") {
// Set the scale mode to scale to fit the window
scene.scaleMode = .resizeFill
// Present the scene
view.presentScene(scene)
}
view.ignoresSiblingOrder = true
view.showsFPS = false
view.showsNodeCount = false
view.showsPhysics = true
}
}
override var shouldAutorotate: Bool {
return true
}
override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
if UIDevice.current.userInterfaceIdiom == .phone {
return .allButUpsideDown
} else {
return .all
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Release any cached data, images, etc that aren't in use.
}
override var prefersStatusBarHidden: Bool {
return true
}
最佳答案
经过无数小时的尝试,我设法解决了这个问题。
if let view = self.view as! SKView? {
// Load the SKScene from 'GameScene.sks'
if let scene = GameScene(fileNamed: "GameScene") {
// Set the scale mode to scale to fit the window
scene.scaleMode = .resizeFill
这是工作代码。问题是我没有具体说明我应该领导什么场景,而是写了
if let scene = SKScene(fileNamed: "GameScene")
简单的修复方法是将“SKScene”更改为我的 SKScene 名称。
if let scene = GameScene(Filenamed: "GameScene")
希望这能帮助无数其他遇到此问题的人!
关于swift - Gamescene.swift 和 Gamescene.sks 不能一起工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42269537/
我正在 Xcode 上创建一个 iOS Swift 游戏。该游戏是关于一个球,并在我的关卡的 SKS 文件中制作了一个带有纹理动画的移动(左和右)障碍物。在 SKS 文件中,当我单击场景编辑器正下方的
我正在尝试制作一个简单的 2D 平台游戏。我决定使用 SpriteKit 引擎提供的 Sprite ,而不是导入 Sprite :在 GameScene.sks 中,我拖放了一个 Sprite (简单
我们可以更改 GameScene(SKScene) 上 Scene.sks 文件的 Created 关卡吗? 如果你不明白我的意思,这里更详细: 我创建了 2 个 .sks 文件(例如 one.sks
由于我使用了很多节点,所以我一直在使用 GameScene.sks。节点已经放置,但现在我想用代码显示它们。为此,我使用以下代码: if let view = self.view as! SKView
我正在创建 SKSpriteNode 的子类,例如Player 并在我的 *.sks 文件中用自定义类 Player 标记一个 SKSpriteNode。在 *.swift 中,我使用以下方法加载节点
我有一个游戏,其中有两个场景:FarmScene 和 WoodScene。每个场景都有一个 .SKS 文件和一个 .swift 文件 - 一个用于设计,一个用于编码。我已经成功地从 FarmScene
我正在学习 Swift,并从 SpriteKit 开始。我正在尝试创建一个简单的游戏,并且有一个关于 SpriteKit 如何工作的问题。我创建了一个带有开始按钮的新场景 (MenuScene),我编
为了让我的游戏弹出窗口,我在 SKS 文件中手动创建了一堆标签节点: : 我不得不制作很多标签,因为它们没有多行属性。这是我实际运行代码时的样子。 我该怎么做才能解决这个问题,是否有简单的解决方法?
我在 didMoveToView() 中有以下代码,它依赖于 .sks 文件才能正常工作: if let camera : SKCameraNode = self.childNodeWithName(
我是 Swift 和 SpriteKit 的初学者。我有 gameViewController 代码: if let scene = IntroScene(fileNamed:"IntroScene"
我正在开发一款横版卷轴游戏,我目前正在将我的节点从 sks 链接到这样的类。但是,我确信必须有一种更清洁更有效的方法来执行此操作,因为我可以看到这个列表随着添加的节点越来越多而变得越来越庞大。将节点与
我有一颗星星的 .png 图片。我想用这张图片制作充满星星的动画字母。这就是我想做的(但是星星会在其中有点动画,我想这可以用粒子效果来完成): 我可以通过为每个字母使用可能的多个 sks 文件然后将它
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 7 年前。 Improve
我一直在使用 SpriteKit 使用 Xcode 6 GM 制作游戏,出于某种原因,我的一些 .SKS 粒子文件现在使 Xcode 崩溃,这使得它们无法打开。我还注意到,当使用 NSKeyedUna
我不小心将 Xcode 场景文件编辑器中的一个空节点移动到了我拥有世界节点的 0,0 坐标。 取消选择后,我意识到错误。 现在我无法重新选择它。它是世界节点的子节点,我只能选择世界节点。 Push t
到目前为止,我有一款游戏,一切似乎都运行良好。我只使用作为默认项目的基本 gamescreen.swift 以及它的 .sks 文件。在满足一定条件后(对手以一定的分数获胜),它会转换到 .sks 文
我正在查看 apple 的冒险项目,以了解他们如何在游戏中创造世界和其他事物。 查看 AdventureWorld.sks 文件,我看到它们有一堆不同的“墙”节点,这些节点位于背景图像中墙所在的顶部。
我在 Internet 上看到过这个概念,但找不到具体的操作方法。 我想在 .sks 文件中布置我的整个关卡,但在任何给定时刻只加载播放器/框架 View 中的内容。在我的游戏中,我有永远上下 flo
我正在使用 SpriteKit .sks 文件 我可以将 .sks 中的 Sprite 制作成 SKSpriteNode 子类的实例吗? 这是我的子类中的 init 方法: init(imag
我正在使用 spritekit 和 swift 制作游戏。我在 gamescene.sks 中添加了一堆石头用作障碍物,并希望石头在接触时消失。 gamescene sks 中的 body 类型定义太
我是一名优秀的程序员,十分优秀!