A game developed using UIViewPropertyAnimator

Overview

Save the Dot

Apple introduced UIViewPropertyAnimator for iOS 10. We can use this new API to control interactive animations. To experiment UIViewPropertyAnimator, we developed this game by using UIKit only 😉 (no Sprite Kit at all 😬 ). And you can see the animations are very smooth, looking forward to see more interactive animations in iOS 10.

SaveTheDot

BuddyBuild Language Platforms License

How to build

  • Clone the repository
$ git clone https://github.com/JakeLin/SaveTheDot.git
  • Open the project in Xcode 8
$ cd SaveTheDot
$ open "SaveTheDot.xcodeproj"

Requirements

  • Xcode 8.0 (8A218a)
  • iOS 10
  • Swift 3

License

Save the Dot is released under the MIT license. See LICENSE for details.

You might also like...
Simple memory game written in Swift 4 using VIPER Architecture.
Simple memory game written in Swift 4 using VIPER Architecture.

Viper Memory Game Simple memory game written in Swift 4.2 using VIPER Architecture. The Memory Game is a deck of cards where the user needs to find ma

A Component Piece (a game) for a larger app (KoyaQuest) using SpriteKit

NyonindoChallenge This is a game that is intended for inclusion in a larger app (called KoyaQuest). I have created a separate version because of probl

A Peggle game implemented in swift using UIKit
A Peggle game implemented in swift using UIKit

Ocean Peggle Author: Tian Fang This is a Peggle game implemented in swift using UIKit. Credits octopus png from pngtree.com pumpkin png from pngtree.c

 🎯 Bull's Eye is the simple game which is consist in guessing the random number (1 ... 100) by using a slider.
🎯 Bull's Eye is the simple game which is consist in guessing the random number (1 ... 100) by using a slider.

The very first project made in 🍎 Swift language called Bull's Eye. 🎯 Bull's Eye is the simple game which is consist in guessing the random number (1

The Classic game TicTacToe made using SwiftUI and MVVM architecture

The Classic game TicTacToe made using SwiftUI and MVVM architecture

BabySortingToyGame - Build a little game for babies to sort shapes in the correct location. This is made in SwiftUI using drag gestures.
BabySortingToyGame - Build a little game for babies to sort shapes in the correct location. This is made in SwiftUI using drag gestures.

This is a demo to build a little mini-game "for babies". It's inspired in this kind of games:

A universal iOS Game using Swift and iOS SpriteKit

a universal iOS Game using Swift 4 and iOS SpriteKit.

Mergel - a match-and-merge game written in Swift, using SpriteKit

Mergel is a match-and-merge game written in Swift, using SpriteKit. It was created for the purpose of having some fun with SpriteKit and learning the Swift language.

Word Scramble is a game that requires you to build as many new words as possible using the letters from a root word
Word Scramble is a game that requires you to build as many new words as possible using the letters from a root word

Word Scramble is a game that requires you to build as many new words as possible using the letters from a root word.

Comments
  • Fatal error: Index out of range: file Swift/ContiguousArrayBuffer.swift

    Fatal error: Index out of range: file Swift/ContiguousArrayBuffer.swift

    I have modified the code, by adding an action to perform a segue to the "Main Menu" apart from "Try again" button after the game is over. But, when the player exits the game View controller and clicks on some other view controller, the app crashes. It gives the following error:-

    Fatal error: Index out of range: file Swift/ContiguousArrayBuffer.swift
    

    This is the only change that I have done:-

    func displayGameOverAlert() {
          let (title, message) = getGameOverTitleAndMessage()
          let alert = UIAlertController(title: "Game Over", message: message, preferredStyle: .alert)
          let action = UIAlertAction(title: title, style: .default,
                                 handler: { _ in
                                  self.prepareGame()
               }
          )
          let action_2 = UIAlertAction(title: "Main Menu", style: .default, handler: { _ in
                                        self.performSegue(withIdentifier: "2to1segue", sender: self)})
          alert.addAction(action)
          alert.addAction(action_2)
          self.present(alert, animated: true, completion: nil)
        }
    
    question 
    opened by pk26-lab 2
  • minor updates for release xcode/swift 3

    minor updates for release xcode/swift 3

    Thanks for making this demo for UIViewPropertyAnimator, @JakeLin. I recently got around to checking out the project, having seen it a little while back in (I think) Dave Verwer's "iOS Dev Weekly. Ran into a few issues when trying to run the project, so this PR covers the changes needed to fix that.

    1. Switching private to fileprivate (for simplicity, all of them have been changed to fileprivate).
    2. Syntactic change from if-else using where to using guard instead.
    3. Replacing if-else with switch where possible as it appeared this was the original intent.
      • Code comment mentions compiler error on checking enum value in switch; reason for error is explained here. For simplicity, enum value is force unwrapped.
    opened by spacedrabbit 0
  • Advice on adding accelerometer for controls

    Advice on adding accelerometer for controls

    Do you have any advice to make tilting the device move the player or would use of the accelerometer as control not be feasible? I want to make a PR that implements this functionality. Another feature I would like to add is being able to use swipe gestures to hit the ball like a game of billiards.

    opened by MDCurrent 6
  • The game will be slow

    The game will be slow

    Hi, Thank you for your code and I really like it. I have one issue, when the game reached more than 3 minutes, it will be very slow and the user can not move the dot. Thanks

    opened by hemnf 5
Owner
Jake Lin
Dad of 👶 & 👦, iOS & Android dev and Mobile Tech Lead @ REA. Passionate about design, animation, kid coding and ₿. Make @IBAnimatable and SwiftWeather.
Jake Lin
Mobile IOS Game App Developed by Haemi Lee, Dominika Popov, and Dylan Walsh

VroombaWars Mobile IOS Game App Developed by Haemi Lee, Dominika Popov, and Dylan Walsh Why clean your room in real life when you can have a virtual v

Haemi Lee 1 Oct 16, 2021
Chess Timer - Time calculation application developed for chess game

Chess Timer Satranç oyunu için geliştirilmiş süre hesaplama uygulaması

Nurşah ARİ 0 Jan 8, 2022
IOS Spin Game - A simple spin game using SwiftUI

IOS_Spin_Game A simple spin game using Swift UI.

Md. Masum Musfique 4 Mar 23, 2022
A little arcade game that uses SwiftUI as a game engine.

SwiftUI Game A little arcade game that uses SwiftUI as a game engine :) Just copy the code into the Blank playgroundbook in Swift Playgrounds app on i

Roman Gaditskiy 10 Sep 30, 2022
The one and only open source 4X MMO mid-core strategy game for iOS. Similar to Game of War and Mobile Strike

4X MMO Strategy Game for iOS I have spent 4 years of my life and a significant amount of money into completing this game and I hope you enjoy it. For

shankqr 69 Nov 16, 2022
🦁 🃏 📱 An animal matching puzzle card game– built with turn-based game engine boardgame.io and React-Native + React-Native-Web

Matchimals.fun an animal matching puzzle card game ?? ?? ?? Download for iOS from the App Store ?? Download for Android from the Google Play Store ??

iGravity Studios 137 Nov 24, 2022
Switshot is a game media manager helps you transfer your game media from Nintendo Switch to your phone, and manage your media just few taps.

Switshot is a game media manager helps you transfer your game media from Nintendo Switch to your phone, and manage your media just few taps.

Astrian Zheng 55 Jun 28, 2022
Gravity Switch - A dynamic game that integrates swiping and tapping to create a fun interactive game

GravitySwitch Gravity Switch is a dynamic game that integrates swiping and tappi

null 3 Nov 19, 2022
FlagGuess-Game - A game to collect points by guessing flags

Flag Guess Game A game to collect points by guessing flags! Wrong Choice

Ahmet Onur Sahin 3 Apr 18, 2022
CardGameEngine - Prototyping a game engine for the Bang card game

CardGameEngine Prototyping a game engine for the Bang card game. Features Engine is open source Powerful scripting language using JSON Card design is

stephtelolahy 5 Nov 22, 2022