| 12345678910111213141516171819202122232425262728 |
- import 'package:flutter/material.dart';
- import 'package:get/get.dart';
- import 'package:gobang/controllers/game_controller.dart';
- import 'package:gobang/widgets/board_painter.dart';
- /// 可点击的五子棋棋盘
- class GobangBoard extends StatelessWidget {
- const GobangBoard({super.key, required this.size});
- final double size;
- @override
- Widget build(BuildContext context) {
- final c = Get.find<GameController>();
- return Obx(
- () => GestureDetector(
- onTapDown: (d) => c.onBoardTap(d.localPosition, size),
- child: CustomPaint(
- size: Size.square(size),
- painter: BoardPainter(
- pieces: List.unmodifiable(c.board.state),
- version: c.paintVersion.value,
- ),
- ),
- ),
- );
- }
- }
|