OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 /** A boat in the grid. */ | 5 /** A boat in the grid. */ |
6 class Boat { | 6 class Boat { |
7 final int startX; | 7 final int startX; |
8 final int startY; | 8 final int startY; |
9 final bool horizontal; | 9 final bool horizontal; |
10 final int length; | 10 final int length; |
11 int hitCount = 0; | 11 int hitCount = 0; |
12 | 12 |
13 Boat(this.startX, this.startY, this.horizontal, this.length) {} | 13 Boat(this.startX, this.startY, this.horizontal, this.length) {} |
14 | 14 |
15 bool get sunk() => length == hitCount; | 15 bool get sunk => length == hitCount; |
16 } | 16 } |
17 | 17 |
18 /** Represents a grid configuration. */ | 18 /** Represents a grid configuration. */ |
19 class BoatGrid { | 19 class BoatGrid { |
20 List<List<Boat>> boatMap; | 20 List<List<Boat>> boatMap; |
21 | 21 |
22 BoatGrid() : boatMap = new List(Constants.SIZE) { | 22 BoatGrid() : boatMap = new List(Constants.SIZE) { |
23 for (int i = 0; i < Constants.SIZE; i++) { | 23 for (int i = 0; i < Constants.SIZE; i++) { |
24 boatMap[i] = new List(10); | 24 boatMap[i] = new List(10); |
25 } | 25 } |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
88 /** Static constants used by the game. */ | 88 /** Static constants used by the game. */ |
89 class Constants { | 89 class Constants { |
90 static const SIZE = 10; | 90 static const SIZE = 10; |
91 static const MISS = 1; | 91 static const MISS = 1; |
92 static const HIT = 2; | 92 static const HIT = 2; |
93 static const SUNK = 3; | 93 static const SUNK = 3; |
94 static const PENDING = 4; | 94 static const PENDING = 4; |
95 | 95 |
96 Constants() {} | 96 Constants() {} |
97 } | 97 } |
OLD | NEW |