在我的關卡編輯器中,我創建了一個名爲「windmill」的SKSpritenode。 爲了這一點,我已經添加了一個用戶數據屬性(旋轉|字符串|左)Spritekit | Swift3 |級別編輯器 - 從關卡編輯器引用SKSpritenodes的用戶數據
//I have no problem in loading the object in the GameScene class.
enumerateChildNodes(withName: "windmill") {windmillNode,_ in
windmill = windmillNode as? SKSpriteNode
windmillNode.zPosition = 3
windmillNode.move(toParent: _gameNode)
}
但我想要做的就是調用用戶數據屬性,並根據旋轉值。我想設置角度。
---錯誤「不能分配給類型'_'的不可變表達式
是表達是否正確?
var angle: Int
if (windmillNode.userData?.object(forKey: "rotation")) = "left" {
angle = 360
} else {
angle = -360
}
謝謝一些進展。必須聲明任何字符串的操作工作。如果String(描述:windmillNode.userData?.object(forKey:「rotation」))==「left」{} – user3482617
但是,if語句沒有找到任何旋轉值爲「left」的SKSpritenodes,所以它總是-360 。這是從編輯器調用節點的userdata的正確方法嗎? – user3482617
想通了。編輯器中的「左」值正在通過「可選(左)」。在userdata上做了一個打印並發現了。不知道的想法,但當我==「可選(左)」,角度是360而不是-360。 – user3482617