为什么我无法联系 Xcode 中的外部 .swift 文档
Why can't I contact an external .swift document in Xcode
我正在 Swift 制作一个简单的 SpriteKit 游戏。我制作了一个文件 "EmemyAppear.swift" 并在其中放了一个 class 和一个函数。这就是这个文件中的内容:
import Foundation
class EnemyAppear {
var nowAppear = false
var waitToAppear = UInt32(0)
var appearInterval = UInt32(0)
init(nowAppear:Bool, waitToAppear:UInt32, appearInterval:UInt32) {
self.nowAppear = nowAppear
self.waitToAppear = waitToAppear
self.appearInterval = appearInterval
}
func shouldRun() -> Bool {
return self.appearInterval > self.waitToAppear
}
}
于是我在主场景做了一个字典:
var enemyStatus:Dictionary<String,EnemyAppear> = [:]`
之后,我尝试从 EnemyAppear.swift 联系变量和函数,如下所示:
func enemyRun() {
for(enemy, enemyAppear) in self.enemyStatus {
var thisPet = self.childNodeWithName(enemy)!
if enemyStatus.shouldRun() {
enemyStatus.waitToAppear = random()
enemyStatus.appearInterval = 0
enemyStatus.nowAppear = true
}
}
}
但是 Xcode 告诉我 Dictionary <String, EnemyAppear> doesn't have a member named 'shouldRun'
但确实如此。我做错了什么?
if enemyStatus.shouldRun()
enemyStatus 是字典,不是 EnemyAppear,因此它没有名为 'shouldRun' 的成员。应该是
if enemyAppear.shouldRun()
我正在 Swift 制作一个简单的 SpriteKit 游戏。我制作了一个文件 "EmemyAppear.swift" 并在其中放了一个 class 和一个函数。这就是这个文件中的内容:
import Foundation
class EnemyAppear {
var nowAppear = false
var waitToAppear = UInt32(0)
var appearInterval = UInt32(0)
init(nowAppear:Bool, waitToAppear:UInt32, appearInterval:UInt32) {
self.nowAppear = nowAppear
self.waitToAppear = waitToAppear
self.appearInterval = appearInterval
}
func shouldRun() -> Bool {
return self.appearInterval > self.waitToAppear
}
}
于是我在主场景做了一个字典:
var enemyStatus:Dictionary<String,EnemyAppear> = [:]`
之后,我尝试从 EnemyAppear.swift 联系变量和函数,如下所示:
func enemyRun() {
for(enemy, enemyAppear) in self.enemyStatus {
var thisPet = self.childNodeWithName(enemy)!
if enemyStatus.shouldRun() {
enemyStatus.waitToAppear = random()
enemyStatus.appearInterval = 0
enemyStatus.nowAppear = true
}
}
}
但是 Xcode 告诉我 Dictionary <String, EnemyAppear> doesn't have a member named 'shouldRun'
但确实如此。我做错了什么?
if enemyStatus.shouldRun()
enemyStatus 是字典,不是 EnemyAppear,因此它没有名为 'shouldRun' 的成员。应该是
if enemyAppear.shouldRun()