- Read Martin Heidegger's 'Age of the World Picture'
- MANDATORY. I'll have to cancel the session if this is insufficiently read...
- Do Features Assignment: Deadline Friday 18:00
- Do Coding Assignment: Deadline Monday 15:00
BACKGROUND: Although I really like the idea of building Battleship, it's not entirely clear to me how this is related to (humanities) research. Last week we talked about linking our project to online and/or offline collections. This now completely disappeared. I want to see both aspects back in to our project.
In order to do so, I want you to do the following assignment: think of an exhibition or collection that we can link this to. Translate this into a concrete feature of the game. To give you an example:
Feature: Puzzle Pieces
- The pieces in our version of battleship are not ships but puzzle pieces. Together they tell a story, for instance about a particular painting (Rijksmuseum API) or group of Zombies (Allee). By playing the game, players gradually uncover each other's narratives.
DISCLAIMER: This is just an example. There are million directions that we can take this. Don't copy mine. Think of something else.
NOTE: I don't expect you to do all the steps. Just see how far you can get.
- Make a React Component: GameBoardCell that displays a simple empty cell.
- Add a click event to the cell. It should display a message telling the player that it was a 'miss'
- Add state to your component. Your cell can now either be on or off.
- Update the click event accordingly. On now means: 'hit', off is 'miss'
- BONUS: use setInterval to change that state every second
- Make a Game Component
- Have the GameCell as a Child Component
- Move the state here
- Make a SwitchBoardCell Component
- Put this inside your game component
- Add a click event that controls the on/off behavior of the other cell
- Make two Container Components (GameBoard, Switchboard)
- Move the two children into their respective components
- Link everything up
- Scale Up
- Scale up to 4 squares each.
- Display them in a grid
- Scale up to a custom sized-grid.
Keeping it close to the actual battleship game, I think it would be fun to use real ships from the Golden Age as features in the game. Each time you sink the opponent's ship, you get to see the full story of the ship you have just wrecked (who was the captain, what was the ship used for, etc). This information could be retrieved making use of the API of the Scheepvaartmuseum (or, if they don't have any, just link to the specific pages about the ships). Hopefully, when the game is finished, a comprehensive story/description about the Golden Age can be assembled from the different ship stories.