[Design] Go (Board Game)

A Screenshot of the Current Progress (Incomplete)
GoBoard - Screenshot

GoBoard - Screenshot

Rough Sketch of Each Class
  • GoBoard: JPanel
    • It represents a “Go” game board.
    • An array of Buttons to represent spaces to put stones.
    • Methods include:
      • GoBoard(int height, int width)
      • GoBoard(int height, int width, int size)
      • isEmpty(int row, int col): boolean
      • setEmpty(int row, int col): void
      • get(int row, int col) JButton
      • fill(int row, int col, Color c): void
      • reset(): void
      • inWidthRange(int x): boolean
      • inHeightRange(int y): boolean
  • GoEngine: JFrame
    • It takes care of the logic (for example, calculating the portion of dead stones)
    • Methods include:
      • GoEngine(int size)
      • promptSIZE(): int
      • actionPerformed(ActionEvent e): void
      • findDeadStones(Color deadColor, int row, int col): LinkedList<JButton>
  • GoMenu: JMenu
    • File
      • New
      • Save
      • Open
      • About
      • Exit
    • Board Size
      • 3 * 3
      • 4 * 4
      • 5 * 5
      • 19 * 19
  • GoPlayer
  • GoUI

Future Goal

  • Make a full functioning Go Board Game with menu
  • Implement some original ideas
  • Make the design look fancier
Advertisements

About Wonjohn Choi
Hello, I am a software developer Wonjohn Choi. I live in Mississauga, Ontario, Canada and study at a school called St. Francis Xavier Secondary School. My core interests include Math, Computer Science, and Engineering. Thank you.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: