| Module Name | Package | Req # | Developer | Walkthrough Date | Integrated Date | Est LOC | Actual LOC |
| Client.run() | Game | 15 | Kevin Blomseth | 1/31/02 | 1/31/02 | 51 | 51 |
| Client.processCommand() | Game | 15 | Kevin Blomseth | 1/28/02 | 1/28/02 | 167 | 167 |
| Client.sendMove() | Game | 15 | Kevin Blomseth | 2/2/02 | 2/2/02 | 17 | 17 |
| Client.sendUndo() | Game | 32 | Kevin Blomseth | 2/2/02 | 2/2/02 | 16 | 16 |
| Client.sendChat() | Game | 16 | Kevin Blomseth | 2/28/02 | 2/28/02 | 25 | 10 |
| Client.sendChangeLevelAccept() | Game | 26 | Joshua Thompson | 2/4/02 | 2/4/02 | 14 | 14 |
| Client.sendChangeLevelRequest() | Game | 26 | Joshua Thompson | 2/4/02 | 2/4/02 | 14 | 14 |
| Client.sendRestartAccept() | Game | 29 | Joshua Thompson | 2/4/02 | 2/4/02 | 14 | 14 |
| Client.sendRestartRequest() | Game | 29 | Joshua Thompson | 2/4/02 | 2/4/02 | 14 | 14 |
| Client.disconnect() | Game | 34 | Kevin Blomseth | 2/3/02 | 2/3/02 | 11 | 11 |
| Client.postCommand() | Game | 15 | Kevin Blomseth | 2/3/02 | 2/3/02 | 12 | 12 |
| Client.Client() | Game | 15 | Kevin Blomseth | 1/27/02 | 1/27/02 | 20 | 20 |
| Client.setOwner() | Game | 15 | Kevin Blomseth | 1/27/02 | 1/27/02 | 8 | 8 |
| Client.setPort() | Game | 15 | Kevin Blomseth | 1/28/02 | 1/28/02 | 8 | 8 |
| Client.getPort() | Game | 15 | Kevin Blomseth | 1/28/02 | 1/28/02 | 8 | 8 |
| Client.setIP() | Game | 15 | Kevin Blomseth | 1/31/02 | 1/31/02 | 8 | 8 |
| Client.getIP() | Game | 15 | Kevin Blomseth | 1/31/02 | 1/31/02 | 8 | 8 |
| Client.getRobotNumber() | Game | 15 | Joshua Thompson | 2/1/02 | 2/1/02 | 9 | 9 |
| Client.isConnected() | Game | 15 | Kevin Blomseth | 1/31/02 | 1/31/02 | 8 | 8 |
| CustomLevelOrder.CustomLevelOrder() | Game | 37-42 | Joshua Thompson | 1/17/02 | 1/17/02 | 7 | 7 |
| CustomLevelOrder.insertLevel() | Game | 38 | Joshua Thompson | 1/17/02 | 1/17/02 | 13 | 13 |
| CustomLevelOrder.addLevel() | Game | 37 | Joshua Thompson | 1/17/02 | 1/17/02 | 12 | 12 |
| CustomLevelOrder.removeLevel() | Game | 39 | Joshua Thompson | 1/17/02 | 1/17/02 | 12 | 12 |
| CustomLevelOrder.setCurrentLevel() | Game | 1 | Joshua Thompson | 1/17/02 | 1/17/02 | 10 | 10 |
| CustomLevelOrder.getCurrentLevel() | Game | 1 | Joshua Thompson | 2/2/02 | 2/2/02 | 8 | 8 |
| CustomLevelOrder.getLevelList() | Game | 14 | Joshua Thompson | 2/3/02 | 2/3/02 | 13 | 13 |
| CustomLevelOrder.getNextLevel() | Game | 10 | Joshua Thompson | 1/17/02 | 1/17/02 | 23 | 23 |
| CustomLevelOrder.getPrevLevel() | Game | 11 | Joshua Thompson | 2/3/02 | 2/3/02 | 21 | 21 |
| CustomLevelOrder.isEmpty() | Game | 40 | Joshua Thompson | 1/17/02 | 1/17/02 | 11 | 11 |
| Direction.Direction() | Game | 1 | Joshua Thompson | 1/17/02 | 1/17/02 | 10 | 10 |
| Game.Game() | Game | 1 | Joshua Thompson | 1/17/02 | 1/17/02 | 52 | 52 |
| Game.levelCompleted() | Game | 1 | Joshua Thompson | 1/17/02 | 1/17/02 | 16 | 16 |
| Game.saveGame() | Game | 12 | Kamil Baranowski | 1/31/02 | 2/1/02 | 52 | 52 |
| Game.loadGame() | Game | 6 | Kamil Baranowski | 1/31/02 | 2/1/02 | 64 | 64 |
| Game.startMap() | Game | 1 | Joshua Thompson | 1/17/02 | 1/17/02 | 22 | 22 |
| Game.changeLevel() | Game | 9 | Joshua Thompson | 1/17/02 | 1/17/02 | 34 | 34 |
| Game.doChangeLevel() | Game | 9 | Joshua Thompson | 2/2/02 | 2/2/02 | 34 | 34 |
| Game.requestChangeLevel() | Game | 26 | Joshua Thompson | 2/3/02 | 2/3/02 | 45 | 45 |
| Game.postAcceptedChangeLevel() | Game | 26 | Joshua Thompson | 2/3/02 | 2/3/02 | 24 | 24 |
| Game.checkChangeLevelVotes() | Game | 26 | Joshua Thompson | 2/2/02 | 2/2/02 | 48 | 48 |
| Game.postChat() | Game | 16 | Kevin Blomseth | 2/28/02 | 2/28/02 | 30 | 18 |
| Game.postDisconnect() | Game | 34 | Kamil Baranowski | 1/28/02 | 1/28/02 | 28 | 28 |
| Game.postMove() | Game | 1 | Kamil Baranowski | 1/28/02 | 1/28/02 | 30 | 30 |
| Game.undoMove() | Game | 3 | Kamil Baranowski | 1/24/02 | 1/24/02 | 29 | 29 |
| Game.postNewUser() | Game | 14 | Joshua Thompson | 2/5/02 | 2/5/02 | 35 | 35 |
| Game.getMapString() | Game | 14 | Kamil Baranowski | 1/31/02 | 1/31/02 | 21 | 21 |
| Game.getMap() | Game | 14 | Kamil Baranowski | 1/24/02 | 1/24/02 | 21 | 21 |
| Game.getRobots() | Game | 14 | Kamil Baranowski | 1/24/02 | 1/24/02 | 10 | 10 |
| Game.pauseTimer() | Game | 44 | Kamil Baranowski | 1/24/02 | 1/24/02 | 15 | 15 |
| Game.startTimer() | Game | 44 | Kamil Baranowski | 2/1/02 | 2/1/02 | 15 | 15 |
| Game.isPaused() | Game | 44 | Kamil Baranowski | 2/1/02 | 2/1/02 | 16 | 16 |
| Game.restartMap() | Game | 4 | Kamil Baranowski | 1/24/02 | 1/24/02 | 38 | 38 |
| Game.doRestartMap() | Game | 4 | Joshua Thompson | 2/3/02 | 2/3/02 | 12 | 12 |
| Game.requestRestart() | Game | 29 | Joshua Thompson | 2/3/02 | 2/3/02 | 42 | 42 |
| Game.postAcceptedRestart() | Game | 29 | Joshua Thompson | 2/4/02 | 2/4/02 | 23 | 23 |
| Game.checkRestartVotes() | Game | 29 | Joshua Thompson | 2/2/02 | 2/2/02 | 50 | 50 |
| Game.instantReplay() | Game | 2 | Kamil Baranowski | 1/24/02 | 1/24/02 | 14 | 14 |
| Game.startServer() | Game | 14 | Kamil Baranowski | 1/31/02 | 1/31/02 | 29 | 29 |
| Game.stopMultiplayer() | Game | 34 | Kamil Baranowski | 1/31/02 | 1/31/02 | 37 | 37 |
| Game.startClient() | Game | 15 | Kamil Baranowski | 1/31/02 | 1/31/02 | 30 | 30 |
| Game.isMultiplayer() | Game | 14, 15 | Kamil Baranowski | 1/24/02 | 1/24/02 | 8 | 8 |
| Game.isHosting() | Game | 14 | Joshua Thompson | 2/1/02 | 2/1/02 | 9 | 9 |
| Game.isClientConnected() | Game | 15 | Joshua Thompson | 2/2/02 | 2/2/02 | 12 | 12 |
| Game.getUserName() | Game | 14 ,15 | Joshua Thompson | 1/17/02 | 1/17/02 | 9 | 9 |
| Game.setUserName() | Game | 14, 15 | Joshua Thompson | 1/17/02 | 1/17/02 | 9 | 9 |
| Game.getTotalScore() | Game | 1 | Joshua Thompson | 1/17/02 | 1/17/02 | 9 | 9 |
| Game.getLocalRobot() | Game | 1 | Joshua Thompson | 1/17/02 | 1/17/02 | 18 | 18 |
| Game.updateDisplay() | Game | 1 | Joshua Thompson | 1/17/02 | 1/17/02 | 12 | 12 |
| Game.connectionClosed() | Game | 34 | Joshua Thompson | 2/6/02 | 2/6/02 | 11 | 11 |
| Game.couldNotConnect() | Game | 15 | Joshua Thompson | 2/6/02 | 2/6/02 | 11 | 11 |
| Game.isActive() | Game | 5 | Joshua Thompson | 2/5/02 | 2/5/02 | 9 | 9 |
| Game.setMapObserver() | Game | 2 | Joshua Thompson | 1/28/02 | 1/28/02 | 11 | 11 |
| Game.endGame() | Game | 5 | Kamil Baranowski | 1/24/02 | 1/24/02 | 20 | 20 |
| Game.getSaveDescriptions() | Game | 6, 12 | Joshua Thompson | 2/2/02 | 2/2/02 | 38 | 38 |
| Game.getLevelList() | Game | 14 | Joshua Thompson | 2/4/02 | 2/4/02 | 9 | 9 |
| Game.getNextLevel() | Game | 10 | Joshua Thompson | 1/30/02 | 1/30/02 | 10 | 10 |
| Game.getPrevLevel() | Game | 11 | Joshua Thompson | 1/30/02 | 1/30/02 | 10 | 10 |
| Game.getFirstLevel() | Game | 1 | Joshua Thompson | 1/31/02 | 1/31/02 | 11 | 11 |
| Game.getCurrentLevel() | Game | 1 | Joshua Thompson | 2/1/02 | 2/1/02 | 9 | 9 |
| Game.setDebugMode() | Game | 44 | Joshua Thompson | 2/7/02 | 2/7/02 | 10 | 10 |
| Game.getTime() | Game | 1 | Kamil Baranowski | 1/24/02 | 1/24/02 | 29 | 29 |
| HighScore.HighScore() | Game | 8 | Antony George | 2/27/02 | 2/27/02 | 12 | 7 |
| HighScore.getName() | Game | 8 | Joshua Thompson | 1/17/02 | 1/17/02 | 9 | 5 |
| HighScore.setName() | Game | 8 | Antony George | 2/28/02 | 2/28/02 | 9 | 5 |
| HighScore.getScore() | Game | 8 | Antony George | 3/1/02 | 3/1/02 | 9 | 5 |
| HighScore.setScore() | Game | 8 | Antony George | 3/1/02 | 3/1/02 | 9 | 5 |
| HighScoresList.HighScoresList() | Game | 8 | Antony George | 3/3/02 | 3/3/02 | 7 | 5 |
| HighScoresList.loadHighScores() | Game | 8 | Antony George | 3/3/02 | 3/7/02 | 25 | 27 |
| HighScoresList.addHighScore() | Game | 8 | Antony George | 3/4/02 | 3/7/02 | 50 | 45 |
| HighScoresList.clearHighScores() | Game | 8 | Antony George | 3/5/02 | 3/7/02 | 13 | 8 |
| HighScoresList.saveHighScores() | Game | 8 | Antony George | 3/5/02 | 3/7/02 | 20 | 17 |
| HighScoresList.toArray() | Game | Kevin Blomseth | 3/7/02 | 3/7/02 | 6 | 6 | |
| Level.Level() | Game | 18 | Sean Pinto | 3/3/02 | 3/3/02 | 7 | 3 |
| Leve.getLevelName() | Game | 18 | Sean Pinto | 3/3/02 | 3/3/02 | 7 | 4 |
| Level.setLevelName() | Game | 18 | Sean Pinto | 3/3/02 | 3/3/02 | 9 | 4 |
| Level.setValueAt() | Game | 18 | Sean Pinto | 3/3/02 | 3/3/02 | 7 | 7 |
| Level.getRowCount() | Game | 18 | Sean Pinto | 3/3/02 | 3/3/02 | 9 | 4 |
| Level.getColumnCount() | Game | 18 | Sean Pinto | 3/3/02 | 3/3/02 | 10 | 5 |
| Level.getValueAt() | Game | 18 | Sean Pinto | 3/3/02 | 3/3/02 | 12 | 6 |
| Map.Map() | Game | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 15 | 15 |
| Map.processMove() | Game | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 119 | 119 |
| Map.addRobot() | Game | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 16 | 16 |
| Map.removeRobot() | Game | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 14 | 14 |
| Map.getRobot() | Game | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 45 | 45 |
| Map.restartLevel() | Game | 4 | Joshua Thompson | 12/1/01 | 1/17/02 | 24 | 24 |
| Map.instantReplay() | Game | 2 | Joshua Thompson | 1/24/02 | 1/28/02 | 42 | 42 |
| Map.changeLevel() | Game | 9 | Joshua Thompson | 12/1/01 | 1/17/02 | 122 | 122 |
| Map.calculateScore() | Game | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 19 | 19 |
| Map.pauseTimer() | Game | 44 | Joshua Thompson | 12/1/01 | 1/17/02 | 9 | 9 |
| Map.startTimer() | Game | 44 | Joshua Thompson | 12/1/01 | 1/17/02 | 9 | 9 |
| Map.setTime() | Game | 6 | Joshua Thompson | 2/1/02 | 2/1/02 | 9 | 9 |
| Map.isPaused() | Game | 44 | Joshua Thompson | 2/2/02 | 2/2/02 | 9 | 9 |
| Map.undoMove() | Game | 3 | Joshua Thompson | 12/1/01 | 1/17/02 | 77 | 77 |
| Map.toStringArray() | Game | 14 | Joshua Thompson | 12/1/01 | 1/17/02 | 58 | 58 |
| Map.getMap() | Game | 14 | Joshua Thompson | 1/24/02 | 1/24/02 | 10 | 10 |
| Map.getRobots() | Game | 14 | Joshua Thompson | 1/24/02 | 1/24/02 | 20 | 20 |
| Map.getTime() | Game | 1 | Joshua Thompson | 1/24/02 | 1/24/02 | 9 | 9 |
| Move.Move() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 15 | 15 |
| Move.getDirection() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Move.setDirection() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Move.hasCrateMoved() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Move.setCrateMoved() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Move.wasIncinerated() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Move.setIncinerated() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| MoveTracker.MoveTracker() | Game | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 7 | 7 |
| MoveTracker.isEmpty() | Game | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 9 | 9 |
| MoveTracker.clear() | Game | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 9 | 9 |
| MoveTracker.add() | Game | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 11 | 11 |
| MoveTracker.removeLast() | Game | 3 | Joshua Thompson | 12/1/01 | 1/17/02 | 13 | 13 |
| MoveTracker.lastElement() | Game | 3 | Joshua Thompson | 12/1/01 | 1/17/02 | 21 | 21 |
| MoveTracker.getMoveTracker() | Game | 2 | Joshua Thompson | 12/1/01 | 1/17/02 | 11 | 11 |
| Robot.Robot() | Game | 1 | Kevin Blomseth | 1/24/02 | 1/24/02 | 25 | 25 |
| Robot.getColor() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Robot.setColor() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Robot.getRobotNumber() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Robot.getRow() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Robot.setRow() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Robot.getCol() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Robot.setCol() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Robot.addMove() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 61 | 61 |
| Robot.removeMove() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 78 | 78 |
| Robot.resetMoveTracker() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 13 | 13 |
| Robot.getMoveTracker() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 11 | 11 |
| Robot.getMoves() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 10 | 10 |
| Robot.getScore() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Robot.calcScore() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 15 | 15 |
| Robot.getPushes() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 10 | 10 |
| Robot.resetPushes() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Robot.getCratesIncinerated() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 10 | 10 |
| Robot.resetCratesIncinerated() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 9 |
| Robot.setNextColor() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 23 | 23 |
| Robot.getUserName() | Game | 1 | Joshua Thompson | 2/1/02 | 2/1/02 | 9 | 9 |
| Robot.setUserName() | Game | 1 | Joshua Thompson | 2/1/02 | 2/1/02 | 9 | 9 |
| Robot.getDirectionFaced() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 10 | 10 |
| Robot.getRestartFlag() | Game | 1 | Joshua Thompson | 2/1/02 | 2/1/02 | 10 | 10 |
| Robot.setRestartFlag() | Game | 1 | Joshua Thompson | 2/1/02 | 2/1/02 | 10 | 10 |
| Robot.getChangeLevelFlag() | Game | 1 | Joshua Thompson | 2/1/02 | 2/1/02 | 10 | 10 |
| Robot.setChangeLevelFlag() | Game | 1 | Joshua Thompson | 2/1/02 | 2/1/02 | 10 | 10 |
| RobotColor.RobotColor() | Game | 7 | Joshua Thompson | 12/1/01 | 1/17/02 | 10 | 10 |
| RobotColor.getColor() | Game | 7 | Joshua Thompson | 12/1/01 | 1/17/02 | 9 | 9 |
| RobotColor.setColor() | Game | 7 | Joshua Thompson | 12/1/01 | 1/17/02 | 9 | 9 |
| Server.run() | Game | 14 | Joshua Thompson | 1/28/02 | 1/28/02 | 69 | 69 |
| Server.sendMove() | Game | 14 | Joshua Thompson | 2/1/02 | 2/1/02 | 17 | 17 |
| Server.sendUndo() | Game | 32 | Joshua Thompson | 2/1/02 | 2/1/02 | 16 | 16 |
| Server.sendDisconnect() | Game | 34 | Joshua Thompson | 2/1/02 | 2/1/02 | 18 | 18 |
| Server.sendChat() | Game | 16 | Joshua Thompson | 2/21/02 | 2/3/02 | 17 | 17 |
| Server.sendRestartMap() | Game | 29 | Joshua Thompson | 2/1/02 | 2/1/02 | 14 | 14 |
| Server.sendRestartRequest() | Game | 29 | Joshua Thompson | 2/3/02 | 2/3/02 | 15 | 15 |
| Server.sendChangeLevelRequest() | Game | 26 | Joshua Thompson | 2/3/02 | 2/3/02 | 15 | 15 |
| Server.sendStart() | Game | 14 | Joshua Thompson | 2/3/02 | 2/3/02 | 14 | 14 |
| Server.sendToAll() | Game | 14 | Joshua Thompson | 1/20/02 | 1/28/02 | 19 | 19 |
| Server.sendMap() | Game | 14 | Joshua Thompson | 2/3/02 | 2/3/02 | 26 | 26 |
| Server.addUser() | Game | 14 | Joshua Thompson | 2/2/02 | 2/2/02 | 15 | 15 |
| Server.stopServer() | Game | 34 | Joshua Thompson | 2/4/02 | 2/4/02 | 22 | 22 |
| Server.Server() | Game | 14 | Joshua Thompson | 1/27/02 | 1/28/02 | 12 | 12 |
| Server.setPort() | Game | 14 | Joshua Thompson | 2/6/02 | 2/4/02 | 9 | 9 |
| Server.getPort() | Game | 14 | Joshua Thompson | 1/17/02 | 1/17/02 | 9 | 9 |
| Server.setMaxCon() | Game | 14 | Joshua Thompson | 2/6/02 | 2/4/02 | 9 | 9 |
| Server.getMaxCon() | Game | 14 | Joshua Thompson | 2/6/02 | 2/4/02 | 9 | 9 |
| Server.getThreadNums() | Game | 14 | Joshua Thompson | 2/6/02 | 2/4/02 | 19 | 19 |
| Server.stopListening() | Game | 34 | Joshua Thompson | 2/6/02 | 2/4/02 | 36 | 36 |
| ServerThread.run() | Game | 14 | Joshua Thompson | 2/3/02 | 2/3/02 | 52 | 52 |
| ServerThread.sendCommand() | Game | 14 | Joshua Thompson | 2/6/02 | 2/1/02 | 12 | 12 |
| ServerThread.processCommand() | Game | 14 | Joshua Thompson | 2/4/02 | 2/2/02 | 100 | 100 |
| ServerThread.ServerThread() | Game | 14 | Joshua Thompson | 2/3/02 | 2/1/02 | 19 | 19 |
| ServerThread.getUserName() | Game | 14 | Joshua Thompson | 2/5/02 | 2/5/02 | 9 | 9 |
| ServerThread.getThreadNum() | Game | 14 | Joshua Thompson | 2/6/02 | 1/31/02 | 9 | 9 |
| Square.Square() | Game | 1 | Kevin Blomseth | 12/1/01 | 1/17/02 | 11 | 11 |
| Time.Time() | Game | 44 | Joshua Thompson | 12/1/01 | 1/17/02 | 4 | 4 |
| Time.start() | Game | 44 | Joshua Thompson | 12/1/01 | 1/17/02 | 11 | 11 |
| Time.stop() | Game | 44 | Joshua Thompson | 12/1/01 | 1/17/02 | 10 | 10 |
| Time.reset() | Game | 44 | Joshua Thompson | 12/1/01 | 1/17/02 | 14 | 14 |
| Time.setTime() | Game | 44 | Joshua Thompson | 2/2/02 | 2/2/02 | 9 | 9 |
| Time.isRunning() | Game | 44 | Joshua Thompson | 2/2/02 | 2/2/02 | 9 | 9 |
| Time.getTime() | Game | 44 | Joshua Thompson | 12/1/01 | 1/17/02 | 9 | 9 |
| Time.actionPerformed() | Game | 44 | Joshua Thompson | 12/1/01 | 1/17/02 | 16 | 16 |
| Tutorial.Tutorial() | Game | 13 | Kevin Blomseth | 3/2/02 | 3/3/02 | 50 | 61 |
| Tutorial.loadStep() | Game | 13 | Kevin Blomseth | 3/2/02 | 3/3/02 | 40 | 47 |
| Tutorial.showStep() | Game | 13 | Kevin Blomseth | 3/2/02 | 3/3/02 | 30 | 32 |
| Tutorial.getNextStep() | Game | 13 | Kevin Blomseth | 3/3/02 | 3/3/02 | 12 | 7 |
| Tutorial.getLastStep() | Game | 13 | Kevin Blomseth | 3/3/02 | 3/3/02 | 16 | 10 |
| Tutorial.getDescription() | Game | 13 | Kevin Blomseth | 3/3/02 | 3/3/02 | 20 | 6 |
| Tutorial.getCurrentStep() | Game | 13 | Kevin Blomseth | 12/1/01 | 1/17/02 | 9 | 4 |
| CellRenderer.CellRenderer | UI | 18 | Sean Pinto | 2/28/02 | 2/28/02 | 7 | 3 |
| CellRenderer.getTableCellRendererComponent() | UI | 18 | Sean Pinto | 2/28/02 | 2/28/02 | 50 | 38 |
| FileDialog.FileDialog() | UI | 6, 12 | Joshua Thompson | 2/7/02 | 2/7/02 | 40 | 41 |
| FileDialog.actionPerformed() | UI | 6, 12 | Joshua Thompson | 2/7/02 | 2/7/02 | 130 | 130 |
| FileDialog.isSaved() | UI | 12 | Joshua Thompson | 2/7/02 | 2/7/02 | 9 | 9 |
| FileDialog.doSaveGame() | UI | 12 | Joshua Thompson | 2/7/02 | 2/7/02 | 15 | 15 |
| FileDialog.showSaveGameDialog() | UI | 12 | Joshua Thompson | 2/7/02 | 2/7/02 | 83 | 83 |
| FileDialog.isLoaded() | UI | 6 | Joshua Thompson | 2/7/02 | 2/7/02 | 9 | 9 |
| FileDialog.showLoadGameDialog() | UI | 6 | Joshua Thompson | 2/7/02 | 2/7/02 | 84 | 84 |
| FileDialog.keyPressed() | UI | 6, 12 | Joshua Thompson | 2/7/02 | 2/7/02 | 19 | 19 |
| Intro.Intro() | UI | Joshua Thompson | 12/1/01 | 1/17/02 | 11 | 11 | |
| Intro.mousePressed() | UI | Joshua Thompson | 2/4/02 | 2/4/02 | 14 | 14 | |
| Intro.keyPressed() | UI | Joshua Thompson | 2/5/02 | 2/5/02 | 14 | 14 | |
| Intro.paintComponent() | UI | Joshua Thompson | 12/1/01 | 1/17/02 | 13 | 13 | |
| KeyMonitor.KeyMonitor() | UI | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 10 | 10 |
| KeyMonitor.keyPressed() | UI | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 83 | 83 |
| LevelEditorUI.LevelEditorUI() | UI | 18 | Sean Pinto | 2/28/02 | 2/28/02 | 50 | 34 |
| LevelEditorUI.addColumns() | UI | 18 | Sean Pinto | 3/1/02 | 3/1/02 | 40 | 22 |
| LevelEditorUI.addSideBar() | UI | 18 | Sean Pinto | 3/2/02 | 3/2/02 | 55 | 41 |
| LevelEditorUI.saveLevel() | UI | 18 | Sean Pinto | 3/4/02 | 3/5/02 | 25 | 64 |
| LevelEditorUI.loadLevel() | UI | 18 | Sean Pinto | 3/5/02 | 3/5/02 | 25 | 87 |
| LevelEditorUI.newLevel() | UI | 18 | Sean Pinto | 3/3/02 | 3/5/02 | 11 | 11 |
| MapRenderer.MapRenderer() | UI | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 9 | 9 |
| MapRenderer.setOwner() | UI | 1 | Joshua Thompson | 2/1/02 | 2/1/02 | 9 | 9 |
| MapRenderer.update() | UI | 2 | Joshua Thompson | 1/28/02 | 1/28/02 | 87 | 87 |
| MapRenderer.paintComponent() | UI | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 88 | 88 |
| MouseMonitor.mouseDragged() | UI | 18 | Sean Pinto | 2/27/02 | 2/27/02 | 10 | 5 |
| MouseMonitor.mousePressed() | UI | 18 | Sean Pinto | 2/27/02 | 2/27/02 | 80 | 90 |
| MultiplayerDialog.MultiplayerDialog() | UI | 14 | Joshua Thompson | 2/4/02 | 2/4/02 | 48 | 48 |
| MultiplayerDialog.actionPerformed() | UI | 14, 15 | Joshua Thompson | 2/4/02 | 2/4/02 | 123 | 123 |
| MultiplayerDialog.keyPressed() | UI | 14, 15 | Joshua Thompson | 2/4/02 | 2/4/02 | 12 | 12 |
| MultiplayerDialog.cancelDialog() | UI | 34 | Joshua Thompson | 2/4/02 | 2/4/02 | 16 | 16 |
| MultiplayerDialog.showHostDialog() | UI | 14 | Joshua Thompson | 2/13/02 | 2/13/02 | 81 | 81 |
| MultiplayerDialog.showJoinDialog() | UI | 15 | Joshua Thompson | 2/13/02 | 2/13/02 | 53 | 53 |
| MultiplayerDialog.showWaitingDialog() | UI | 14 | Joshua Thompson | 2/4/02 | 2/4/02 | 74 | 74 |
| MultiplayerDialog.showAttemptingDialog() | UI | 15 | Joshua Thompson | 2/5/02 | 2/5/02 | 31 | 31 |
| MultiplayerDialog.showRestartRequestDialog() | UI | 30, 31 | Joshua Thompson | 2/6/02 | 2/6/02 | 29 | 29 |
| MultiplayerDialog.showChangeLevelRequestDialog() | UI | 27, 28 | Joshua Thompson | 2/6/02 | 2/6/02 | 29 | 29 |
| MultiplayerDialog.updateUserList() | UI | 14 | Joshua Thompson | 2/7/02 | 2/5/02 | 19 | 19 |
| MultiplayerDialog.connectionClosed() | UI | 34 | Joshua Thompson | 2/7/02 | 2/7/02 | 15 | 15 |
| MultiplayerDialog.couldNotConnect() | UI | 15 | Joshua Thompson | 2/6/02 | 2/6/02 | 17 | 17 |
| MultiplayerDialog.setUserName() | UI | 14, 15 | Joshua Thompson | 2/4/02 | 2/4/02 | 28 | 28 |
| MultiplayerDialog.getLevelName() | UI | 14 | Joshua Thompson | 2/4/02 | 2/4/02 | 9 | 9 |
| Sokoban.main() | UI | Joshua Thompson | 12/1/01 | 1/17/02 | 22 | 22 | |
| SGui.SGui() | UI | Joshua Thompson | 12/1/01 | 1/17/02 | 168 | 168 | |
| SGui.actionPerformed() | UI | Joshua Thompson | 12/1/01 | 1/17/02 | 350 | 469 | |
| SGui.startGame() | UI | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 118 | 118 |
| SGui.loadMainMenu() | UI | Joshua Thompson | 2/2/02 | 2/2/02 | 57 | 57 | |
| SGui.loadGame() | UI | 6 | Joshua Thompson | 2/1/02 | 2/1/02 | 31 | 31 |
| SGui.endGame() | UI | 5 | Joshua Thompson | 12/1/01 | 1/17/02 | 16 | 16 |
| SGui.showGoToLevelDialog() | UI | 9 | Joshua Thompson | 1/31/02 | 1/31/02 | 29 | 29 |
| SGui.showHelpDialog() | UI | 13 | Joshua Thompson | 2/12/02 | 2/8/02 | 32 | 32 |
| SGui.addKeyMonitor() | UI | 1 | Joshua Thompson | 2/6/02 | 2/6/02 | 14 | 14 |
| SGui.removeKeyMonitor() | UI | 1 | Joshua Thompson | 2/6/02 | 2/6/02 | 14 | 14 |
| SGui.setLevelFinishedDisplay() | UI | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 123 | 123 |
| SGui.pauseGame() | UI | 44 | Joshua Thompson | 2/1/02 | 2/1/02 | 20 | 20 |
| SGui.resumeGame() | UI | 44 | Joshua Thompson | 2/1/02 | 2/1/02 | 23 | 23 |
| SGui.updateStats() | UI | 1 | Joshua Thompson | 2/4/02 | 2/4/02 | 38 | 38 |
| SGui.resetStatDisplay() | UI | 1 | Joshua Thompson | 2/4/02 | 2/4/02 | 15 | 15 |
| SGui.setPauseDisplay() | UI | 44 | Joshua Thompson | 2/3/02 | 2/3/02 | 16 | 16 |
| SGui.setMapVisible() | UI | 44 | Joshua Thompson | 2/3/02 | 2/3/02 | 15 | 15 |
| SGui.setLevelName() | UI | 1 | Joshua Thompson | 12/1/01 | 1/17/02 | 10 | 10 |
| Sound.playSound() | UI | Kevin Blomseth | 3/2/02 | 3/2/02 | 40 | 18 | |
| Sound.moveSound() | UI | Kevin Blomseth | 3/2/02 | 3/2/02 | 7 | 2 | |
| Sound.pushSound() | UI | Kevin Blomseth | 3/2/02 | 3/2/02 | 7 | 2 | |
| Sound.doneSound() | UI | Kevin Blomseth | 3/2/02 | 3/2/02 | 7 | 2 | |
| Sound.burnSound() | UI | Kevin Blomseth | 3/2/02 | 3/2/02 | 7 | 2 | |
| Total Methods: | 270 | ||||||
| Total Estimated Lines of Code: | 6904 | ||||||
| Total Actual Lines of Code: | 6925 | ||||||
| Estimated Stage 2 Release | 2/7/02 | ||||||
| Estimated Stage 3 Release | 3/12/02 | ||||||
| By Date | |||||||