2015-10-21 56 views
1

我在GameScene類中創建了SKCameraNode,並將其添加爲SKSpriteNodes。然後我將GameScene相機設置爲SKCameraNode。使用Swift從不同類訪問SKCameraNode

我有另一個稱爲Player類型SKNode的自定義類。從這個類中,我需要訪問GameScene中SKCameraNode中的按鈕節點。我怎樣才能做到這一點?

我無法在我的Player類中創建GameScene類的實例,因爲它需要size參數,如果我這樣做了,我會有兩個不同的GameScene類實例。

讚賞任何幫助...

回答

2

一旦你添加您的播放器到現場,那麼你總是有機會到現場。添加播放器之後,您必須確保並嘗試訪問場景,否則此代碼會使您的遊戲崩潰。

您的播放器類中,你可以去

(self.scene as! GameScene).yourCameraNode 

假設yourCameraNode是GameScene

的屬性
+0

哇,太容易了!謝謝!我總是忘記使用as!很難知道什麼時候投出,什麼時候不投。有什麼區別:self.scene&self.scene as! GameScene ??他們顯然是指不同的對象? – TazmanNZL

+1

當您嘗試訪問某種特定於該類型對象的屬性或方法時,您需要進行強制轉換 – hamobi