Serialized Form

Class CellRenderer implements Serializable

Serialized Fields

robot

java.awt.Image robot
Contains the GIF file that represents a robot.

crate

java.awt.Image crate
Contains the GIF file that represents a crate.

empty

java.awt.Image empty
Contains the GIF file that represents an empty square.

incinerator

java.awt.Image incinerator
Contains the GIF file that represents an incinerator.

wall

java.awt.Image wall
Contains the GIF file that represents a wall.

currentImage

javax.swing.ImageIcon currentImage
The current ImageIcon being displayed by this CellRenderer.


Class Direction implements Serializable


Class FileDialog implements Serializable

Serialized Fields

saveOK

javax.swing.JButton saveOK
The agreement button for the save game dialog.

loadOK

javax.swing.JButton loadOK
The agreement button for the load game dialog.

cancel

javax.swing.JButton cancel
The cancel button for both save and load game dialogs.

newSaveDesc

javax.swing.JTextField newSaveDesc
The text field for the save game description.

slots

javax.swing.JRadioButton[] slots
An array of radio buttons for selecting a save game slot.

owner

SGui owner
The link to the Sokoban user interface.

game

Game game
The link to the Sokoban game interface.

loaded

boolean loaded
A boolean variable that signifies if the load game was successful.

saved

boolean saved
A boolean variable that signifies if the save game was successful.


Class Intro implements Serializable

Serialized Fields

intro

java.awt.Image intro
Contains the GIF file with the introduction animation.

owner

SGui owner
The link to the Sokoban user interface.


Class Level implements Serializable

Serialized Fields

levelName

java.lang.String levelName
The name of the level.

board

Square[][] board
The board will be a 25 by 25 two dimensional array used to represent each square on the playing field.


Class LevelEditorUI implements Serializable

Serialized Fields

editor

Level editor
The LevelEditor where changes will be made to the custom level.

table

javax.swing.JTable table
The JTable display which shows the current state of the level being edited.

empty

javax.swing.JRadioButton empty
The radio button that selects an empty square to be placed on the level.

wall

javax.swing.JRadioButton wall
The radio button that selects an wall square to be placed on the level.

crate

javax.swing.JRadioButton crate
The radio button that selects an crate square to be placed on the level.

incinerator

javax.swing.JRadioButton incinerator
The radio button that selects an incinerator square to be placed on the level.

robot

javax.swing.JRadioButton robot
The radio button that selects an robot facing right square to be placed on the level.

brushes

javax.swing.ButtonGroup brushes
The collection of brushes to be used for changing the level's squares.

totalRobots

int totalRobots
The total number of robots currently placed on the map.


Class MapRenderer implements Serializable

Serialized Fields

owner

Game owner
A pointer to the main Game object

robotUp

java.awt.Image robotUp
Contains the GIF file that represents a robot facing up.

robotDown

java.awt.Image robotDown
Contains the GIF file that represents a robot facing down.

robotLeft

java.awt.Image robotLeft
Contains the GIF file that represents a robot facing left.

robotRight

java.awt.Image robotRight
Contains the GIF file that represents a robot facing right.

crate

java.awt.Image crate
Contains the GIF file that represents a crate.

empty

java.awt.Image empty
Contains the GIF file that represents an empty square.

incinerator

java.awt.Image incinerator
Contains the GIF file that represents an incinerator.

wall

java.awt.Image wall
Contains the GIF file that represents a wall.

loaded

boolean loaded
Whether or not all images have been loaded (used to prevent initial flashing robot).


Class MultiplayerDialog implements Serializable

Serialized Fields

game

Game game
The link to the Sokoban game interface.

owner

SGui owner
The link to the Sokoban user interface.

userName

javax.swing.JTextField userName
The text field input box for the user's name.

myIP

javax.swing.JTextField myIP
The text field input box that displays the host's ip

connectIP

javax.swing.JTextField connectIP
The text field input box to get the ip to connect to.

connectPort

javax.swing.JTextField connectPort
The text field input box to get the port to connect to.

level

java.lang.String level
The name of the level to be played.

levels

java.lang.String[] levels
A string list of the levels available to be played.

levelList

javax.swing.JList levelList
The JList that contains the list of levels.

userListDisplay

javax.swing.JList userListDisplay
The JList that contains the list of users.

hostGame

javax.swing.JButton hostGame
The JButton that starts the host game setup.

joinGame

javax.swing.JButton joinGame
The JButton that starts the join game.

startHost

javax.swing.JButton startHost
JDialog starts waiting for connections when clicked.

startJoin

javax.swing.JButton startJoin
JDailog attempts to connect to server specified in connectData when clicked.

startGame

javax.swing.JButton startGame
Allows the user to start the game.

helpHost

javax.swing.JButton helpHost
The JButton that displays the host game help.

helpJoin

javax.swing.JButton helpJoin
The JButton that displays the join game help.

cancel

javax.swing.JButton cancel
Allows the user to stop connecting or hosting the new multiplayer game.

connectTimer

javax.swing.Timer connectTimer
A Timer that waits to see if the client has connected; used by the attempting to connect dialog.


Class RobotColor implements Serializable

Serialized Fields

color

RobotColor color
The enumerated value of the color of the robot


Class SGui implements Serializable

Serialized Fields

game

Game game
The link to the Sokoban game interface.

tutorial

Tutorial tutorial
The link to the Tutorial.

map

MapRenderer map
Used for displaying the current map.

topPanel

javax.swing.JPanel topPanel
The main JPanel used for displaying the intro and the map.

score

javax.swing.JTextField score
The text field that displays the cumulative score.

levelName

javax.swing.JTextField levelName
The text field that displays the current level's name.

moves

javax.swing.JTextField moves
The text field that displays the current number of moves.

pushes

javax.swing.JTextField pushes
The text field that displays the current number of pushes.

crates

javax.swing.JTextField crates
The text field that displays the current number of crates incinerated.

time

javax.swing.JTextField time
The text field that displays the current time in seconds.

restart

javax.swing.JButton restart
The restart button allows the user to restart the level.

undo

javax.swing.JButton undo
The undo button allows the user to undo that last move.

pause

javax.swing.JButton pause
The pause button allows the user to pause the game.

end

javax.swing.JButton end
The end button allows the user to end the game.

statsMonitor

javax.swing.Timer statsMonitor
The statsMonitor is a timer set to update the current time every second.

start

Intro start
The Intro panel to display the intro animation.

levelEditor

LevelEditorUI levelEditor
The level editor to edit levels

highscores

HighScoresList highscores
Instance of HighScoresList

menuBar

javax.swing.JMenuBar menuBar

gameMenu

javax.swing.JMenu gameMenu

gameNewGame

javax.swing.JMenu gameNewGame

gameNewSoloGame

javax.swing.JMenuItem gameNewSoloGame

gameNewMultiplayerGame

javax.swing.JMenuItem gameNewMultiplayerGame

gameLoad

javax.swing.JMenuItem gameLoad

gameSave

javax.swing.JMenuItem gameSave

gameOptions

javax.swing.JMenu gameOptions

gameOptChange

javax.swing.JMenuItem gameOptChange

gameHighScores

javax.swing.JMenuItem gameHighScores

gameLevelEditor

javax.swing.JMenuItem gameLevelEditor

gameEndGame

javax.swing.JMenuItem gameEndGame

gameExit

javax.swing.JMenuItem gameExit

levelMenu

javax.swing.JMenu levelMenu

levelNext

javax.swing.JMenuItem levelNext

levelPrevious

javax.swing.JMenuItem levelPrevious

levelGoTo

javax.swing.JMenuItem levelGoTo

levelRestart

javax.swing.JMenuItem levelRestart

levelPause

javax.swing.JMenuItem levelPause

levelUndo

javax.swing.JMenuItem levelUndo

levelReplay

javax.swing.JMenuItem levelReplay

helpMenu

javax.swing.JMenu helpMenu

helpInstructions

javax.swing.JMenuItem helpInstructions

helpTutorial

javax.swing.JMenuItem helpTutorial

helpAbout

javax.swing.JMenuItem helpAbout

mainSolo

javax.swing.JButton mainSolo

mainMulti

javax.swing.JButton mainMulti

mainHighScores

javax.swing.JButton mainHighScores

mainLevelEditor

javax.swing.JButton mainLevelEditor

continueButton

javax.swing.JButton continueButton

levelScore

javax.swing.JLabel levelScore

chatPanel

javax.swing.JPanel chatPanel

chatText

javax.swing.JTextArea chatText

chatInput

javax.swing.JTextField chatInput

sendChat

javax.swing.JButton sendChat

levelEditorLevelMenu

javax.swing.JMenu levelEditorLevelMenu

levelEditorHelpMenu

javax.swing.JMenu levelEditorHelpMenu

levelEditorNew

javax.swing.JMenuItem levelEditorNew

levelEditorLoad

javax.swing.JMenuItem levelEditorLoad

levelEditorSave

javax.swing.JMenuItem levelEditorSave

levelEditorOrg

javax.swing.JMenuItem levelEditorOrg

levelEditorExit

javax.swing.JMenuItem levelEditorExit

levelEditorHelpInstructions

javax.swing.JMenuItem levelEditorHelpInstructions

mapDisplay

javax.swing.JPanel mapDisplay
The display panel where the MapRenderer will be drawn.

pauseScreen

javax.swing.JLabel pauseScreen
The pause screen message.

keyboardListener

SGui.KeyMonitor keyboardListener
Instance of KeyMonitor to listen to keyboard commands to control the robot while the game is being played.


Class Square implements Serializable