A fast-paced color matching game.

Overview

***DOCUMENTATION:

WELCOME TO COLOURS.

COLOURS is an iOS application built using XCode and Swift.

COLOURS is a game, and the objective is to match all squares on the board to the target color.
    Directions for playing are shown under "help" in the app. Tap each square to change its color.
    Once the square's color matches the target color (represented by the color of the rectangle),
    that square will be disabled and unable to be changed again. Once all nine squares match the
    target color, all buttons will turn back to black, the target color will change, and the buttons
    will be reenabled. Points are scored +1 for each match and +10 for a full board match. Get the
    highest score in 60 seconds.

To inspect and play COLOURS:
    - clone this repo to your local machine
    - inspect the file structure:
        colours-ios
        |
        |->Colours
        |
        |->Colours.xcodeproj
        |
        |->DESIGN.md
        |
        |->metadata.yml
        |
        |->SOURCES.md
    - open "Colours.xcodeproj" in Xcode
    - on the left side of the screen is the file browser
        - Storyboards/LaunchScreen.storyboard contains the splash screen for Colours, a screen that shows while the app is loading
        - Storyboards/Main.storyboard contains all screens in the actual application; follow the paths to see how the screens connect;
            each screen is called a ViewController (VC) and contains UI elements like buttons and labels
        - Controllers/HomeScreenVC.swift contains code for the home screen; click to read the code and my comments
        - Controllers/PlayVC.swift contains code for the play screen; click to read the code and my comments
        - Controllers/ProfileVC.swift contains code for the help screen where instructions on how to play are located; click to read the code and my comments
        - Controllers/GameOverVC.swift contains code for the game over screen; click to read the code and my comments
        - all other files in the file browser contain code and elements, most of which I have not touched or edited; they come standard with XCode projects like this
    - ViewControllers, as mentioned, contain UI elements and content you will see when playing the game; all VC.swift files correspond to a VC; for example,
        PlayVC.swift houses code for the ViewController that contains the playing board; when looking at PlayVC.swift, you will see functions, variables, and
        things like @IBActions, which are actions that occur when UI elements like buttons are pressed
    - to play the app and see it in action, look at the top bar of XCode; to the left of the bar that reads "Colours | Build Colours" is the section to choose a device to run
        Colours on; while the app will run on many Apple devices, I have built it specifically for iPhone; click the dropdown menu and change device to "iPhone 11 Pro" for
        optimal play experience; for reference, this is the device I own and the device I have done all of my playing and testing on; the recording attached contains gameplay
        from the iPhone 11 Pro
    - after selecting the device, click the play button to the left; this will load the app on the selected device and run on Mac in an application called "XCode Simulator"
    - navigate to XCode Simulator (should automatically redirect you), and you will be met with a virtual iPhone 11 Pro; you can navigate the iPhone using your computer
    - COLOURS will load automatically, at which point you are free to navigate and play the game
    - click "help" to learn how to play
    - click "theme" to change the color palette
    - click "play" to play the game
    - while in the game, click the home button in the upper left  corner to go home; click the button in the upper right corner to end the game and restart
    - once the 60 second timer ends, a game over screen will allow you to see your score, your best score, and give you the option to go home or play again
    - your score resets each game; your best score will be stored on your own profile, and will not reset even when exiting the app

For additional information or guidance on how to play the game, consult the video. In general, the game contains a simple objective: tap each box until the color matches the target color,
    and try to score as many points as possible.

The purpose of COLOURS is to provide a fast, fun, simple gameplay experience that is both colorful and immersive. I implemented themes into COLOURS
    to allow for customization and an element of personality.

I hope you enjoy exploring and playing COLOURS. I learned a lot from building an iOS app, and the overall product is something I'm immensely proud of.
You might also like...
SwiftColorArt is a demo application that includes Swift files with all classes and extension necessary to create a font color schema matching to an image
SwiftColorArt is a demo application that includes Swift files with all classes and extension necessary to create a font color schema matching to an image

SwiftColorArt SwiftColorArt is a demo application that includes Swift files with all classes and extension necessary to create a font color schema mat

The purpose of the color game is to find the right color without getting distracted. It is as difficult as it is fun.
The purpose of the color game is to find the right color without getting distracted. It is as difficult as it is fun.

Color Game The purpose of the color game is to find the right color without getting distracted. It is as difficult as it is fun. Getting Started Insta

The purpose of the color game is to find the right color without getting distracted. It is as difficult as it is fun.
The purpose of the color game is to find the right color without getting distracted. It is as difficult as it is fun.

Color Game The purpose of the color game is to find the right color without getting distracted. It is as difficult as it is fun. Getting Started Insta

A splendid route-matching, block-based way to handle your deep links.
A splendid route-matching, block-based way to handle your deep links.

DeepLink Kit Overview DeepLink Kit is a splendid route-matching, block-based way to handle your deep links. Rather than decide how to format your URLs

A simple and lightweight matching library for XCTest framework.
A simple and lightweight matching library for XCTest framework.

Match A simple and lightweight matching library for XCTest framework. Getting started Swift Package Manager You can add Match to your project by addin

An early experimental general-purpose pattern matching engine for Swift.

Declarative String Processing for Swift An early experimental general-purpose pattern matching engine for Swift. See Declarative String Processing Ove

Showcases breathing exercises with matching vibration.
Showcases breathing exercises with matching vibration.

Breathy Showcases breathing exercises with matching vibration. If you want to quickly install it - TestFlight How to run Please make sure you have la

System Color Picker - The macOS color picker as an app with more features
System Color Picker - The macOS color picker as an app with more features

System Color Picker The macOS color picker as an app with more features Download Requires macOS 11 or later. Features Quickly copy, paste, and convert

Simple utility to change macOS Big Sur menu bar color by appending a solid color or gradient rectangle to a wallpaper image
Simple utility to change macOS Big Sur menu bar color by appending a solid color or gradient rectangle to a wallpaper image

Change menu bar color in macOS Big Sur Simple utility to change macOS Big Sur menu bar color by appending a solid color or gradient rectangle to a wal

ColorAssetsFinder can help you find particular color assets easily by hex color code.
ColorAssetsFinder can help you find particular color assets easily by hex color code.

ColorAssetsFinder ColorAssetsFinder can help you find particular color assets easily by hex color code. Features Find particular color assets in Asset

A basic iOS app that takes input from the user, displays it, allows changing both text color and background color.
A basic iOS app that takes input from the user, displays it, allows changing both text color and background color.

Hello-iOSApp App Description A basic iOS app that takes input from the user, displays it, allows changing both text color and background color. App Wa

ColorWheel Test - An attempt at creating a Color Wheel to be utilized for color picking in SwiftUI utlizing various tutuorials on youtube

This code focuses on creating a Color Wheel in which a user will be able to select a desired color to then be implemented in another project that will display that color in an LED connected to an arduino

Make system color defined in UIColor/NSColor available to SwiftUI Color.
Make system color defined in UIColor/NSColor available to SwiftUI Color.

SwiftUIColor Make system color defined in UIColor/NSColor available to SwiftUI Color. About In this library, colors are defined in an asset file. Crea

Fast Swift Views layouting without auto layout. No magic, pure code, full control and blazing fast. Concise syntax, intuitive, readable & chainable. [iOS/macOS/tvOS/CALayer]
Fast Swift Views layouting without auto layout. No magic, pure code, full control and blazing fast. Concise syntax, intuitive, readable & chainable. [iOS/macOS/tvOS/CALayer]

Extremely Fast views layouting without auto layout. No magic, pure code, full control and blazing fast. Concise syntax, intuitive, readable & chainabl

Fast Swift Views layouting without auto layout. No magic, pure code, full control and blazing fast
Fast Swift Views layouting without auto layout. No magic, pure code, full control and blazing fast

Fast Swift Views layouting without auto layout. No magic, pure code, full control and blazing fast. Concise syntax, intuitive, readable & chainable. [iOS/macOS/tvOS/CALayer]

Imagine Engine - a fast, high performance Swift 2D game engine for Apple's platforms
Imagine Engine - a fast, high performance Swift 2D game engine for Apple's platforms

Welcome to Imagine Engine, an ongoing project that aims to create a fast, high performance Swift 2D game engine for Apple's platforms that is also a j

A little arcade game that uses SwiftUI as a game engine.
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

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

Owner
Jared Shelby
Currently studying psychology & computer science @yale; recently completed full-stack web dev bootcamp @flatiron.
Jared Shelby
The app allows the user to change text color and text content when the displayed button is clicked

Hello World! App Description This application allows the user to change text color and text content when the displayed button is clicked. App Walk-tho

null 0 Mar 15, 2022
Codepath-prework - label color-changing app for codepath intro prework

codepath pre-work App Description An app that changes the color of the Hello Wor

null 0 Jan 30, 2022
Demo project to sync color changes to an Raspberry Pi Mood Light via iOS/Android

Raspberry Pi Mood Light Demo project to remotely control an Raspberry Pi Mood Light over Bluetooth via iOS and Android. ?? Watch the video Overview In

Ditto 10 Oct 17, 2022
A zero-code template app that demonstrates how to use TheraForge's APIs and can be used for fast prototyping

TheraForge MagicBox 1.0.0-beta The Open TheraForge (OTF) MagicBox app is a template for creating digital health solutions that help people better mana

TheraForge 0 Dec 23, 2021
Blazing⚡️Fast BTC and ETH Wallet Generator library for React Native, Android and iOS

Blazing ⚡️ Fast BTC and ETH Wallet Generator library for React Native, Android and iOS.

Coingrig 3 Feb 21, 2022
Xcode Plugin helps you find missing methods in your class header, protocols, and super class, also makes fast inserting.

FastStub-Xcode Life is short, why waste it on meaningless typing? What is it? A code generating feature borrowed from Android Studio. FastStub automat

mrpeak 509 Jun 29, 2022
This is a fully functioning Guess The Flag game I created as part of my 100 days of SwiftUI course with Paul Hudson.

GuessTheFlag This is a fully functioning Guess The Flag game that was a part of my 100 days of SwiftUI course with Paul Hudson. In this app my challen

Alex Diaz 0 Jan 19, 2022
Quiz-Swift: a quiz game like TRUE OR FALSE

Quiz-Swift It's a quiz game like TRUE OR FALSE Working.mp4

Burak Pala 0 Jan 11, 2022
Kotlin Multiplatform sample with SwiftUI and Compose (Desktop and Android) clients. Heavily inspired by Wordle game.

WordMasterKMP Kotlin Multiplatform sample heavily inspired by Wordle game and also Word Master and wordle-solver samples. The main game logic/state is

John O'Reilly 56 Oct 4, 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