Генерация случайных парных изображений в C # - PullRequest
2 голосов
/ 20 марта 2010

я пытаюсь создать карточную игру. обычно в играх такого типа они соответствуют парным картам (с одинаковым именем файла "A.jpg with A.jpg")

но в моем случае я сопоставляю карточки с разными именами "B.jpg with A.jpg" (правильно), "C.jpg with D.jpg" (правильно), но с "B.jpg with C.jpg" (неправильный ответ).

A.jpg-B.jpg <- правильно </p>

C.jpg-D.jpg <- правильно </p>

E.jpg-F.jpg <- правильно </p>

Я сталкиваюсь с проблемой, когда генерирую карты в случайном порядке. Мне удается генерировать случайные карты, но мне не удается сгенерировать их с их парными элементами. Ниже приведена иллюстрация проблемы

A.jpg-B.jpg <- правильно </p>

C.jpg-F.jpg <- неверно </p>

как мне его кодировать, чтобы он всегда генерировался с их парными элементами, чтобы моя игра могла продолжаться?

Ответы [ 2 ]

1 голос
/ 20 марта 2010

Это напоминает мне Притча Дейкстры : похоже, что лучший и самый простой вариант - сделать это в два этапа:

  1. Генерация всех подходящих пар.
  2. Выберите случайные пары из списка уже действительных пар.
0 голосов
/ 20 марта 2010

Ну, вы могли видеть, совпадают ли две карты так: 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!
...