gameboard
Class OthelloCell

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by gameboard.AbsThreadedJP
                      extended by gameboard.OthelloCell
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.lang.Runnable, java.util.EventListener, javax.accessibility.Accessible
Direct Known Subclasses:
CurrentPlayerPanel

public class OthelloCell
extends AbsThreadedJP
implements java.awt.event.MouseListener, java.io.Serializable

The individual game cells on the game board.
Stores the current othello game piece.
Added the current player color, used when placing a piece on the board.
t.3 adds flipping the cells.

Version:
t.3
Author:
Eric Angeli
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class gameboard.AbsThreadedJP
runner
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
OthelloCell()
          Creates a new instance of OthelloCell
 
Method Summary
 void enemyNotOver()
          Resets the background when the enemy is no longer over the cell.
 void enemyOver(java.awt.Color enemyColor)
          Sets the cell background when the enemy is over the cell.
 void enemyPlaced(java.awt.Color ec)
          Place an enemy piece on the board.
 void flip()
          Flips the sprites.
 java.awt.Color getCurrentPlayer()
          Gets the current player color.
 java.lang.String getCurrentPlayerString()
          Gets the string of the current color player.
 java.lang.String getPlacedPiece()
          Gets the string of the color placed, if a color has been placed.
 java.awt.Point getThePoint()
          Gets point representation of the cell.
 Sprite2D getTheSprite()
          Gets the sprite.
 Sprite2D getUnderSideSprite()
          Gets the sprite on the underside.
 boolean isFilled()
          Whether the piece should be drawn on the board or not.
 void mouseClicked(java.awt.event.MouseEvent me)
          Handles the mouse clicked event.
 void mouseEntered(java.awt.event.MouseEvent me)
          Handles the mouse entered event.
 void mouseExited(java.awt.event.MouseEvent me)
          Handles the mouse exited event.
 void mousePressed(java.awt.event.MouseEvent me)
          Handles the mouse pressed event.
 void mouseReleased(java.awt.event.MouseEvent me)
          Handles the mouse released event.
 void placeThePiece()
          Place a piece on the game board.
 void renderSprites(java.awt.Graphics2D g)
          Renders the sprites in the cell and draws the boarder around the cell.
 void resetSprites()
          Resets the sprites so they are paint on th board.
 void restore()
          Restores the sprites in the cell, sets their location and makes them visible.
 void setCurrentPlayer(java.awt.Color currentPlayer)
          Sets the color of the current player.
 void setFilled(boolean filled)
          Sets the filled sate of the game piece.
 void setSpriteColor(java.awt.Color spriteColor)
          Sets the color of the sprites.
 void setThePoint(java.awt.Point thePoint)
          Sets the point that stores the location of the cell in the board.
 void setTheSprite(Sprite2D theSprite)
          Sets the main sprite.
 void setUnderSideSprite(Sprite2D underSideSprite)
          Set shte new underside sprite.
 void suspend()
          Suspsends the sprites.
 void tempPlacement(java.awt.Color tc)
          Temporarily place a piece on the board.
 void updateGame()
          Updates the game, not used for the othello cell panel.
 
Methods inherited from class gameboard.AbsThreadedJP
addPropertyChangeListener, getBgColor, getBoard, getG2d, getGameSleep, getLevel, getPropertySupport, init, isPauseGame, paintGame, pauseGame, removePropertyChangeListener, renderPanel, resumeGame, run, setBgColor, setBoard, setGameSleep, setLevel, setPauseGame, startGame, stopGame
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OthelloCell

public OthelloCell()
Creates a new instance of OthelloCell

Method Detail

updateGame

public void updateGame()
Updates the game, not used for the othello cell panel.

Specified by:
updateGame in class AbsThreadedJP

setThePoint

public void setThePoint(java.awt.Point thePoint)
Sets the point that stores the location of the cell in the board.

Parameters:
thePoint - the x,y location of the cell.

renderSprites

public void renderSprites(java.awt.Graphics2D g)
Renders the sprites in the cell and draws the boarder around the cell.

Specified by:
renderSprites in class AbsThreadedJP
Parameters:
g - The graphics used to paint.

restore

public void restore()
Restores the sprites in the cell, sets their location and makes them visible.


suspend

public void suspend()
Suspsends the sprites. Sets them so they are not visible.


flip

public void flip()
Flips the sprites.


setSpriteColor

public void setSpriteColor(java.awt.Color spriteColor)
Sets the color of the sprites. Sets the underside sprite color to be the opposite color of the main sprite.

Parameters:
spriteColor - The color of the player's piece placed on the cell.

resetSprites

public void resetSprites()
Resets the sprites so they are paint on th board.


enemyOver

public void enemyOver(java.awt.Color enemyColor)
Sets the cell background when the enemy is over the cell.

Parameters:
enemyColor - The enemy color.

enemyNotOver

public void enemyNotOver()
Resets the background when the enemy is no longer over the cell.


enemyPlaced

public void enemyPlaced(java.awt.Color ec)
Place an enemy piece on the board.

Parameters:
ec - The color of the enemy.

placeThePiece

public void placeThePiece()
Place a piece on the game board.


tempPlacement

public void tempPlacement(java.awt.Color tc)
Temporarily place a piece on the board.

Parameters:
tc - The color of the piece to place on the board.

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent me)
Handles the mouse clicked event.

Specified by:
mouseClicked in interface java.awt.event.MouseListener
Parameters:
me - The mouseevent trigger.

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent me)
Handles the mouse entered event.

Specified by:
mouseEntered in interface java.awt.event.MouseListener
Parameters:
me - The mouseevent trigger.

mouseExited

public void mouseExited(java.awt.event.MouseEvent me)
Handles the mouse exited event.

Specified by:
mouseExited in interface java.awt.event.MouseListener
Parameters:
me - The mouseevent trigger.

mousePressed

public void mousePressed(java.awt.event.MouseEvent me)
Handles the mouse pressed event.

Specified by:
mousePressed in interface java.awt.event.MouseListener
Parameters:
me - The mouseevent trigger.

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent me)
Handles the mouse released event.

Specified by:
mouseReleased in interface java.awt.event.MouseListener
Parameters:
me - The mouseevent trigger.

getCurrentPlayer

public java.awt.Color getCurrentPlayer()
Gets the current player color.

Returns:
The color of the current player.

setCurrentPlayer

public void setCurrentPlayer(java.awt.Color currentPlayer)
Sets the color of the current player.

Parameters:
currentPlayer - The color of the current player.

getCurrentPlayerString

public java.lang.String getCurrentPlayerString()
Gets the string of the current color player.

Returns:
The current player as a string.

getTheSprite

public Sprite2D getTheSprite()
Gets the sprite.

Returns:
Return the sprite on top.

setTheSprite

public void setTheSprite(Sprite2D theSprite)
Sets the main sprite.

Parameters:
theSprite - The new sprite that is the main peice.

getUnderSideSprite

public Sprite2D getUnderSideSprite()
Gets the sprite on the underside.

Returns:
The underside sprite.

setUnderSideSprite

public void setUnderSideSprite(Sprite2D underSideSprite)
Set shte new underside sprite.

Parameters:
underSideSprite - The new sprite underneath.

isFilled

public boolean isFilled()
Whether the piece should be drawn on the board or not.

Returns:
True if the game piece is visible, otherwise false.

setFilled

public void setFilled(boolean filled)
Sets the filled sate of the game piece.

Parameters:
filled - True if the piece is visible, otherwise false.

getThePoint

public java.awt.Point getThePoint()
Gets point representation of the cell.

Returns:
The point representing the cell.

getPlacedPiece

public java.lang.String getPlacedPiece()
Gets the string of the color placed, if a color has been placed.

Returns:
The string representation of the color of the piece placed in the cell.