Adds back support for Fast Forwarding

This commit is contained in:
Riley Testut 2016-07-27 13:24:38 -05:00
parent ae1d3f61dd
commit c6d1f793f0
3 changed files with 17 additions and 10 deletions

View File

@ -129,6 +129,13 @@ extension GameViewController
pauseViewController.emulatorCore = self.emulatorCore pauseViewController.emulatorCore = self.emulatorCore
pauseViewController.saveStatesViewControllerDelegate = self pauseViewController.saveStatesViewControllerDelegate = self
pauseViewController.cheatsViewControllerDelegate = self pauseViewController.cheatsViewControllerDelegate = self
pauseViewController.fastForwardItem?.selected = (self.emulatorCore?.rate != self.emulatorCore?.configuration.supportedRates.lowerBound)
pauseViewController.fastForwardItem?.action = { [unowned self] item in
guard let emulatorCore = self.emulatorCore else { return }
emulatorCore.rate = item.selected ? emulatorCore.configuration.supportedRates.upperBound : emulatorCore.configuration.supportedRates.lowerBound
}
self.pauseViewController = pauseViewController self.pauseViewController = pauseViewController
} }

View File

@ -10,9 +10,9 @@ import UIKit
struct PauseItem: Equatable struct PauseItem: Equatable
{ {
let image: UIImage var image: UIImage
let text: String var text: String
let action: ((PauseItem) -> Void) var action: ((PauseItem) -> Void)
var selected = false var selected = false

View File

@ -19,15 +19,15 @@ class PauseViewController: UIViewController, PauseInfoProviding
} }
var pauseItems: [PauseItem] { var pauseItems: [PauseItem] {
return [self.saveStateItem, self.loadStateItem, self.cheatCodesItem, self.sustainButtonsItem, self.fastForwardItem].flatMap { $0 } return [self.saveStateItem, self.loadStateItem, self.cheatCodesItem, self.fastForwardItem, self.sustainButtonsItem].flatMap { $0 }
} }
/// Pause Items /// Pause Items
private(set) var saveStateItem: PauseItem? var saveStateItem: PauseItem?
private(set) var loadStateItem: PauseItem? var loadStateItem: PauseItem?
private(set) var cheatCodesItem: PauseItem? var cheatCodesItem: PauseItem?
private(set) var sustainButtonsItem: PauseItem? var fastForwardItem: PauseItem?
private(set) var fastForwardItem: PauseItem? var sustainButtonsItem: PauseItem?
/// PauseInfoProviding /// PauseInfoProviding
var pauseText: String? var pauseText: String?
@ -161,7 +161,7 @@ private extension PauseViewController
self.performSegue(withIdentifier: "cheats", sender: self) self.performSegue(withIdentifier: "cheats", sender: self)
}) })
self.sustainButtonsItem = PauseItem(image: UIImage(named: "SmallPause")!, text: NSLocalizedString("Sustain Buttons", comment: ""), action: { _ in })
self.fastForwardItem = PauseItem(image: UIImage(named: "FastForward")!, text: NSLocalizedString("Fast Forward", comment: ""), action: { _ in }) self.fastForwardItem = PauseItem(image: UIImage(named: "FastForward")!, text: NSLocalizedString("Fast Forward", comment: ""), action: { _ in })
self.sustainButtonsItem = PauseItem(image: UIImage(named: "SmallPause")!, text: NSLocalizedString("Sustain Buttons", comment: ""), action: { _ in })
} }
} }