I followed DuncanC's solution in Swift timer in milliseconds. Code below:
startTime = NSDate.timeIntervalSinceReferenceDate
Timer.scheduledTimer(timeInterval: 0.02,
target: self,
selector: Selector(("advanceTimer:")),
userInfo: nil,
repeats: true)
func advanceTimer(timer: Timer)
{
//Total time since timer started, in seconds
self.time = NSDate.timeIntervalSinceReferenceDate - startTime
//The rest of your code goes here
}
Xcode recommended I change NSDate.timeIntervalSinceReferenceDate()
to NSDate.timeIntervalSinceReferenceDate
and startTime: NSTimeInterval
to startTime: TimeInterval
for Swift 3.0.
My code produces the error:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MyGame.GameScene advanceTimer:]: unrecognized selector sent to instance