We were really confused about where to start, and we decided to brainstorm ideas, and that's when swift told us about SnapKit, a really cool API that integrates Snapchat with Android App Studios. We decided to do some research and decided we could make a really cool, innovative game with this API. From there, we started to plan and had many changes, but eventually decided on a really cool design.
What it does
It utilizes Snapkit to show your username and Bitmoji from your Snapchat account. Then it starts a fun and innovative which takes a random celebrity from a list and displays a picture of them. After this, the game asks for player1 to draw a picture on a canvas of the previous celebrity. Player2 then guesses what celebrity they drew, and a timer will be going on in the background to time how much celebrities they can guess in two minutes.
How I built it
We started from an up-down approach, making a flowchart to design our classes and methods we would use. We also used an implementation that was an open source of the canvas which is what enables the user to draw. After this, we focused on the actual rules of the game and coding these rules using various authorities that failed many times, and eventually succeeded.
Challenges I ran into
Making the canvas, getting all the arrays to work, configuring the game with Snapkit, learning how to use android studios and XML, coding the timer, and transferring data between intents(the different screens on Android Studios).
Accomplishments that I'm proud of
We finished, we have a working canvas, we got the username to show up with the Bitmoji, we successfully used the creative kit, and finished our time as it was many of our first hackathons and all of our first android application.
What I learned
How to be patient, get help from others, work with others on code via Github, use XML, for some use Java, use Canvas, learn how to implement the API, Android Studios and it's intents, activities, and other stuff.
What's next for Snap Guess
It could be a little more pretty and maybe be made with a WebSocket, and processing(the language) to make it more smooth and interactive in real time.