[Swift] SpriteKit를 사용하여 일정 간격으로 처리합니다.
화면 중앙부터 일정 간격으로 빨간색 사각형을 계속 사격한다.
SFTimeInterval
.GameScene.swift
import SpriteKit
class GameScene: SKScene {
// lastを用意しておく
var last:CFTimeInterval!
override func didMoveToView(view: SKView) {}
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {}
// 赤い四角を、画面中央から上に向かって打ち出すメソッド
func shoot() {
let square = SKSpriteNode(color: UIColor.redColor(), size: CGSizeMake(40, 40))
square.position = CGPoint(x: CGRectGetMidX(self.frame), y: CGRectGetMidY(self.frame))
square.physicsBody = SKPhysicsBody(rectangleOfSize: CGSizeMake(40, 40))
square.physicsBody.affectedByGravity = false
square.physicsBody.velocity = CGVectorMake(0, 100)
square.physicsBody.linearDamping = false
self.addChild(square)
}
override func update(currentTime: CFTimeInterval) {
// lastが未定義ならば、今の時間を入れる。
if !last {
last = currentTime
}
// 1秒おきに行う処理をかく。
if last + 1 <= currentTime {
self.shoot()
last = currentTime
}
}
}
Reference
이 문제에 관하여([Swift] SpriteKit를 사용하여 일정 간격으로 처리합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mochizukikotaro/items/6d3a7e445ea67e5b4643텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)