Introdução: Use Silverlight 2.0 (c#) para desenvolver um jogo Lianliankan Como jogar: Selecione a carta com o botão esquerdo do mouse. Se a conexão entre as duas cartas selecionadas não for superior a 3 linhas retas, as duas cartas selecionadas podem ser eliminadas. .
Ideias
1. Algoritmo de arranjo inicial do cartão: sabe-se que a capacidade do contêiner é x, o número de cartões exclusivos é y, x >= y && x % 2 == 0, primeiro organize aleatoriamente os cartões no contêiner e depois retire-os as mesmas cartas no recipiente Para um conjunto com um número ímpar (o número de membros no conjunto deve ser um número par), finalmente corte o conjunto no tabuleiro e copie as cartas da metade direita do conjunto para a metade esquerda do conjunto em sequência. O algoritmo acima garante que, com base em uma determinada taxa aleatória, não haverá um número ímpar de cartas idênticas.
2. Algoritmo sem solução e algoritmo de rearranjo: Entre os cartões existentes no contêiner, calcule se existe um caminho eliminável em pares. Caso contrário, não há solução e precisa ser reorganizado. Ao reorganizar, você precisa obter o conjunto de cartas existente e o conjunto de posições de cartas, escolher aleatoriamente as cartas do conjunto de cartas (se você retirar uma, esta será removida do conjunto original) e, em seguida, colocá-la no conjunto de posições de cartas em ordem, de modo a atingir o objetivo de substituir os cartões existentes. Objetivo de reorganização.
3. Algoritmo de caminho de eliminação de dois pontos e algoritmo para selecionar o caminho de eliminação ideal: Pegue todos os conjuntos de coordenadas sem espaços reservados (incluindo você) na direção do eixo x e na direção do eixo y do primeiro ponto selecionado pelo jogador, e os nomes são respectivamente x1s, y1s; pegue todos os conjuntos de coordenadas sem espaços reservados (incluindo você) na direção do eixo x e na direção do eixo y do segundo ponto selecionado pelo jogador, e os nomes são x2s, y2s respectivamente. Primeiro encontre dois pontos com coordenadas x iguais em x1s e encontre o conjunto de caminhos elimináveis em e y2s. A combinação dos dois conjuntos é o conjunto de todos os caminhos apagáveis entre os dois pontos selecionados pelo jogador. Se o conjunto estiver vazio, os dois pontos não podem ser eliminados. O caminho mais curto no conjunto é o caminho de eliminação ideal, e o 4. -ponto da linha de conexão no conjunto é Eliminar conectores de caminho
4. O jogo é desenvolvido utilizando o padrão MVVM (Model - View - ViewModel)
Expandir