在C#中生成随机配对图像

时间:2010-03-20 19:33:44

标签: c# image random

我正在尝试创建匹配游戏的卡片。通常这些类型的游戏他们将配对的卡片匹配在一起(使用相同的文件名“A.jpg with A.jpg”)

但在我的情况下,我匹配不同名称的卡“B.jpg与A.jpg”(正确),“C.jpg与D.jpg”(正确),但与“B.jpg与C.jpg” (错误答案)。

A.jpg-B.jpg< - 正确

C.jpg-D.jpg< - 正确

E.jpg-F.jpg< - correct

当我随机生成卡片时,我遇到了问题。我设法生成随机卡,但我没有设法用它们的配对onces生成它。以下是问题的说明

A.jpg-B.jpg< - 正确

C.jpg-F.jpg< - 不正确

所以我应该如何对它进行编码,以便它始终与配对的onces一起生成,以便我的游戏可以继续?

2 个答案:

答案 0 :(得分:1)

这让我想起Dijkstra Parable:看起来这里最好也是最简单的选择是分两步完成:

  1. 生成所有匹配对。
  2. 从已经有效的对列表中选择随机对。

答案 1 :(得分:0)

嗯,你可以看到两张牌是否像这样匹配: A = 0,B = 1,C = 2,D = 3,......

card1 = 0;
card2 = 1;

//Match?
if((card1%2 == 0 && card2 == (card1 + 1)) ||
   (card1%2 == 1 && card1 == (card2 + 1)))
  return true;//Match!