Skip to content

Project Part 2: CRC Cards

Alex Nguyen edited this page Feb 11, 2023 · 48 revisions

Player

Responsibilities Collaborators
Keeps a unique username of the Player QRCode
Keeps a score of the Player
Keeps a Player's avatar as an image
Keeps total QR codes scanned by the Player
Keeps list of QRCodes a user has scanned

PlayerActivity

Responsibilities Collaborators
Displays a list of QR codes a user has scanned (name and photo of location if applicable) Player
Allow users to select a QR code and go to QRCodeActivity QRCode
Displays the player's highest and lowest scores (through queries from PlayerController) PlayerController
Displays the player's username and their avatar
Displays buttons that allow the user to navigate to other pages

PlayerDB

Responsibilities Collaborators
Creates a new Player with a username, score (initially 0), avatar, number of QRCodes scanned (initially 0), and a list of QRCodes scanned (initially empty) in the Firebase Firestore database PlayerController
Reads the values of a Player in the Firebase Firestore database PlayerDBConnector
Updates the values of a Player in the Firebase Firestore database Player
Deletes a Player from the Firebase Firestore database

PlayerDBConnector

Responsibilities Collaborators
Connects to the Firebase Firestore database PlayerDB

PlayerController

Responsibilities Collaborators
Keeps a list of players PlayerDB
Add a player to the list of players and updates PlayerDB to reflect the changes PlayerActivity
Updates PlayerDB by editing a Player Player
Delete a player from the list of players and updates PlayerDB to reflect the changes
Provides LeaderboardActivity with a list of all players queried from PlayerDB
Sorts the list of players by total score

QRCode

QRCodeEditActivity

QRCodeActivity

QRCodeDB

QRCodeDBConnector

QRCodeController

Geolocation

GeolocationActivity

LeaderboardActivity

MainActivity

Map

Comment

Clone this wiki locally