Commit Graph

237 Commits

Author SHA1 Message Date
CypherPoet 1948f6964b Add custom filtering functionality 2019-03-14 14:15:44 -04:00
CypherPoet 116b257b80 Implement functionality and testing for using NSCountedSet 2019-03-14 12:01:07 -04:00
CypherPoet 4c5c9a848c setup initial project 39 structure 2019-03-13 09:58:18 -04:00
CypherPoet 158ce43800 update files 2019-03-13 09:40:15 -04:00
CypherPoet 0522cf0ade Implement views for "All author commits"
⚠️ I'm not sure how I feel about the way the persistentDataContainer is being passed around by view controllers, but the best practices for that are still a separate puzzle piece that I need to uncover 🙂.
2019-03-13 07:46:50 -04:00
CypherPoet 380f296483 Add sorting and section grouping by author, making use of NSFetchedResultsController 2019-03-13 01:53:17 -04:00
CypherPoet 98b43c4732 Enhanced Core Data functionality
- parsing Author relationships
- deleting records
- implementing a `fetchLimit` for commits newer than a given date
2019-03-12 10:02:37 -04:00
CypherPoet a205d8d2f2 Add `Author` Entity description 2019-03-11 10:05:43 -04:00
CypherPoet 0c83e74d0e Implement NSPredicate-based filtering 2019-03-11 02:29:00 -04:00
CypherPoet bc8b55dc3c Implement NSMergeByPropertyObjectTrumpMergePolicy
Basically, this means that new in-memory data trumps existing store data if there's a conflict.
2019-03-11 00:37:05 -04:00
CypherPoet 0e3e5f0ba3 functionality for loading saved data from Core Data context 2019-03-10 10:31:42 -04:00
CypherPoet 1d919465d5 Configure Codable-based parsing for Core data Commit Entity 2019-03-10 09:40:46 -04:00
CypherPoet 7348db7a35 Define initial `GithubCommits` data model and `Commit` entity 2019-03-09 08:17:59 -05:00
CypherPoet ab9ca27e2d Setup initial View Controller flow. 2019-03-09 03:41:17 -05:00
CypherPoet 1f4347e974 initialize Project 38 2019-03-09 00:35:18 -05:00
CypherPoet 2a3a04455c Complete first version of Project 37 2019-03-08 05:39:12 -05:00
CypherPoet 9f4d3e00cd Add WatchKit app functionality for tapping wrist on `didReceiveMessage` 2019-03-08 04:57:09 -05:00
CypherPoet 28ef84fd11 add functionality for sending messages to our Watch app 2019-03-08 03:53:50 -05:00
CypherPoet ba8e35831d Add background music loop 2019-03-07 04:43:00 -05:00
CypherPoet 737a24e927 Add card wiggling animation loop 2019-03-07 04:26:25 -05:00
CypherPoet bf9547d804 Add CAEmitter layer for some starry misdirection. 2019-03-07 03:01:42 -05:00
CypherPoet 2ac252008d Add background gradient and animation 2019-03-06 03:00:08 -05:00
CypherPoet 5d3546a137 functionality for animating cards on tap 2019-03-06 01:23:50 -05:00
CypherPoet cd99ccda68 functionality for positioning cards and using view-controller containment 2019-03-06 00:02:22 -05:00
CypherPoet 44c3440d59 Make clearance markers invisible 2019-03-05 02:03:41 -05:00
CypherPoet aafd86e8e4 initialize project 37 2019-03-05 01:57:30 -05:00
CypherPoet 05768fc6e8 Complete initial version of Project 36 2019-03-05 00:47:20 -05:00
CypherPoet c3fb682f41 Add background music node 2019-03-04 22:32:53 -05:00
CypherPoet 77f173eb87 functionality for collision and contact handling 2019-03-04 22:08:35 -05:00
CypherPoet 6348b75872 Setup physics bodies for objects in scene 2019-03-04 01:44:29 -05:00
CypherPoet 4db0f3a796 functionality for adding/positioning game pieces 2019-03-04 00:12:53 -05:00
CypherPoet e4c30b4c84 add start words file 2019-03-04 00:12:29 -05:00
CypherPoet 6fff5a0f7c Resize assets for taller clouds and mountains 2019-03-03 18:06:37 -05:00
CypherPoet e28db5db6f Create background and background animations 2019-03-03 03:24:13 -05:00
CypherPoet 15a6c4be38 Switch scene.scaleMode to .resizeFill 2019-03-03 01:59:55 -05:00
CypherPoet 7c04d6426a Setup player node and propeller animations 2019-03-03 01:38:44 -05:00
CypherPoet 3b8745e3ea add GFX files to Assets.xcassets 2019-03-03 00:33:04 -05:00
CypherPoet 878e7cba92 initialize Project 36 2019-03-03 00:26:34 -05:00
CypherPoet cf6ddd8f5e Project 35 --> Project 36 2019-03-02 20:03:49 -05:00
CypherPoet 53948e433a Project 34 --> Project 35 2019-03-02 02:12:02 -05:00
CypherPoet 30bffffcf2 Add "thinking" spinner 2019-03-02 02:10:13 -05:00
CypherPoet 694e71793d implement game AI logic 2019-03-02 01:19:38 -05:00
CypherPoet b3ffdd4625 Polish up end-game alert timing and current player switching logic 2019-03-01 23:13:47 -05:00
CypherPoet add3d4cb5e Finish implementing protocol conformance for GKGameModel, GKGameModelUpdate, and GKGamePlayer 2019-03-01 22:57:24 -05:00
CypherPoet 670e19b017 Begin implementing GameplayKit
- Implement GKGameModelPlayer protocol in our Player class
- Implement GKGameModel protocol in our Board class
2019-03-01 01:52:12 -05:00
CypherPoet d9d7656a2b initial logic for detecing game states 2019-03-01 00:49:51 -05:00
CypherPoet be3947ab0c Remove unused enum 2019-02-27 23:07:49 -05:00
CypherPoet c8f5199efa Add `Player` class 2019-02-27 22:36:14 -05:00
CypherPoet 30f1c803bd Setup a `Board` class and initial board-setting logic in our main view controller 2019-02-27 22:36:00 -05:00
CypherPoet 8d49dca500 add functionality to `Board` class and setup initial `HomeViewController` properties 2019-02-26 23:32:32 -05:00