From 19f2f521ac6ce552d10b01ecfff76b95efc42c49 Mon Sep 17 00:00:00 2001 From: Alan Knowles Date: Wed, 30 Mar 2022 17:19:54 +0800 Subject: [PATCH] add correct code --- GameProjectTest/AppDelegate.swift | 10 +- .../Image.imageset/Contents.json | 21 +++ .../Image.imageset/iterations.png | Bin 0 -> 297 bytes GameProjectTest/ContainerController.swift | 56 +++++++ GameProjectTest/GameViewController.swift | 64 ++------ GameProjectTest/HomeController.swift | 155 ++++++++++++++++++ GameProjectTest/Main.storyboard | 32 ++++ app.GameProjectTest.xcodeproj/project.pbxproj | 140 ++++++++-------- .../contents.xcworkspacedata | 2 +- .../UserInterfaceState.xcuserstate | Bin 30797 -> 34480 bytes .../xcdebugger/Breakpoints_v2.xcbkptlist | 14 +- .../xcschemes/xcschememanagement.plist | 2 +- 12 files changed, 366 insertions(+), 130 deletions(-) create mode 100644 GameProjectTest/Assets.xcassets/Image.imageset/Contents.json create mode 100644 GameProjectTest/Assets.xcassets/Image.imageset/iterations.png create mode 100644 GameProjectTest/ContainerController.swift create mode 100644 GameProjectTest/HomeController.swift create mode 100644 GameProjectTest/Main.storyboard diff --git a/GameProjectTest/AppDelegate.swift b/GameProjectTest/AppDelegate.swift index f17c824..6414124 100644 --- a/GameProjectTest/AppDelegate.swift +++ b/GameProjectTest/AppDelegate.swift @@ -1,13 +1,13 @@ // // AppDelegate.swift -// GameProjectTest +// GameProjectTwo // -// Created by Alan Knowles on 29/3/2022. +// Created by Alan Knowles on 30/3/2022. // import UIKit -@main +@UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? @@ -15,6 +15,10 @@ class AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. + + window = UIWindow() + window?.makeKeyAndVisible() + window?.rootViewController = ContainerController() return true } diff --git a/GameProjectTest/Assets.xcassets/Image.imageset/Contents.json b/GameProjectTest/Assets.xcassets/Image.imageset/Contents.json new file mode 100644 index 0000000..f601856 --- /dev/null +++ b/GameProjectTest/Assets.xcassets/Image.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "iterations.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/GameProjectTest/Assets.xcassets/Image.imageset/iterations.png b/GameProjectTest/Assets.xcassets/Image.imageset/iterations.png new file mode 100644 index 0000000000000000000000000000000000000000..cd1f79f5bd480249177d262a53fbef85f92f8285 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^DImr9;xflQdPS889* zWdW;Ya5(Nf^W5U6Uz@)@;nA4pm?Wu!LY#G+cdA5^5u*0O$Dn2VFMj&vSY5;>a#~>{ sj}Qv+Okwr^OSdlnSmdKI;Vst00=8&0ssI2 literal 0 HcmV?d00001 diff --git a/GameProjectTest/ContainerController.swift b/GameProjectTest/ContainerController.swift new file mode 100644 index 0000000..9818187 --- /dev/null +++ b/GameProjectTest/ContainerController.swift @@ -0,0 +1,56 @@ +// +// ContainerController.swift +// UPlab_MVC +// +// Created by Ernest.lee on 17/10/2019. +// Copyright © 2019 Ernest.lee. All rights reserved. +// + +import UIKit + +class ContainerController : UIViewController +{ + //MARK: - Properties + var homeVC : HomeController! + var centerController : UIViewController! + + + + + //MARK: - Init + override func viewDidLoad(){ + super.viewDidLoad() + configureHomeController() + } + + override var preferredStatusBarStyle: UIStatusBarStyle { + return .lightContent + } + + override var preferredStatusBarUpdateAnimation: UIStatusBarAnimation { + return .slide + } + + override var prefersStatusBarHidden: Bool { + return true + } + + //MARK: - Handlers + + func configureHomeController() { + let homeController = HomeController() + // homeController.delegate = self + homeVC = homeController + centerController = UINavigationController(rootViewController: homeController) + + view.addSubview(centerController.view) + addChild(centerController) + centerController.didMove(toParent: self) + + + } + +} + + + diff --git a/GameProjectTest/GameViewController.swift b/GameProjectTest/GameViewController.swift index be5bd9c..1dbd238 100644 --- a/GameProjectTest/GameViewController.swift +++ b/GameProjectTest/GameViewController.swift @@ -1,20 +1,23 @@ // // GameViewController.swift -// GameProjectTest +// GameProjectTwo // -// Created by Alan Knowles on 29/3/2022. +// Created by Alan Knowles on 30/3/2022. // import UIKit import QuartzCore import SceneKit - - - - - class GameViewController: UIViewController { + + override func loadView() + { + let scnView = SCNView() + self.view = scnView + + } + override func viewDidLoad() { super.viewDidLoad() @@ -45,10 +48,10 @@ class GameViewController: UIViewController { scene.rootNode.addChildNode(ambientLightNode) // retrieve the ship node - let ship = scene.rootNode.childNode(withName: "ship", recursively: true)! + //let ship = scene.rootNode.childNode(withName: "ship", recursively: true)! // animate the 3d object - ship.runAction(SCNAction.repeatForever(SCNAction.rotateBy(x: 0, y: 2, z: 0, duration: 1))) + //ship.runAction(SCNAction.repeatForever(SCNAction.rotateBy(x: 0, y: 2, z: 0, duration: 1))) // retrieve the SCNView let scnView = self.view as! SCNView @@ -63,50 +66,15 @@ class GameViewController: UIViewController { scnView.showsStatistics = true // configure the view - scnView.backgroundColor = UIColor.black + scnView.backgroundColor = UIColor.red // add a tap gesture recognizer - let tapGesture = UITapGestureRecognizer(target: self, action: #selector(handleTap(_:))) - scnView.addGestureRecognizer(tapGesture) - scnView.isHidden = true + //let tapGesture = UITapGestureRecognizer(target: self, action: #selector(handleTap(_:))) + //scnView.addGestureRecognizer(tapGesture) } - @objc - func handleTap(_ gestureRecognize: UIGestureRecognizer) { - // retrieve the SCNView - let scnView = self.view as! SCNView - - // check what nodes are tapped - let p = gestureRecognize.location(in: scnView) - let hitResults = scnView.hitTest(p, options: [:]) - // check that we clicked on at least one object - if hitResults.count > 0 { - // retrieved the first clicked object - let result = hitResults[0] - - // get its material - let material = result.node.geometry!.firstMaterial! - - // highlight it - SCNTransaction.begin() - SCNTransaction.animationDuration = 0.5 - - // on completion - unhighlight - SCNTransaction.completionBlock = { - SCNTransaction.begin() - SCNTransaction.animationDuration = 0.5 - - material.emission.contents = UIColor.black - - SCNTransaction.commit() - } - - material.emission.contents = UIColor.red - - SCNTransaction.commit() - } - } + override var shouldAutorotate: Bool { return true diff --git a/GameProjectTest/HomeController.swift b/GameProjectTest/HomeController.swift new file mode 100644 index 0000000..35c2486 --- /dev/null +++ b/GameProjectTest/HomeController.swift @@ -0,0 +1,155 @@ +// +// HomeViewController.swift +// UPlab_MVC +// +// Created by Ernest.lee on 17/10/2019. +// Copyright © 2019 Ernest.lee. All rights reserved. +// + +import UIKit +import SceneKit + + +public extension UIView { + enum ViewSide { + case Left, Right, Top, Bottom + } + func addBorder(toSide side: ViewSide, withColor color: CGColor, andThickness thickness: CGFloat) { + + let border = CALayer() + border.backgroundColor = color + + switch side { + case .Left: border.frame = CGRect(x: frame.minX, y: frame.minY, width: thickness, height: frame.height); break + case .Right: border.frame = CGRect(x: frame.maxX, y: frame.minY, width: thickness, height: frame.height); break + case .Top: border.frame = CGRect(x: frame.minX, y: frame.minY, width: frame.width, height: thickness); break + case .Bottom: border.frame = CGRect(x: frame.minX, y: frame.maxY, width: frame.width, height: thickness); break + } + + layer.addSublayer(border) + } + func anchor(top: NSLayoutYAxisAnchor?, left: NSLayoutXAxisAnchor?, bottom: NSLayoutYAxisAnchor?, right: NSLayoutXAxisAnchor?, + paddingTop: CGFloat, paddingLeft: CGFloat, paddingBottom: CGFloat, paddingRight: CGFloat, + width: CGFloat, height: CGFloat, enableInsets: Bool) { + var topInset = CGFloat(0) + var bottomInset = CGFloat(0) + + if #available(iOS 11, *), enableInsets { + let insets = self.safeAreaInsets + topInset = insets.top + bottomInset = insets.bottom + + } + + + translatesAutoresizingMaskIntoConstraints = false + + if let top = top { + self.topAnchor.constraint(equalTo: top, constant: paddingTop+topInset).isActive = true + } + if let left = left { + self.leftAnchor.constraint(equalTo: left, constant: paddingLeft).isActive = true + } + if let right = right { + rightAnchor.constraint(equalTo: right, constant: -paddingRight).isActive = true + } + if let bottom = bottom { + bottomAnchor.constraint(equalTo: bottom, constant: -paddingBottom-bottomInset).isActive = true + } + if height != 0 { + heightAnchor.constraint(equalToConstant: height).isActive = true + } + if width != 0 { + widthAnchor.constraint(equalToConstant: width).isActive = true + } + + } +} +/* + HomeVC is the main controller, it is responsible for Nav bar control and setting up childVC + */ + +class HomeController: UIViewController{ + + + + //MARK: Properties + let mapVC: GameViewController = GameViewController() + + + + //MARK: Init + override func viewDidLoad() { + super.viewDidLoad() + view.backgroundColor = .gray + setUpVC() + setUpNavBar() + setConstraints() + } + + + + func setUpVC(){ + + //Map VC + + addChild(mapVC) + + // if let frame = nil { + // mapVC.view.frame = frame + // } + + view.addSubview(mapVC.view) + mapVC.didMove(toParent: self) + + + } + + + func setConstraints(){ + /* + mapVC.view.anchor(top: nil, left: nil, + bottom: nil, right: nil, + paddingTop: 0, paddingLeft: 0, paddingBottom: 0, paddingRight: 0, width: 0, height: 0, enableInsets: false) + if #available(iOS 11.0, *) { + mapVC.view.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor).isActive = true + } + + mapVC.view.addBorder(toSide: .Left, withColor: UIColor.black.cgColor, andThickness: 1.0) + */ + + + } +} + + + +extension HomeController { + func setUpNavBar(){ + navigationController?.navigationBar.barTintColor = .white + navigationController?.navigationBar.isTranslucent = true + navigationController?.navigationBar.backgroundColor = .white + + + let threeButton = UIBarButtonItem(image: #imageLiteral(resourceName: "Image").withRenderingMode(.alwaysOriginal), + style: .plain, + target: self, + action: #selector(handleThree)) + + + + + navigationItem.leftBarButtonItems = [threeButton] + + } + + //MARK: - Nav Bar Handler + + + @objc func handleThree(){ + //delegate?.handleThreeToggle() + + } + +} + diff --git a/GameProjectTest/Main.storyboard b/GameProjectTest/Main.storyboard new file mode 100644 index 0000000..dc00fc4 --- /dev/null +++ b/GameProjectTest/Main.storyboard @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app.GameProjectTest.xcodeproj/project.pbxproj b/app.GameProjectTest.xcodeproj/project.pbxproj index 3637ac9..cfcffbc 100644 --- a/app.GameProjectTest.xcodeproj/project.pbxproj +++ b/app.GameProjectTest.xcodeproj/project.pbxproj @@ -7,26 +7,30 @@ objects = { /* Begin PBXBuildFile section */ - E7F55F6327F2E26100A63CCF /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7F55F6227F2E26100A63CCF /* AppDelegate.swift */; }; - E7F55F6527F2E26100A63CCF /* art.scnassets in Resources */ = {isa = PBXBuildFile; fileRef = E7F55F6427F2E26100A63CCF /* art.scnassets */; }; - E7F55F6727F2E26100A63CCF /* GameViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7F55F6627F2E26100A63CCF /* GameViewController.swift */; }; - E7F55F6A27F2E26100A63CCF /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = E7F55F6827F2E26100A63CCF /* Main.storyboard */; }; - E7F55F6C27F2E26200A63CCF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = E7F55F6B27F2E26200A63CCF /* Assets.xcassets */; }; - E7F55F6F27F2E26200A63CCF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = E7F55F6D27F2E26200A63CCF /* LaunchScreen.storyboard */; }; + E7F55F8F27F4271800A63CCF /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7F55F8E27F4271800A63CCF /* AppDelegate.swift */; }; + E7F55F9127F4271800A63CCF /* art.scnassets in Resources */ = {isa = PBXBuildFile; fileRef = E7F55F9027F4271800A63CCF /* art.scnassets */; }; + E7F55F9327F4271800A63CCF /* GameViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7F55F9227F4271800A63CCF /* GameViewController.swift */; }; + E7F55F9827F4271900A63CCF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = E7F55F9727F4271900A63CCF /* Assets.xcassets */; }; + E7F55F9B27F4271900A63CCF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = E7F55F9927F4271900A63CCF /* LaunchScreen.storyboard */; }; + E7F55FA227F427B800A63CCF /* ContainerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7F55FA127F427B800A63CCF /* ContainerController.swift */; }; + E7F55FA627F434D400A63CCF /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = E7F55FA527F434D400A63CCF /* Main.storyboard */; }; + E7F55FA827F4399A00A63CCF /* HomeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7F55FA727F4399A00A63CCF /* HomeController.swift */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ - E7F55F5F27F2E26100A63CCF /* app.GameProjectTest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = app.GameProjectTest.app; sourceTree = BUILT_PRODUCTS_DIR; }; - E7F55F6227F2E26100A63CCF /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - E7F55F6427F2E26100A63CCF /* art.scnassets */ = {isa = PBXFileReference; lastKnownFileType = wrapper.scnassets; path = art.scnassets; sourceTree = ""; }; - E7F55F6627F2E26100A63CCF /* GameViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GameViewController.swift; sourceTree = ""; }; - E7F55F6927F2E26100A63CCF /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - E7F55F6B27F2E26200A63CCF /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - E7F55F6E27F2E26200A63CCF /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + E7F55F8B27F4271800A63CCF /* app.GameProjectTest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = app.GameProjectTest.app; sourceTree = BUILT_PRODUCTS_DIR; }; + E7F55F8E27F4271800A63CCF /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + E7F55F9027F4271800A63CCF /* art.scnassets */ = {isa = PBXFileReference; lastKnownFileType = wrapper.scnassets; path = art.scnassets; sourceTree = ""; }; + E7F55F9227F4271800A63CCF /* GameViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GameViewController.swift; sourceTree = ""; }; + E7F55F9727F4271900A63CCF /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + E7F55F9A27F4271900A63CCF /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + E7F55FA127F427B800A63CCF /* ContainerController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContainerController.swift; sourceTree = ""; }; + E7F55FA527F434D400A63CCF /* Main.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = Main.storyboard; sourceTree = ""; }; + E7F55FA727F4399A00A63CCF /* HomeController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeController.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - E7F55F5C27F2E26100A63CCF /* Frameworks */ = { + E7F55F8827F4271800A63CCF /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( @@ -36,31 +40,33 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - E7F55F5627F2E26100A63CCF = { + E7F55F8227F4271800A63CCF = { isa = PBXGroup; children = ( - E7F55F6127F2E26100A63CCF /* GameProjectTest */, - E7F55F6027F2E26100A63CCF /* Products */, + E7F55F8D27F4271800A63CCF /* GameProjectTest */, + E7F55F8C27F4271800A63CCF /* Products */, ); sourceTree = ""; }; - E7F55F6027F2E26100A63CCF /* Products */ = { + E7F55F8C27F4271800A63CCF /* Products */ = { isa = PBXGroup; children = ( - E7F55F5F27F2E26100A63CCF /* app.GameProjectTest.app */, + E7F55F8B27F4271800A63CCF /* app.GameProjectTest.app */, ); name = Products; sourceTree = ""; }; - E7F55F6127F2E26100A63CCF /* GameProjectTest */ = { + E7F55F8D27F4271800A63CCF /* GameProjectTest */ = { isa = PBXGroup; children = ( - E7F55F6227F2E26100A63CCF /* AppDelegate.swift */, - E7F55F6427F2E26100A63CCF /* art.scnassets */, - E7F55F6627F2E26100A63CCF /* GameViewController.swift */, - E7F55F6827F2E26100A63CCF /* Main.storyboard */, - E7F55F6B27F2E26200A63CCF /* Assets.xcassets */, - E7F55F6D27F2E26200A63CCF /* LaunchScreen.storyboard */, + E7F55F8E27F4271800A63CCF /* AppDelegate.swift */, + E7F55F9027F4271800A63CCF /* art.scnassets */, + E7F55F9227F4271800A63CCF /* GameViewController.swift */, + E7F55F9727F4271900A63CCF /* Assets.xcassets */, + E7F55F9927F4271900A63CCF /* LaunchScreen.storyboard */, + E7F55FA127F427B800A63CCF /* ContainerController.swift */, + E7F55FA527F434D400A63CCF /* Main.storyboard */, + E7F55FA727F4399A00A63CCF /* HomeController.swift */, ); path = GameProjectTest; sourceTree = ""; @@ -68,39 +74,39 @@ /* End PBXGroup section */ /* Begin PBXNativeTarget section */ - E7F55F5E27F2E26100A63CCF /* app.GameProjectTest */ = { + E7F55F8A27F4271800A63CCF /* app.GameProjectTest */ = { isa = PBXNativeTarget; - buildConfigurationList = E7F55F7227F2E26200A63CCF /* Build configuration list for PBXNativeTarget "app.GameProjectTest" */; + buildConfigurationList = E7F55F9E27F4271900A63CCF /* Build configuration list for PBXNativeTarget "app.GameProjectTest" */; buildPhases = ( - E7F55F5B27F2E26100A63CCF /* Sources */, - E7F55F5C27F2E26100A63CCF /* Frameworks */, - E7F55F5D27F2E26100A63CCF /* Resources */, + E7F55F8727F4271800A63CCF /* Sources */, + E7F55F8827F4271800A63CCF /* Frameworks */, + E7F55F8927F4271800A63CCF /* Resources */, ); buildRules = ( ); dependencies = ( ); name = app.GameProjectTest; - productName = GameProjectTest; - productReference = E7F55F5F27F2E26100A63CCF /* app.GameProjectTest.app */; + productName = GameProjectTwo; + productReference = E7F55F8B27F4271800A63CCF /* app.GameProjectTest.app */; productType = "com.apple.product-type.application"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - E7F55F5727F2E26100A63CCF /* Project object */ = { + E7F55F8327F4271800A63CCF /* Project object */ = { isa = PBXProject; attributes = { BuildIndependentTargetsInParallel = 1; LastSwiftUpdateCheck = 1330; LastUpgradeCheck = 1330; TargetAttributes = { - E7F55F5E27F2E26100A63CCF = { + E7F55F8A27F4271800A63CCF = { CreatedOnToolsVersion = 13.3; }; }; }; - buildConfigurationList = E7F55F5A27F2E26100A63CCF /* Build configuration list for PBXProject "app.GameProjectTest" */; + buildConfigurationList = E7F55F8627F4271800A63CCF /* Build configuration list for PBXProject "app.GameProjectTest" */; compatibilityVersion = "Xcode 13.0"; developmentRegion = en; hasScannedForEncodings = 0; @@ -108,55 +114,49 @@ en, Base, ); - mainGroup = E7F55F5627F2E26100A63CCF; - productRefGroup = E7F55F6027F2E26100A63CCF /* Products */; + mainGroup = E7F55F8227F4271800A63CCF; + productRefGroup = E7F55F8C27F4271800A63CCF /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - E7F55F5E27F2E26100A63CCF /* app.GameProjectTest */, + E7F55F8A27F4271800A63CCF /* app.GameProjectTest */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - E7F55F5D27F2E26100A63CCF /* Resources */ = { + E7F55F8927F4271800A63CCF /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - E7F55F6527F2E26100A63CCF /* art.scnassets in Resources */, - E7F55F6F27F2E26200A63CCF /* LaunchScreen.storyboard in Resources */, - E7F55F6C27F2E26200A63CCF /* Assets.xcassets in Resources */, - E7F55F6A27F2E26100A63CCF /* Main.storyboard in Resources */, + E7F55F9127F4271800A63CCF /* art.scnassets in Resources */, + E7F55F9B27F4271900A63CCF /* LaunchScreen.storyboard in Resources */, + E7F55F9827F4271900A63CCF /* Assets.xcassets in Resources */, + E7F55FA627F434D400A63CCF /* Main.storyboard in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - E7F55F5B27F2E26100A63CCF /* Sources */ = { + E7F55F8727F4271800A63CCF /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - E7F55F6727F2E26100A63CCF /* GameViewController.swift in Sources */, - E7F55F6327F2E26100A63CCF /* AppDelegate.swift in Sources */, + E7F55FA827F4399A00A63CCF /* HomeController.swift in Sources */, + E7F55F9327F4271800A63CCF /* GameViewController.swift in Sources */, + E7F55F8F27F4271800A63CCF /* AppDelegate.swift in Sources */, + E7F55FA227F427B800A63CCF /* ContainerController.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXVariantGroup section */ - E7F55F6827F2E26100A63CCF /* Main.storyboard */ = { + E7F55F9927F4271900A63CCF /* LaunchScreen.storyboard */ = { isa = PBXVariantGroup; children = ( - E7F55F6927F2E26100A63CCF /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - E7F55F6D27F2E26200A63CCF /* LaunchScreen.storyboard */ = { - isa = PBXVariantGroup; - children = ( - E7F55F6E27F2E26200A63CCF /* Base */, + E7F55F9A27F4271900A63CCF /* Base */, ); name = LaunchScreen.storyboard; sourceTree = ""; @@ -164,7 +164,7 @@ /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ - E7F55F7027F2E26200A63CCF /* Debug */ = { + E7F55F9C27F4271900A63CCF /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -224,7 +224,7 @@ }; name = Debug; }; - E7F55F7127F2E26200A63CCF /* Release */ = { + E7F55F9D27F4271900A63CCF /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -278,7 +278,7 @@ }; name = Release; }; - E7F55F7327F2E26200A63CCF /* Debug */ = { + E7F55F9F27F4271900A63CCF /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; @@ -297,7 +297,7 @@ "@executable_path/Frameworks", ); MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = roojs.GameProjectTest; + PRODUCT_BUNDLE_IDENTIFIER = roojs.GameProjectTwo; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_VERSION = 5.0; @@ -305,7 +305,7 @@ }; name = Debug; }; - E7F55F7427F2E26200A63CCF /* Release */ = { + E7F55FA027F4271900A63CCF /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; @@ -324,7 +324,7 @@ "@executable_path/Frameworks", ); MARKETING_VERSION = 1.0; - PRODUCT_BUNDLE_IDENTIFIER = roojs.GameProjectTest; + PRODUCT_BUNDLE_IDENTIFIER = roojs.GameProjectTwo; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_VERSION = 5.0; @@ -335,25 +335,25 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - E7F55F5A27F2E26100A63CCF /* Build configuration list for PBXProject "app.GameProjectTest" */ = { + E7F55F8627F4271800A63CCF /* Build configuration list for PBXProject "app.GameProjectTest" */ = { isa = XCConfigurationList; buildConfigurations = ( - E7F55F7027F2E26200A63CCF /* Debug */, - E7F55F7127F2E26200A63CCF /* Release */, + E7F55F9C27F4271900A63CCF /* Debug */, + E7F55F9D27F4271900A63CCF /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - E7F55F7227F2E26200A63CCF /* Build configuration list for PBXNativeTarget "app.GameProjectTest" */ = { + E7F55F9E27F4271900A63CCF /* Build configuration list for PBXNativeTarget "app.GameProjectTest" */ = { isa = XCConfigurationList; buildConfigurations = ( - E7F55F7327F2E26200A63CCF /* Debug */, - E7F55F7427F2E26200A63CCF /* Release */, + E7F55F9F27F4271900A63CCF /* Debug */, + E7F55FA027F4271900A63CCF /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; - rootObject = E7F55F5727F2E26100A63CCF /* Project object */; + rootObject = E7F55F8327F4271800A63CCF /* Project object */; } diff --git a/app.GameProjectTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/app.GameProjectTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata index 3e701cd..c56743c 100644 --- a/app.GameProjectTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ b/app.GameProjectTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -2,6 +2,6 @@ + location = "self:/Users/alan/Projects/GameProjectTwo/app.GameProjectTest.xcodeproj"> diff --git a/app.GameProjectTest.xcodeproj/project.xcworkspace/xcuserdata/alan.xcuserdatad/UserInterfaceState.xcuserstate b/app.GameProjectTest.xcodeproj/project.xcworkspace/xcuserdata/alan.xcuserdatad/UserInterfaceState.xcuserstate index 35a1ff437a78c6220f07983de6e0272d6c3b8be9..fba043779d79a482455bcbab1ae80ac2a8ba7f57 100644 GIT binary patch literal 34480 zcmeFa2Y3`!+b}$5W_C&-$%ce<(tFwLW;dHcNH1*ak{%MW*~8cjnBw&pCH5=S)X` zugx*2Rv#u1K@t=}6AFSMSi-F-YLRuoVYBx&N0|pYdu;HnE^5%;-xOujHw)}>ZUzO&H*f+P6)+ClT6RY2Rls32krF_rKm{D}Y}kw_wv2^En-s0j^` zN@xikkwN4V^+W^FNHh`6#9X3yXABbOwUy0ukfoP;a9O98XQX(%j4S6FU6oNug7z#%bC=%tOJd}?LP$4Qp z#i#_8qS?rR%1}9~LUT|pszddt1+^kG>Oh^yg3d$pkpm5)A#^pm23?D;L)W7l(2eLO zbThgI-HL8Qx1&4I2wIQsK|9ccXeZi*9zqYJr_j^r8T0~r3mrjkqoe2@^e%c2y^lUa zC(udsIr@&I$tmPiavJGN`jJ6oFd0UMld)tRnMA5d4VgyHBy-4IGLI}GE6F-?F4;z! z$WGEi_K-Gm0og|`BnQYv?<9xG5polGH+c{F0J)od zf_$2MhJ1m1ncPplP97lNAm1cEAU`F)AipNRAy1P(kiU?>l7CVJMN=VEC>2J9QxQ}o z6-7l;F;pxSN5xagl#WWH^i(!Aiz=o{s8XtoDyJ%_2C9*2qME6>R2$VrbyGc*jT)jB zQH!Z1)KcnvY8iC_wVb+;T0vb(t)?!cE~l=iZll&w8>o%cCTa_HAGMu&klIP@ruI;e zP)|@#Q!i5osUy_8)Q8l^)F;#l8qp+8(KM}~8JeXzny209DYPf;O9#_4=x92Ij-}&h zHLao3XgxiPE~HE8a=Mx}(sgt@ZKgZuPTE5E(+lYV+CdM}=hMq*fxetxLtjDPMBhx` zLf=KNrPt9L=zHjG^wab+^t1GH^z-x!^gjAU`X%~h`UCny`WXE$`Xl;d`V;y~`WyN* z{R91@LZM(3tb$YU3O9w1V!Fat;im{vL@J^bYK2CTs?aKQiZn&0B113%s}z?gE?2BkT%ou| zaff1^Vpy?R@u=ci#S4mkikB7p6|X5?R~%9tR=lM+qIgH~uHrq#F~z?WA1RJ2K2w}h zoK}3R_)+mYgBX$tWP+GrW(E_&gfd}FI1|A{GEqz%lftMOJ(JGlGI>lsV_?b{BU8uJ zGxL}>#>8|oHf90S$6UZHXD(z`Fam>_Ynkhq>zNyv8=0G!o0(gf4a`Pn6LU9n53`wh zjCq`Sg4xSF$vnk8%{;?A%RI+C&%D6wV_sxlVGc1zn13-JF&{IZFrPBVnQxfW%umek zEX#82G}fC9U<26@HinI5gF5H6GpuN~U(avgH}aeKyZL+g&HNUAE5D7u zm%oqS&fm{J!0+H624Wr+4WI~M?_Uc@wk6sQrxhnOzV81)LVCS{aXqbp8L zFH$Gx7Z;Tz>(YwT;8R9Pa;8RKpw_C3G#X8YN$F!KDsHq7%y;ygJFP|b&Y=a?zCjn{ zKq7)jxSI$ff{7VK2oXwz5#fSDU<6j+1YU3xrrb?L5>fCI1GnOccwwsG4nH1nODO~j zDwEP*?BCXBu`jMOcNCZh42}ky!`9JjZ5zE&GGJa{H7R38FUTz$&90`6w!xlSTVHpt z74DdnapQ+9_id`Gt+6@=?E_}$SyI16=0USb846AFI|o63kIoUgD75zt4%mBptpg@y z&iKwI-cuK+WtM0&b;;_~;-X|-abZz%W?_12a$0J-R$Zvpl;o$En3Mry!?xRdJI2kB zgV`@zrq`>J!qPLBCxtE3=+y8zQ>|XU{2-AAnAH>MB3>;p)@m<$MTg5AK_o>h7&h{s znj!CVyxWwi?jD{>uW8;s(|!H?0|JABXM}`?g@;DWtE!b3OMU-#I zOKBYdS`$$*02phis;xH|icCsnRc(oFz%dAI`t5xd>p)9YZJ|hpRT2`Fqn%Wkm)eI0 z9dNsLaA~i#((ITIi#2*1p0}NEEw%Pp2h4+DXqlAWF7TtMG8D-pC>`iG6g5eMF<6$g zx!P3?E$FZg2uPp=h64s51X^Id1WzRaH0tF={kUB@Eh;)DHZDFPQI|C{yTDLZUNuMN zEt4_?5CeD#6Okg~BuxCT$xMY`>a?`5dKhU|hFuv;n86C`2fM8lJ}n@ugb^$R- z>Ldn>%uv*}TQ-R}@htl+_^o&d(Iau({0jsr7MnHYNp{RCn0JsN0PrOwN z2#~oLq(y3Rfxe(vpP#JD*XomXI!$VFewt33TvDhlPAkYSQK#mYv@R3ZCkYlPL%saq zteo7uxv~iA1Kc;sAFU3+&-ek1>>@nJ63OfQ?-M_H`*(*5#-Y8IcvN=qtc>{s{eqekQ$0f3S8F$y8ED z>d6c;i_9hq!M=5nLtxJ?CD)Pnk~_%9$>+gRJwhHMPf}CC{xpESSxHq>=TR4dC3!Pg zk!z`K)OJGpMrU0h`C80zj8^@4Y$b%A|gY3YEuzh~^K zYYd|h<^i~3i_O_D@0xx);6Gs_uzv>#2@7Erf`u7Eh!84-Z3L;%1G3;eV!jYAqzLsw zgU~8YFRZE4Zn3JMzjE84YIJO>QE6yW2A`veG(MPmt+f}XXtj(!3=V4PfPJW6z5#^m zFezu8qZ5O}F=TbPCg32J5D6QAhKGnn#9|>rh!moP=nceD;(THmu~di=;)Hnk4FmTn zvGopG2PCaqu(T2;0WL9&ro!wP936>x8JMoVuWQoA{&F8yOTA%YKd$jyL|jbxu3IO> z$|QOzv3epm5|xmmo%0NJkNccuETu@`}AFw*WN|N-JkSrusdy&Z#b$56~T(fP^x2SMvkoeZRPNx!*IjA=-N(&j(&OM(!bodsZ~O<(Ul z#pjHk=9vcuRgTU+Q0>-1hY}qGBjWG(o3k7G4VpR}d`7Pa!3O#Jy=cFdhI#8%)a@gY z(IZh&kuI4v5)&Jlw^05TnYVhi^l3OAfF?{GNlXI%HTUh$kSXa)9`NI7WO*{0#9DFXW5-Q7lS=_(&CMMC}m! z=t6chfR>?)(IsdNx(aQO$2BTxlU<{h|Dp$FBEFfp1+3oUCH=j!-C8{~*lX*vigHMf zCy6BIWQg^|t;B62iT};^CS`}IZm_hlL8C8fs2hU;vL#hN_H`V{x~2VAN4gW7siD@S z)r_^1NTwD9Z(p~;0;F&2vVoA4r*Q{yr)0djl*6csTuZ+enkbPqulLmFUum4?_GV?4E6Ove+9kv&iM|} zF>(4RHNa!Cgn<4!=NH-+h^#O2P=mR5$m*KeF5*#9+CM}*OzZ}dc|=GTGK5SaOPINl zcnoF~PwXY06tZDHfkK{8BhE;&_e5m_YitJYwn&_BQbxOGlHUvJ%(7G*VPA=Tpvt<~ zXdVLTAx+Gr)Ihu0=0#RR9|#b0Z|_o9KZVA6SzU?i(_`zk3|M7`2aDI$_e4DbMCJq@ z2@MK|2H=Uo3iD83XHTs>*&1sXEO}q2DA*55F6lnv>__XM4CfH>#xQYM$QS0kNxVfIA>Ia=e3W>H zc$at&em(%3>KKSRm*HGt@04V6+Zc@+L43k$k1Ej`yL}LJja9x5PcAUq`o@}z?wlxV ztGir%j@<+Qq7Z(JLV-{X2pCnPGI=>yQB}Oe+Bqc3^y0onwgG#e=uXQ}b1t@tII0%ofUp3Zd!{@j3AY%IdqtdQ+|=@FyZHZVebFG`HRY~up_Be33Af&rMWw5hH~B)u?=l5pL9QMx-zyz9J# zkaVe1ykt_wW?MvB4s*!#64qrO2%7}=Inu}xgIMrr@&^XYOGgkxH`3sFglhC{#1)?CrCd?ID!0ZDd5Issm6HGqI zWK#h$hdKv`2Ec5J_^WoZ-DXmT|5YQWh4?pY%)ezGq9~*x61EW=z?q3faVQ=ophQrK z$w-A#kQ(IqJfTf63GISe=ny&ui(nPHgzjx96={(U>4-@2hlod6;wPjNdIXzr9{isw z{R9fV(x>xWlJYEp1(IDf^b5g;GWUa2l$4jO2V8}eTO%RU7 zeWH4`$hSs2n)s9$+W{Q_EPVE3B3p^l*`*XD(cC#-a$Y4JBHnZqEER_)kJfnsl+B<` z40wr=fKk8_($AchD5>DuS%jFT7b8dz8$=bv8|#EQ^5<$~Tqn$zrNaSKGa?F8C5p`J z&y(y97hyJ_CL&=NH464&)GYLiYa9-mWxzNfiunPnr4S6%Zt#7ImwkV#l53)!eU{`2oPc< zklR#=*hU|(u$t#vEwV)b(Tb*;(K}8nqGZ6nU{tNRx?Y4<5(!(;VzdM;MdyP_cmZ0D zE<`JkfUt1BuuQl>ST0;BtPlhN3oC_-gp0SLi-^r=6}kvridLh`(B)u3UV*L@R)J)_ z1b$yCT#r!&Mzt9AU}VE+zMyKWG%v9&fas0O8b~Oxg2=Usq-Y+nIqZFsiBk_qb*_T! zqRNJkr_&yiJOPNz%^iQ!OEw;?1GNx~926H1wC9+ED_wQjR+0S!wguo^xo%5&Qp-f~ z45k54d6BitJk&cV^)36~VNRfM)z%LoTM?R3?oJN6fJ5x!dRPBev((I~-$cD0=Iq!g zCTks{EjSUnLrKi7?zi?C`XG+!@@>(bXst*#cL}S9(K_KW5$|4LB#+KmvW8@W-yjnF zMzl$|T)0M<f zi{?s0ow%@-=58?FhAh@*SRr|ik$D$!6L@tudh9Gnj{~H=!nFYDI?;dil-5@cTZn5L znKz)8`jBVvELc$JIpKz}(eFdAfgO%sL@%M2(SGy_dR4elxJkHKxJ9^CxNQ@99UVXi z;rC%+i`#`eFiI3|$EaLnkcp%sk6DZmn`Q4GkS$-E4afiiA{ot&dGa-p_%zzY7IAgU zZG9FgNH7DqYN*#D@|F=Y9yQj55Q7*5Iu^|)hmvxw_y_1CQJH>-j-h`EcM5k2YuBTX zQ5MP))`70*6;U`%L~*{u3EFAVDqS=LHzm4(^(tBl;YwSl>x#TgUl1oYp)b)X^cDIV zeS=O5!@@(tbHZWaLyTq!RY%bG=m+#8`Uynt&*&HQEBX!nPP~i$BnjeOk|ZfG94*e| z$pkY*j*5qOfgl&-WTG-qIizsxL`sEmImD`gu>hk<8Pq35x}28fneDwM+!f)pxJFQ4 zQvpxAzKx0TQO`}-Bs>VF?1-=nem@}WoM2p&3X&mN;scT=HVa#Y4Z?k3^R5@lOv;o| z6Jx?0W%G6{P&I0~NJ~q)6DQV_9;7F!6gCQX3!6u+UGy8V4UEoB;NyV}=`T9#B43P! zzg3RKwk}9UNwzWRFIk-Th!*D=j=ZbI45`JI$y$&RgeMtEMv>9PyW`iXSyaWa@(cQf zZNj|*VN%wJxXMaNNfE`TBgNcn?n`loTO29l0}6}nlYO0R29io9yFAJA`d=XW8T|aNL0MM#yYw zHvK~#y|zvng~<;4&_E}cJjtUJB-#kFU~nym%4qF2JBA#!Qrkips@!uvSsg$qYFNI2R*nZ$8Q zty`rQuTIv&iN3oe^t~>lul66J4}{S__L9- zSwhY>K+b*Sc0kS%2{~^7ay}5=KNC4S$OlJ}^RDpbMC9xdk@E=oDEXN1mhiT4bPPG0 zrIkD)^TWA$YaB{kSlTB&`OaV9;1vl6@5wkQ|K~V3i-X3m{VUSizc(?ke)d|vg?=aB zCXd2ezDvFbYxyy(d?TC|z7@U`z88KF ze%wk;6Fop8lJceeD1RydJ_Uh0`IF=mP8EK`h{6b}YW#(%7zM~~X5g5Tk~NRYA!TsD zr-Ja%**C$yt+e%lx6}{L_N2E(eOG9QI#Y8u=*iGY+ZZ6EDAmq@2Yq%gy;8x&sI>=e zBG2wcN;`pF4jRec)diUyx$Z`u1VjKtJ{K)@=STUv)P6FMau!SOPE1{#Ywr0&gFW^E z7}42FBbp>7_FfA_WFXIW)_@m7{gO=2qK-zgp41RA^bi}WeIafqQ)Y~&U^I1v>ZB|f zxntxZ#MXC;B|Y;x?U1kS9&%Oa1Q-em?VWaWoqedY$2mfIK(0>DqwIw525LUlOD&-K zF!IDmiIEpZ(>753)Iw^2a$w|*kq<`GG4cgKHjB-^puqx!*J+&#hJe)!DV$Dgi+w;$ zLPI&F|`t-K#YPWkV<_QQ1+Qb z0_X(3191y}Aea|}j!6_MwT8Nac$c~gl)zimwbXSOg<}*CHQ*=&bn3?##bJ~%!Q`QC zpl)<20*qoX3Z0+|sM|pmPk#hEXI&QKQ-bpp6h;NiZTrec+id<$S?xb0&Ym z50`zgvsD4LRaCARMW0(2Q1^?v0Hau085sV#GB{&g9u4z6VA+j8Z0eAAk$MP?K)7-=v{9mV8$2gHT5an6SG5_L?*nO4NvN|||7^P#Bfl($#Ss2a4C>x_$80BD;yM_9}sc3(peuV)O=^5ZlBbj3NY3LGWu-L(qP7 z0H{vdAEUxy8f071-&3A+2pujdPdZFgp2Z*$X%IJ{JWGVwGZdy5yKJP&CXD6@y%>@ts-_BSmn)$V7>%S zyz4A~s_nFk$+EBsH>Jlx0T)?;Wo-QrScd0)Cp3|I7h|ig!4A=jA;eEF!l-SSUVE-l=7`0>6IT|RZF}>={;5&T@5l^qi$SeRqbO^DdOA1lK!w`inlZG#v4EA1YiBv%+=W?bw zlO-Z%>+BNF4$;H(2!yF?iC^jUklCoJ9Zi^2NJc8yALFh`2*F4W3DO(sO%UK4ePD#X z8$yEPF1Tj5nchMqKslbub>Uw6VW{_{@1wWV_tOv1JLm`Lo%AmHA&eGa1csm;qkfDQ zVl;pen1F*A4MD9By@!5;ew2QUew==S-b+6zF3ciKzK6*VF?kwO?wInxloC^3;sW>- zKzd_-zg@JMq@sTCVjzDD=Dd_$k~vs%MjTKv1EEMqt6ckE+u36k6Rtk;S4hADEkOa1 zWL=t+YSDrgb7#F)=x{8TBtKRFK~IbHplxs|1mS@a#Uz5$?w5;>MS_+;iM0fM-2e@$ zKE#p;LtmF2n!C~vqs{&0w6Z*AS7+joT?@LOeuGH3hkk{Am41zWojyRWpbv?5;9`t` zo|j^DK1R!ggBV=^mf$_~oAg`s5&CWVDE$uoF8v-x%Q1QlqeB>dj?rmMsxi3*lh29E zm_ESjeK79izJP_k!8|3v>mBy6OArhlP-rGKM;$LJ!AF2-mT zMwei8=|=ib1))F+QbAz^vhYTXZpP>qjP4MrOWegHBjDde69Qa30fpAEjbkib3e4oJ zWQJ%8plgv0N(vyDVJH}*#nBX#s2s*3SD+WbMK$*=61NVGzu`osVv52O9B{={g}cH7 zqsuV59HTYhfGfNd(}uQ=e61EKH-n@bUZ(UqfCl_FRXI??Y|gekzey9y&n z9Et;`pXJrji>m|v!c9We+-7}a za`o)wo`p?f8Bf8u!qhSJy0Dn7$OVQ}%u;|`aVti*jVSU&PvUmj@KBC>*0}+|XWS)& zL$nqk+ysR&AC6bLic&>2>~>SkRu~jzigHDTqEbKjnQ;=P6UJt0=ru3>Nx{H}l2%deBzZu?|`aLBl}Jj;IWwmB?{W1!eEAur9Lp zIytHcI7umoNFYP+tOSu)z8%ut3bUd^(W$T~tcos-Hez%SMq4lfSKvMjr3_Vv6gI+B zah_tnqLNKsq4-W3C($pHQI!%`WrFBqSr_rUSt1@&MX?ks@J|kV5 zp%p8fU^j}wuIPu{qhzLxDC|&9>>SpBI4q1dO9N>5&jygH)#+7Qy;`f$YBgzEwK&$v zM&N?ANQSj_3|5*pO_i?8)auex(=uRkdU3Ma43!4vqfghT>ePCTS}*M`8b4WB9<6o~ zSn11`yI`F!!@Bp}u%v~Z2uq!wD#DsDFPL7&WGg!k)`c>x?dL!uOfqc}B&JOY3Rd8( zB^(E8r3~tUb5Bci#u94NGt)ED|K1X&rl;waFOST9OJ8}t0OcsDaom^t4xN=NNx%$0Uag*o^jq1lS z<+wp{GpNQ}6=1pVmh|Ey7(FVeWUjkY>NbE^&1_qS$y&spe|4 zMX}@Wil_$_I~BVW4=Em2>=s27M6q7P=p~F^#%MoAuZSW_9@S%_EO=b;gkrDaNySr& zr!jgQqrDhCh0!w@J%`Z?W3u2m8H-Ph!(ysVm7c2Br|R`u*d3@Bmoim zO0Utv_jI*BJwq>2r&0Xgx!Q4TbiNYj9t5;>{(=xQ044pJJ z36?Gs=Bi5r83)o!r%%^N)OjW>k-;axf@Oh%O&5b7kYPP5!IC8Bne!5vPM-k+Mw^kL z$<(HTe9}vxV1uVhug%cw)VfpTg znn0%+fU{KC@0*#KnwkOVm+2oW@`n|lU?_vDnp@DINiL~LZWyR@aoh>T=irGePGa=> zu;L4h4o)!n72n7v`2mx%^q-sL6Lwm;0Dq@|FzYxMTk(_P7jYy%V{~{}@he7eP8bOT zC&Y*W@Hb4##Y>Wxh-tNCi_Ia1zZZ1$E`@?7hZqktb%~qpb9>L&-Z2XlQ)ZV%lctW5 znn_j6v(1j4S*e+sI&B6lC5U5fMw&*i$sE@Nc80*C8ck+rYM0tMa)x3&AVAE}jDlep zmf;wlabu=1QyB<8zJ<{djNZoRC`RvK^e#s4Ve~#mA7J$17RFN!5HsF#fSBKt4uU70uzIw!cxwzGVu@~W)g_a;txh231!kRp-LI# zLbZm`LWr12#psh^Mu*X-e=kJLWH2+q31Tv-T#Swje~vKOQ~^fdU!$`_#BNF#v;wAB ziVQPFQe^lfM1~p2FCcjGtjAo>lrxpUHB1FYUko!~&YzmdHMKI=d}&ht4=Qga@NdeX zb&0rbL)G8c?HWV_(+sMeX=Iu(`U<13#eqZQ6bAl{=qQZ3!mdD&t1{3r&*dZ=p)5eo zfiqyc%P~P$DwnY^u-kZ;v10V?Fw>3E_Y>#XE6?#elhXKKl2Iv+9$UY-In*^lJ2M0! z1E!x@$P6$J2EuzkVDuwKKVby&>X(hoB4#nOgjp(DBEMoX0+Vr=Opx8Aq}p;hsw9UE z#2RKPh&L7y7#GzMiy9_x4)w&N5pA&Y&e3XIr$Zewz`yQttgIvM99@clfejsyhL$^Y zEy_yfGAOiWE@CcbRxy__mogA6`3)n8r~HA@pO_>ti8c}O%o-w+xsthxxf;TsBnb&H zlES1PCjCX)h@S{mh9t(|q@C$fY+S77a8^@KSQ;q+S=}#gMsrB_!zcDtW*Y<-a%?M% z)aHzZn=F_jVMl5lII%;gmo42FYgi_XW)wND$Gv=L*Gk>W+y(YDa~pFza|d%LCTUD6 zFv(z&-N3A6*1-nK&6wmc$%EXNV&PfP_hdtpWg$$d$mZyWf*A4Cku!)1;*;liSd9FN zX9PfHtF(_4wp7R)xW|abq%1ne!}4|_fDbzg2W_3sn6y+{0K++J3?k7_Iss_}HDY9X z4C*w3qI8n6!fYW3PX$!XGOZ%q1Naylk`g{p|$H2T{JF&q-HSN!zEiiTt z%Mp?D%vU}Ux#Fk%s*t3JeD3bbi2RmquSDbu1e`Mm+mV=;#QmCLzQVOvf_asB9b}W7 ziD3?4GQjC}Foz-Q!o0z}iAkXPu(1c;X5NFu33HTrhj|y1L6{82SS4u!m3oO*qtEC_hf{l` z7!jMmCPEnlu+*6fbUmBICQIe$liZxVScj5z$hnEP0Ig!C6H{93`F-ovSGw1>!iib z;}Q_8L58F^DgUcAvU1*mtzcne;#RhjtzxTLBRhw!VQbkswx0f(ZNy{-CNnV!%RLj5 z*_fP#$sA1PVlq!mPmuXr*=E^!VCS)Itch(WBH0dbAIJiy`#=_9ayBLnn1roNn5_7J z&xQCm#g+es5|n>epUL)vZOSghWTDfAU>Vs52*5O{#N-^OGGNz=i)0fCcB_)2zaXd|2>}iFEGu&VatEZ zQ}2q@1SJt|E}r@jc#1v7{!9G9qzRMl@^5g=W0n3cbe~{97kTR>COd}NFEH8pH+k!8 z_FJG-_8V}`Nej5n<*0JG9XMYhl5X` zJC>hCSYB@OIW=67REi&&C+~hEo@?M5xhAfeo6EIut(XK8OkS~tYjcum2iGYU zzH(h6nO^B4(`zt!11u6y>5czOrT-VG6l{=TZU~cCxu|rBNTo~3tHmEoUM;*N{Q@d= zo!`d^+)9x~F($7a<^Z?SPWykqZ-l#)yIdrzT<$W_Fu5Lt-#JTPBlDsrNKWor?gp78 zua`*jroVdFMUuC1kTcxE-Ok;?-O1g>t>xBn!`ukBp4))QTQGSmCU3*!?U=j+lMq(9 z3zKUxxek-VTR8E&E%?uEkwfhqoL_*+5f@2rz|LB1@}B=C$^Q!^2|3qc?r}`6cah|i zqMdy1T5RqG?nRLx_hEA5FbDLy>2C_nSGfZ+LB1{$_PjHC2ld=c7&7>^+$Fb;1w-a+; z$vxj^QqKMldWL->XPy!`u6x-r$xAfpSYhf`5-1A z#jsr!g0)E#>Ida$uq*6xW@rM6b0%vpRn6Il9ChY_ZmYA(vQXTN1*LV9^lp-`jc+Z5 zbGSc&!gz=b%c zcjMgwsr(ckG}FVF+&#j3kp7t5BitjX8sy0}$bjMWjmgFVRinx57$fz+BJh9K6pY7l@H}3C&45i#Yc;nd;*i;3jrpjCFCLfHOwbq za_{&hOy*VGS3HZ!r!e^>Chv1DT;jJUtq-}tYI*$`3zyDkVDf29J|j}eBx^PKCY(u| zx`5>Hc@XR4!327Kn9s-Lz6p%Rm&ok!!vCliRjTfFjP3(-fj00pP@Bw`@#TC4U&&YT z)x43PgUJ^$38Lv`Ozy|zE0}y0ldoa&^?UeQzK*Zw8~8@PiErk?tvrCqgP1&w$u}_h zCMMs)DunA;7mF2wRlQ@Cfv_p7-*tSITuod7N6<*s zfAbuja1I5;;FHaeSrRwjNj)WtN4YvLc>;e8mOw?fSm_Oo=85}o7eU#cbYCV0EAjF= zAy@v~L%cl9+c0@ZJo-?nN-->e?3@aA_daFLbe+h>pO1{g{4z`)73R-T&6Sr$oPw)w zfyWd3zL>uR6bTQO>ifeySgIdDEFDUA#q(q2<3-LoTSeL~%3s0XO!#i$ujH@duja4e zujQ}fujg;zZ{%;nBcj>*q3c>{w?YCZlD~t$lfR2! z%R@Q`lb>Vq3$QFevV4ijQ<(e;lV4-<8@LqP3gL>gi-1DZ4yglRp` zxH{RD9Lu6Xi?qEp`Ha?CnZ?EV8ATd(azUXsJz1BkNl(tu!5a#Sq25nh1XVz3I$gba zV1Zs&XET~DP2#VNBu%P|CU)_UK(>v4h<}*h&F{hFx0w76lc3pt*uX!^KgK`KgCP77 zlRse+gyJtE@%aLYOxy$Ed})AquHM8O4dPi`;x_oRZ#i?3u;b#ar<~g_;KACV1>&J% zGBMU#yQPz$>ZOzA8Z_EsjYg|HDYM}|;*ItEi~LJGNSt3Wg)l{rCSLeg`GX+o`PcZ@ zd5|{0Ve)rO{;{4v#2@BCTmOkE(2YNeQxgl;C(d93XgHM2J^(vEOv=Q+Zdd@-HMLea ze@#A`JpQj+%P^#>*2p~B41;!FZCz7~ z^Gzl4t0v$Sc;~$2cLBiZu49M(2_&5MPBqsK!7{K+q)bHW>C7=;1(k zhl4kqE?)w9i8sU-S9nB3!pj`siul?BfYepeYwmW4r+|;{3xk`Y9E;40kyq4fwG!S` z!U%pqz$)1L?b>frZxDMefW6rVJ>cCC5OS8`jP*2b*uDZM4mDX5v|g2>7NobHtcOBd zaFyKQ6nk%Aa`|a-T%*syCN_94Mx6+!#A+5r3Y=*xo>}Y|*Tmn|q~1{P0Oc`y>!7bk zR`&2rc#VON2s;HM$)@q{%y-TID}1V8JQ=ae@Gm3BM477 zEz5jR?NACz@)O8?R@^I%w7mRcWXtd!J* z8wX}Q;RWKyRWIc>)eQ<1rE9}(o|y7<8vJh4#OejHrF@{OoA21+s%`RDIP~M zC>}?W4EDchvSDqK_n3xco|AA2$BYPGe8@>!|g7pyLk}a z-1Z#v60;vFTMj|}$`R%$i&%d)n$H?kE#{<@Z}XB*jOwgqz1Cf3Ye z0PkMg$$r2gcsp7fXX4K1F5=d>d$=pz1KgwBlig>!7q}bTYurul1MY+Fi`pCy%Kf0UjwH1s+C^ zIUa2uHjnup3q0%|3q2ej7kUUDD?KjuxWr?%$K@XPdhGZ3(Brh{G|y1aIL`#nBu|y6 z+B4I0rspirT+e*ZLeIILeV&(kj(BeOyx;Qy&j&pp^L)|sRnHTiKY0G^`K#w2pg~CG z3}uY6P+6=jowj5ep0;J$1JjOr=X%ffZu7Q!4|uQe#@-isukyas`!eq}-nV$)=6#3v zUEb@wN4z(9Z}NWL`$O+ve5U(E`Q-Xk_%!-7`?UDX^D+6DeR_TReENL`dKb`)E zua|GKZ;G$RSL>VRo9>(GyTEsm?+Rb+dy(%d-%EWj^S#M;*!OPV&AwZG@Acj3`;hNm z-}ik#@+18`{k;6V{igec_=Wi;`=$74{Iq^~eg%F-ekFeWeoOtZ-z9!m``zOAjNd-L zZ~cDrpW;8wKiFUEpXOiZZ}#u;KhM9{zt4Zjf3g2k|7HHm{Wto*ufaqx8B7QB z!Bc|WgFS;|gAKtA!3%=z!3%>O!9&4|gO>&`3tk?)A{Yl>6ntCo9l>`6uL~Xt-VnSg zcysW!;O)UXf_DW!9Q=Inw=)zolry4cWY6fBv1G>WGoF}nY{o}3PR;mr#vdU>2o<6T zVMBsKqC(N5~~1*M!^}vMJ==knJH4 zgghAXNXTO$PlP-f@^r}IkoQ794LK3=dB~R`zl5@(eCU)=_fXGJuTbyMu+WImsL&61jF=kX5uuEj7SSEiA8|>;FT4H))&Wq`d>5Ew& zb9u}aF;~T06Z2`zw=v(x{223dYqXy(o57?4_}n z#jc6HGWMp}J7d?z4#%#K-59$gc4zEEvAbjU$G#o=PV9TJAH;qUdn)$p*wb++&Ld74 zH!aR5t|QJKw=m8THxzeK+=jSKareY+iQ5);U)%$65610^do}L$xPx(r*j3*w97YvbGFJK`G<#Be~AAn{+IaQ;{Qk>637HPAt+%+LTEyGLS#a8LR>;( zf+|6spiM|iNKdFsa3tKEuqWZYL@F^U(U@pYyee^P;?Bf}6Za%On)qzuD~Ycq9!NZt z_(tMeiEk&qllWQU=ZRk?ew}za@w+6iq>!Y@r0Ar$q~s)Zk~S$VDL=`W)SNUosWr)z z)RQ!nbV1UJq?JjllCDU)I_bKk8>1fhNNna#=m2^7kyJVEiB=gBrlf9CC zlKqkcl0%b|lMTrY$)@CvWNUIy^8Dn%; znW~wp*{VvFQB|vIQnjesRPCxR)sSknYO`vaYP;$I)lStzs@KOHOZPRO|_;*Q?F^#v}oEiW{pMDtvOG#K(kV_N^_~^GR+#zRhnxx*K2On+@iTn zbBAV+=7{FE)R5GI)SlEUQn#kQlzKe%>(p;ke@OjFi?nW9cde&(n$}0_tBusgXydg> z+7#GLTBU8#wre}IR_%G(1=@b?fEH^n)?TT-O}kb*qTQ(7qPe_W3I*YDL=gbO&{B=#J=)=|0vS*PYOPp*yAfG0ihAFfA%gla`e>D=jarFs&r5 zI&Dr`ZCXQGQ`+3LC22RN?M^$8_I}#2w2#w{r=3juLQm*GR@78bDZ`JSB zAJ!k!f1l2!Pf7Pl4@-|u*QDp9=cebS7o=CGccfd>d(!8p_oXjPA534Iet!D$^lQ?u zOTRJwmh{`x?@Av|-;jQH`j+%<>CdEpnEqu3osphl$mq&gl5u^;x{L=hc4j=B@kqww z8BbF?)aZYuQJ#-^qSI`&jnJ*`H>AKPz-r z`K%DIng>f%|D)hBL8$jXhB>-Vu7kaT`;Slq`**6QBYk_ zQ_xb-R$wl$6m%EZ3I+;>3YHX{U$Cm+x`LYvZY#L6V5DGU!QBO$3mz(Xu3%rm%LT6% z94I(k@K(Xmf)fQ_6ns^1y5ReQp9+30_`TrILauOnp?_geVMt+kVN_vkVSJ&!Ftaeb z@W#TC!i|OZ6rm!IBCjH!q6J0g7cDOmijEY0QuJBT=f!YhNO4_pWAXjPdy1bgexZ0@ z@k_;rivKL(N~V-}lqgGrO5#cqOH?JA5?zVDq_70SS0!a7H`VzDZQ$6ed(ssdrG&I zZY$khx}$Vw=|iP^N*^tKy!2@4&$DOD&Yj&k`?A^h&fY)!a|37aGWZz$3;~7+L!v=t zP#d&{G()-}(@r(uubF~eTN zvxXN8FB$e5-Z6Y;_}p;H@QvX+!w+RtnWBs>b1Q2vTTnJoHdMBxY}c8XvJ+*Wmz^rlFRvRIaTYsoYw5U*!Xp4_5A~e7N$vDoxdrs=KSU zRqd)eQuR*N`&GxPKCU`mb+YQqs;{fQt@@$r=c?bT{;Vde71dm|TeWAkPjx_bNOfd& zTy=7FYIS;bc6EMrNp*R3U3Fu1b9GB~PxbujzUqb5gVl?wS5#kIeQEXO)mK#CTD`7% zef6g5&DHl;KUlr1dUy3B)%&X7sQ#?_MD^+FKaGr$H%>Kr8hwoc#vo&eG0Yfm)EhI6 z*~VOBfw9O~X{<5U8=H)CjorpR<3i)0ak242BQ{=Syu`TLc&+g+<3{5>#;wNtjJu4x zjgJ@~H|{m=GrnOwVtmK=zVSojzveJ=Jm*ZCGkuQVoTNGFbMogD%_*HzHm7n<^_-D8 zTjxAI=jA!a=6p8ij~btv@S3EWl$z8UT}^sTW=&B|X-!#8WsR|>wx+(OqsCIxRb#7p zq~?X17i(Uwd9^mGR#U63O{>kQy`=W~+AX#B*4|(HVC_S-duku6-CO%~?Q^yJYG1DX zSM4XY$7@g2eqMX3_M6)8YJaT#x%Ri(KkA6O8Fkrp?R6{bHr4H~`@G(>UR7USUsvB) zKexWM-df*R-(NpaKUlx0eo6hR`qlMo>aVK5w*LD1`|BUCf4ctJ`WNc=*S}VOu>NrU zNA+LS|6Kn^18Sff_=c$so(*0NVGR)tDGmCD%!cfS+=h|{LqkPFb;F#7xefCg+8a6= z>8p*mzCj&c-(z ze`yM9Dr)L%TG_O=>7J&oP4_k3-?XRc>89tJ_BFlS^lH=VO$VC}HyvyGxaoM)$)+!x zzG|M@9MBxn9Nrw+9M_!KtZG&_=QbBKmp3;x&ueaP?riR9p5NTp+~2&S`HJS@<_*nv zH*aaaxB33&2b&*i-qZY8^WNse&2Kfo-TY4Td(9s7VFT-0(& z%j%YmEjwBsZh55Tv6iP=o^5%d<;9jGE$_5^-114w@s_V!PPhEoO1HADZmpiJ(^{vu z`nATiYFlTwmbX^5&S|Y{ZET&}IT|D+xu%eJrEzHR%V?PrsR$;;$znr`wl1)64@Cw0vYuv1VHWWxd9_#rlx-MeE1b(_M-#zpm&mRaZ)vrYoy! zR##qEL05g(P}hZBYr3xJy0Yu)t~ zq~}!6uQuAo+T3jJHl;1V7HkW(McATkv9>&0i*1o@vu(TWA=_@-Q?`A!mu;`w4%iO; zpO)KOexRyxHbI_^>#lZc3kbj#;O@7L>{{)MioYotRl{S-|jQj8_W zGNogQEX%BPh?F{Pr^o;Be1@k`4wX<1@8K(ahhH=y!Vpqe#TwSJgB0Lv=EFYX fqdw*np75k^`=KBEiJ#Vse-zbik2elLgXOM&vEq-E literal 30797 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 diff --git a/app.GameProjectTest.xcodeproj/xcuserdata/alan.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/app.GameProjectTest.xcodeproj/xcuserdata/alan.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index 28be669..8d9ce7a 100644 --- a/app.GameProjectTest.xcodeproj/xcuserdata/alan.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/app.GameProjectTest.xcodeproj/xcuserdata/alan.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -1,23 +1,23 @@ + startingLineNumber = "8" + endingLineNumber = "8" + landmarkName = "unknown" + landmarkType = "0"> diff --git a/app.GameProjectTest.xcodeproj/xcuserdata/alan.xcuserdatad/xcschemes/xcschememanagement.plist b/app.GameProjectTest.xcodeproj/xcuserdata/alan.xcuserdatad/xcschemes/xcschememanagement.plist index 2399452..3eefc80 100644 --- a/app.GameProjectTest.xcodeproj/xcuserdata/alan.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/app.GameProjectTest.xcodeproj/xcuserdata/alan.xcuserdatad/xcschemes/xcschememanagement.plist @@ -4,7 +4,7 @@ SchemeUserState - GameProjectTest.xcscheme_^#shared#^_ + GameProjectTwo.xcscheme_^#shared#^_ orderHint 0 -- 2.39.2