import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';

import 'package:memory/cubit/game_cubit.dart';
import 'package:memory/models/game/game.dart';

class GameBottomWidget extends StatelessWidget {
  const GameBottomWidget({super.key});

  @override
  Widget build(BuildContext context) {
    return BlocBuilder<GameCubit, GameState>(
      builder: (BuildContext context, GameState gameState) {
        final Game currentGame = gameState.currentGame;

        const Color borderColor = Colors.grey;
        final int values = currentGame.board.tiles.length ~/ 2;

        List<Widget> items = [];
        for (int value = 1; value <= values; value++) {
          final String assetName =
              'assets/skins/${currentGame.globalSettings.skin}_${currentGame.pairsFound.contains(value) ? value.toString() : 'unknown'}.png';
          items.add(Padding(
            padding: const EdgeInsets.all(2),
            child: Image(
              image: AssetImage(assetName),
            ),
          ));
        }

        return Container(
          margin: const EdgeInsets.all(2),
          padding: const EdgeInsets.all(2),
          decoration: BoxDecoration(
            color: borderColor,
            borderRadius: BorderRadius.circular(2),
            border: Border.all(
              color: borderColor,
              width: 2,
            ),
          ),
          child: Table(
            children: [
              TableRow(
                children: items,
              ),
            ],
          ),
        );
      },
    );
  }
}