Структура данных C# как словарь, но без значения

Планирование является Вашим лучшим другом. Фигура, каковы Ваши потребности действительно.

Загружающиеся Данные: каждый компьютер будет иметь те же модели и графику, и просто названия и местоположение отодвинуты сеть. Если каждый игрок может настроить их символ или другие объекты, необходимо будет переместить эти данные.

Обман: необходимо ли волноваться об этом? Можете Вы доверять тому, что говорит каждый клиент. Если не тогда Вы серверная логика будет выглядеть по-другому, чем Вы клиентская логика. Вообразите этот простой случай, у каждого из Ваших 10 плееров может быть различная скорость перемещения из-за взлетов питания. Для уменьшения обмана, Вы должны, чтобы вычислить, как далеко каждый плеер может переместиться между коммуникационными обновлениями с сервера, иначе плеер мог взломать, там убыстряются, и ничто не остановило бы их. Если бы плеер последовательно немного быстрее, чем ожидалось или имеет один переход времени, сервер просто изменил бы местоположение их в самом близком месте, которое было возможно, потому что это - вероятная расфазировка тактовых сигналов или одно прерывание времени в связи. Однако, если плеер постоянно перемещается дважды в максимально возможной степени тогда, может быть благоразумно вышибить их из игры. Чем больше математики, тем больше частей игры указывает, что можно проверить дважды на сервере, более последовательное, которым игра будет, случайно это сделает обман тяжелее.

, Как одноранговый узел для пиринга является этим: Даже если игра будет быть одноранговым узлом для пиринга с Вами, то вероятно, захочет сделать, чтобы один плеер запустил игру и использовал их в качестве сервера, это намного легче, чем попытка справиться с некоторыми более облачными подходами. Если нет никакого сервера тогда, необходимо работать протокол на решение споров между 2 машинами с непоследовательными игровыми состояниями.

Снова планированием является Ваш План лучшего друга, План, План. Если Вы думаете о проблеме достаточно, можно думать путь через большинство проблем. Тогда можно начать думать о тех, Вы еще не решили.

55
задан Mark Kanof 1 September 2009 в 06:54
поделиться

4 ответа

Да, он называется HashSet и доступен в версии 3.5 платформы .NET. Если вы используете .NET версии 2.0, вы можете использовать словарь и установить значения null .

85
ответ дан 7 November 2019 в 07:22
поделиться

Если 3.5 не подходит, вы можете сделать что-то вроде Dictionary и просто проигнорировать значение. Я сделал это в версии 2.0, и я стараюсь установить такое же значение, как и ключ.

4
ответ дан 7 November 2019 в 07:22
поделиться

Если вы не ориентируетесь на .NET 3.5, Power Collections (открытый исходный код) также предоставляет реализацию Set.

2
ответ дан 7 November 2019 в 07:22
поделиться

или используйте SortedList, где значения должны быть уникальными

0
ответ дан 7 November 2019 в 07:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: