[英]Member of class not showing up in GameScene.swift
我正在嘗試制作一個游戲,讓您擁有一頭豬,然后滑動或按住豬的移動。 我為我的豬准備了上課,但是在GameScene.swift
出現了一個錯誤,說guy
不是porker
。 請幫忙。
import SpriteKit
import UIKit
class GameScene: SKScene {
var porker:Porker!
var touchLocation = CGFloat()
var gameOver = false
override func didMoveToView(view: SKView) {
addBG()
addPig()
}
func addBG() {
let bg = SKSpriteNode(imageNamed: "bg");
addChild(bg)
}
func addPig() {
let Pig = SKSpriteNode(imageNamed: "pig")
porker = Porker(guy:Pig)
addChild(Pig)
}
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
for touch: AnyObject in touches{
if !gameOver {
touchLocation = (touch.locationInView(self.view!).y * -1) + (self.size.height/2)
}
}
let MoveAction = SKAction.moveToY(touchLocation, duration: 0.5)
MoveAction.timingMode = SKActionTimingMode.EaseOut
Porker.guy.runAction(MoveAction) }
override func update(currentTime: CFTimeInterval) {
/* Called before each frame is rendered */
}
}
這是豬班
import Foundation
import SpriteKit
class Porker {
var Guy:SKSpriteNode
var speed = 0.1
init(guy:SKSpriteNode){
self.Guy = guy
}
}
首先,變量/常量/參數名稱應以小寫開頭,因此不要將它們與類名稱混用。 例如,
class Porker {
var guy:SKSpriteNode
var speed = 0.1
init(guy:SKSpriteNode){
self.guy = guy
}
}
內心開始了:
let moveAction = SKAction.moveToY(touchLocation, duration: 0.5)
moveAction.timingMode = SKActionTimingMode.EaseOut
porker.guy.runAction(MoveAction)
希望能解決問題!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.