diff --git a/Guibe/Base.lproj/Main.storyboard b/Guibe/Base.lproj/Main.storyboard
index 23046b4..edfebd6 100644
--- a/Guibe/Base.lproj/Main.storyboard
+++ b/Guibe/Base.lproj/Main.storyboard
@@ -351,7 +351,7 @@
-
+
@@ -517,6 +517,13 @@
+
@@ -524,6 +531,7 @@
+
diff --git a/Guibe/GameLearnViewController.swift b/Guibe/GameLearnViewController.swift
index 24ad8b9..32234c1 100644
--- a/Guibe/GameLearnViewController.swift
+++ b/Guibe/GameLearnViewController.swift
@@ -30,6 +30,8 @@ class GameLearnViewController: UIViewController, AVAudioPlayerDelegate {
var player = AVAudioPlayer()
+ let defaults = UserDefaults.standard
+
override func viewDidLoad() {
super.viewDidLoad()
@@ -55,10 +57,52 @@ class GameLearnViewController: UIViewController, AVAudioPlayerDelegate {
self.fileName = "guibe_wrongdirection"
case 4:
turnRight()
- self.fileName = "guibe_right"
+ let var1 = "guibe_right"
+ let var2 = "guibe_left"
+
+ if defaults.integer(forKey: "handSide") == 1{
+ if defaults.integer(forKey: "bigSide") == 1{
+ self.fileName = var1
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ self.fileName = var2
+ }
+ else { errorMsg() }
+ }
+ else if defaults.integer(forKey: "handSide") == 2 {
+ if defaults.integer(forKey: "bigSide") == 1{
+ self.fileName = var2
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ self.fileName = var1
+ }
+ else { errorMsg() }
+ }
+ else { errorMsg() }
case 5:
turnLeft()
- self.fileName = "guibe_left"
+ let var1 = "guibe_left"
+ let var2 = "guibe_right"
+
+ if defaults.integer(forKey: "handSide") == 1{
+ if defaults.integer(forKey: "bigSide") == 1{
+ self.fileName = var1
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ self.fileName = var2
+ }
+ else { errorMsg() }
+ }
+ else if defaults.integer(forKey: "handSide") == 2 {
+ if defaults.integer(forKey: "bigSide") == 1{
+ self.fileName = var2
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ self.fileName = var1
+ }
+ else { errorMsg() }
+ }
+ else { errorMsg() }
case 6:
showDone()
self.fileName = "guibe_arrived"
@@ -131,6 +175,22 @@ class GameLearnViewController: UIViewController, AVAudioPlayerDelegate {
}
}
+ func errorMsg() {
+ let alert = UIAlertController(title: "Playback Error", message: "Error in either keyValues or filename", preferredStyle: .alert)
+ alert.addAction(UIAlertAction(title: "OK", style: .default, handler: { action in
+ switch action.style{
+ case .default:
+ self.dismiss(animated: true, completion: nil)
+
+ case .cancel:
+ return
+
+ case .destructive:
+ return
+ }}))
+ self.present(alert, animated: true, completion: nil)
+ }
+
}
extension UIView {
diff --git a/Guibe/MainViewController.swift b/Guibe/MainViewController.swift
index d881fd2..576b3c4 100644
--- a/Guibe/MainViewController.swift
+++ b/Guibe/MainViewController.swift
@@ -71,7 +71,8 @@ class MainViewController: UIViewController, AVAudioPlayerDelegate, myProtocol {
@IBOutlet weak var naviFinishedView: UIView!
@IBOutlet weak var arrivedAtDestinationBtn: UIButton!
-// OUTLETS--------------OUTLETS
+ @IBOutlet weak var debugLbl: UILabel!
+ // OUTLETS--------------OUTLETS
// ACTIONS--------------ACTIONS
@IBAction func menuBtnPressed(_ sender: Any) {
@@ -109,6 +110,7 @@ class MainViewController: UIViewController, AVAudioPlayerDelegate, myProtocol {
UIView.animate(withDuration: 0.5, animations: {self.startNaviImg.alpha = 1.0})
DispatchQueue.main.asyncAfter(deadline: .now() + 3) {
UIView.animate(withDuration: 0.5, animations: {self.startNaviImg.alpha = 0.0})
+ self.playStart()
}
}
@IBAction func xNaviPressed(_ sender: Any) {
@@ -125,6 +127,8 @@ class MainViewController: UIViewController, AVAudioPlayerDelegate, myProtocol {
self.cancelBtn.alpha = 0.0
self.persEtaView.alpha = 0.0
})
+ self.debugLbl.text = "–––"
+
}
@IBAction func keybDismissBtnPressed(_ sender: Any) {
@@ -377,6 +381,7 @@ extension MainViewController: CLLocationManagerDelegate {
func playStart(){
let path = Bundle.main.path(forResource: "guibe_begin", ofType : "mp3")!
+ self.debugLbl.text = String(path.suffix(15))
let url = URL(fileURLWithPath : path)
do {
player = try AVAudioPlayer(contentsOf: url)
@@ -387,24 +392,78 @@ extension MainViewController: CLLocationManagerDelegate {
func playRight(){
// currentStepLbl.text = "COM: RIGHT"
- let path = Bundle.main.path(forResource: "guibe_long_right", ofType : "mp3")!
+
+ let var1 = "guibe_long_left"
+ let var2 = "guibe_long_right"
+
+ var path: String = ""
+
+ if defaults.integer(forKey: "handSide") == 1{
+ if defaults.integer(forKey: "bigSide") == 1{
+ path = Bundle.main.path(forResource: var1, ofType : "mp3")!
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ path = Bundle.main.path(forResource: var2, ofType : "mp3")!
+ }
+ else { errorMsg() }
+ }
+ else if defaults.integer(forKey: "handSide") == 2 {
+ if defaults.integer(forKey: "bigSide") == 1{
+ path = Bundle.main.path(forResource: var2, ofType : "mp3")!
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ path = Bundle.main.path(forResource: var1, ofType : "mp3")!
+ }
+ else { errorMsg() }
+ }
+ else { errorMsg() }
+
+ self.debugLbl.text = String(path.suffix(15))
+
let url = URL(fileURLWithPath : path)
do {
player = try AVAudioPlayer(contentsOf: url)
player.delegate = self
player.play()
- } catch {}
+ } catch { errorMsg() }
}
func playLeft(){
// currentStepLbl.text = "COM: LEFT"
- let path = Bundle.main.path(forResource: "guibe_long_left", ofType : "mp3")!
+
+ let var1 = "guibe_long_right"
+ let var2 = "guibe_long_left"
+
+ var path: String = ""
+
+ if defaults.integer(forKey: "handSide") == 1{
+ if defaults.integer(forKey: "bigSide") == 1{
+ path = Bundle.main.path(forResource: var1, ofType : "mp3")!
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ path = Bundle.main.path(forResource: var2, ofType : "mp3")!
+ }
+ else { errorMsg() }
+ }
+ else if defaults.integer(forKey: "handSide") == 2 {
+ if defaults.integer(forKey: "bigSide") == 1{
+ path = Bundle.main.path(forResource: var2, ofType : "mp3")!
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ path = Bundle.main.path(forResource: var1, ofType : "mp3")!
+ }
+ else { errorMsg() }
+ }
+ else { errorMsg() }
+
+ self.debugLbl.text = String(path.suffix(15))
+
let url = URL(fileURLWithPath : path)
do {
player = try AVAudioPlayer(contentsOf: url)
player.delegate = self
player.play()
- } catch {}
+ } catch { errorMsg() }
}
func playErr(){
@@ -415,6 +474,7 @@ extension MainViewController: CLLocationManagerDelegate {
func playTurnArd(){
// currentStepLbl.text = "COM: UTURN"
let path = Bundle.main.path(forResource: "guibe_wrongdirection", ofType : "mp3")!
+ self.debugLbl.text = String(path.suffix(15))
let url = URL(fileURLWithPath : path)
do {
player = try AVAudioPlayer(contentsOf: url)
@@ -426,6 +486,7 @@ extension MainViewController: CLLocationManagerDelegate {
func playDone(){
// currentStepLbl.text = "COM: DONE"
let path = Bundle.main.path(forResource: "guibe_arrived", ofType : "mp3")!
+ self.debugLbl.text = String(path.suffix(15))
let url = URL(fileURLWithPath : path)
do {
player = try AVAudioPlayer(contentsOf: url)
@@ -433,6 +494,22 @@ extension MainViewController: CLLocationManagerDelegate {
player.play()
} catch {}
}
+
+ func errorMsg() {
+ let alert = UIAlertController(title: "Playback Error", message: "Error in either keyValues or filename", preferredStyle: .alert)
+ alert.addAction(UIAlertAction(title: "OK", style: .default, handler: { action in
+ switch action.style{
+ case .default:
+ self.dismiss(animated: true, completion: nil)
+
+ case .cancel:
+ return
+
+ case .destructive:
+ return
+ }}))
+ self.present(alert, animated: true, completion: nil)
+ }
}
diff --git a/Guibe/SecondGameLearnViewController.swift b/Guibe/SecondGameLearnViewController.swift
index 7fe2d1d..7f51e14 100644
--- a/Guibe/SecondGameLearnViewController.swift
+++ b/Guibe/SecondGameLearnViewController.swift
@@ -34,6 +34,8 @@ class SecondGameLearnViewController: UIViewController, AVAudioPlayerDelegate {
var player = AVAudioPlayer()
+ let defaults = UserDefaults.standard
+
override func viewDidLoad() {
super.viewDidLoad()
@@ -58,10 +60,52 @@ class SecondGameLearnViewController: UIViewController, AVAudioPlayerDelegate {
self.fileName = "guibe_wrongdirection"
case 4:
turnRight()
- self.fileName = "guibe_right"
+ let var1 = "guibe_right"
+ let var2 = "guibe_left"
+
+ if defaults.integer(forKey: "handSide") == 1{
+ if defaults.integer(forKey: "bigSide") == 1{
+ self.fileName = var1
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ self.fileName = var2
+ }
+ else { errorMsg() }
+ }
+ else if defaults.integer(forKey: "handSide") == 2 {
+ if defaults.integer(forKey: "bigSide") == 1{
+ self.fileName = var2
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ self.fileName = var1
+ }
+ else { errorMsg() }
+ }
+ else { errorMsg() }
case 5:
turnLeft()
- self.fileName = "guibe_left"
+ let var1 = "guibe_left"
+ let var2 = "guibe_right"
+
+ if defaults.integer(forKey: "handSide") == 1{
+ if defaults.integer(forKey: "bigSide") == 1{
+ self.fileName = var1
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ self.fileName = var2
+ }
+ else { errorMsg() }
+ }
+ else if defaults.integer(forKey: "handSide") == 2 {
+ if defaults.integer(forKey: "bigSide") == 1{
+ self.fileName = var2
+ }
+ else if defaults.integer(forKey: "bigSide") == 2 {
+ self.fileName = var1
+ }
+ else { errorMsg() }
+ }
+ else { errorMsg() }
case 6:
showDone()
self.fileName = "guibe_arrived"
@@ -132,4 +176,20 @@ class SecondGameLearnViewController: UIViewController, AVAudioPlayerDelegate {
}
}
+ func errorMsg() {
+ let alert = UIAlertController(title: "Playback Error", message: "Error in either keyValues or filename", preferredStyle: .alert)
+ alert.addAction(UIAlertAction(title: "OK", style: .default, handler: { action in
+ switch action.style{
+ case .default:
+ self.dismiss(animated: true, completion: nil)
+
+ case .cancel:
+ return
+
+ case .destructive:
+ return
+ }}))
+ self.present(alert, animated: true, completion: nil)
+ }
+
}
diff --git a/Guibe/WrittenInstructionsViewController.swift b/Guibe/WrittenInstructionsViewController.swift
index 82ab57c..020dbef 100644
--- a/Guibe/WrittenInstructionsViewController.swift
+++ b/Guibe/WrittenInstructionsViewController.swift
@@ -41,7 +41,8 @@ class WrittenInstructionsViewController: UIViewController, UITableViewDelegate,
cell.textLabel?.text = "Then in \(focusDistance)m, \(focusInstruction)" }
if indexPath.row == currentStep {
cell.backgroundColor = .green
- cell.accessibilityLabel = "\(cell.textLabel?.text), current step"
+ let txt = (cell.textLabel?.text)!
+ cell.accessibilityLabel = "\(txt), current step"
}
else {
cell.accessibilityLabel = cell.textLabel?.text