25 lines
740 B
Dart
25 lines
740 B
Dart
import 'package:flame/components.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
class CheckerBoard extends PositionComponent {
|
|
final int columns;
|
|
final int rows;
|
|
|
|
CheckerBoard(this.columns, this.rows);
|
|
|
|
@override
|
|
void render(Canvas canvas) {
|
|
// Square board
|
|
final cellSize = size.toSize().width / columns;
|
|
final even = Paint()..color = Colors.amber;
|
|
final odd = Paint()..color = Colors.brown;
|
|
for (int row = 0; row < rows; row ++) {
|
|
for (int col = 0; col < columns; col ++) {
|
|
Rect rect = Rect.fromLTWH(col * cellSize, row * cellSize, cellSize, cellSize);
|
|
final paint = (col + row) % 2 == 0 ? even : odd;
|
|
canvas.drawRect(rect, paint);
|
|
}
|
|
}
|
|
super.render(canvas);
|
|
}
|
|
} |