Android GUI for a chess game
$100-200 USD
Πληρώθηκε κατά την παράδοση
I am learning Android development and I need some help in creating a game. ? Specifically, I want someone to create a graphical touch interface. ? Not very much back-end code needs to be written. ? This will not be a complete app. ? Just create the front-end for me, and I will do the rest.
## Deliverables
**Purpose:? **The purpose of this project is to create the basic framework for a graphical chess game. ? The game will not be complete, but the data representation, graphics, and touch interface will be largely completed. ? I have intentionally reduced the scope of this game to fit my budget. ? I will do the development necessary to complete the game.
**Screens:? **? The app will have 3 screens. ? All will be graphical-based canvases.
**Start Screen:**? ? This screen will have the app title (a simple graphic will be fine) and several graphical buttons. ? One button will show an Options screen, one button will start the game, and a couple other buttons will be placeholders, but will not do anything.
**Options Screen:**? This screen will be triggered by the Start Screen. ? It will have a set of radio buttons, a dropdown menu (spinner), and a checkbox. ? Use dummy values for all. ? Create the appropriate OnClick/OnChecked listeners, but they won't do anything. ? Finally, there will be a button to return to the Start Screen.
**Game Screen:**? This is where the chess game will be played. ? A standard 8x8 gray and white chessboard will be drawn with the standard starting positions for the black and white chess pieces. ? Use some generically available graphics for the chess pieces, such as the ones found here:? <[url removed, login to view]~wij/fixation/[url removed, login to view]>. ? At the top of the screen, above the board, show some information about the game such as the following:
| Round: 3 Black ? ? ? ? ? ? Time: 1:18:05
[icon][icon] ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? [icon][icon]
_______________________________________________
| ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| ? ? ? game board ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | |
Where it shows [icon], please display some white pieces on the left and some black pieces on the right. ? This represents the pieces that have been lost.
**Game Interface:**? A user should be able to pick up any piece on the board and drag it to any space. ? The piece shall replace the piece that is currently on that space. ? You do not need to implement any rules - let the user pick up any piece and put it anywhere. ? All I ask is that when the piece is dropped, a function such as checkMovement() is called. ? This function can simply return True - no other code is needed. ? If it returns False, the piece should be returned to its original location and a dummy message displayed on the screen. ? (Have checkMovement() return False to test this.)
There should be two buttons below the board - Commit and Undo. ? Commit will call commitMove(), which will not do anything. ? Undo will undo the move, restoring the game board to the state prior to the player's most recent move.
**Animation:**? the pieces should be animated such that they follow the user's finger to their new location, and if the move is invalid (ie. checkMovement() returns false) the pieces should "snap back" to their original location.
**Scaling:**? the screens and board should scale according to Android screen size. ? The board should take up the width of the screen in portrait mode and of course, be square.
**Orientation:**? upon orientation change (portrait to landscape) the board should be drawn on the left and the text, captured pieces, and 2 buttons on the right.
**Representation:**? the board should be represented with a data structure as you see fit. ? It can be an array, custom structure, or other data type. ? I would like a meta-structure that can save each board state such that every round of moves in the game can be saved. ? Each move creates a new board state than is saved to the structure.
Remember, you are just creating the basics here - you do not need to check for legal moves, save options, save any data about the game other than the board state.
Ταυτότητα Εργασίας: #3284780