Skip to content
Snippets Groups Projects
Select Git revision
  • 8b5ff842e049060b8495634e1ef8c8d6cb60b641
  • master default protected
  • 47-upgrade-framework-and-dependencies
  • 27-improve-app-metadata
  • 6-fix-display-grid
  • Release_1.9.0_38 protected
  • Release_1.8.2_37 protected
  • Release_1.8.1_36 protected
  • Release_1.8.0_35 protected
  • Release_1.7.0_34 protected
  • Release_1.6.0_33 protected
  • Release_1.5.0_32 protected
  • Release_1.4.3_31 protected
  • Release_1.4.2_30 protected
  • Release_1.4.1_29 protected
  • Release_1.4.0_28 protected
  • Release_1.3.1_27 protected
  • Release_1.3.0_26 protected
  • Release_1.2.1_25 protected
  • Release_1.2.0_24 protected
  • Release_1.1.0_23 protected
  • Release_1.0.21_22 protected
  • Release_1.0.20_21 protected
  • Release_1.0.19_20 protected
  • Release_1.0.18_19 protected
25 results

match_page.dart

Blame
  • match_page.dart 7.53 KiB
    import 'dart:math';
    
    import 'package:flutter/material.dart';
    import 'package:puissance4/coordinate.dart';
    
    import 'board.dart';
    import 'cpu.dart';
    import 'game_chip.dart';
    import 'hole_painter.dart';
    
    enum Color {
      YELLOW,
      RED,
    }
    
    enum Mode {
      PVP,
      PVC,
      DEMO,
    }
    
    class MatchPage extends StatefulWidget {
      final Mode mode;
      final Cpu cpu;
      final Cpu cpu2;
    
      const MatchPage({
        Key key,
        this.mode,
        this.cpu,
        this.cpu2,
      }) : super(key: key);
    
      @override
      _MatchPageState createState() => _MatchPageState();
    }
    
    class _MatchPageState extends State<MatchPage> with TickerProviderStateMixin {
      final board = Board();
      Color turn;
      Color winner;
    
      List<List<Animation<double>>> translations = List.generate(
        7,
        (i) => List.generate(
          7,
          (i) => null,
        ),
      );
    
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(
            elevation: 0,
          ),
          backgroundColor: Colors.blue,
          body: Padding(
            padding: const EdgeInsets.all(16.0),
            child: Flex(
              direction: Axis.vertical,
              mainAxisSize: MainAxisSize.max,
              children: <Widget>[
                Flexible(
                  flex: 2,
                  child: Container(
                    constraints: BoxConstraints.loose(
                      Size(
                        500,
                        532,