Полезное

Мы Вконтакте

Discord канал

#
Аватара пользователя
Пользователь
Сообщения: 34
yellyex писал(а):
YarRainbow, у меня упор на результат, а не на правильный подход. Если буду знать, как и что работает -> научусь. А если наоборот, то работать может не всегда. Меня практика больше учит, чем теория.

Чем отличается та теория, которую излагает вам UENewbie, от того, что пишут в книге? Ничем абсолютно, в книгах даже это удачней и более полно сформулировано. А про практику... Практика - это инструмент закрепления, а не обучения. По крайней мере в программировании. Вы никогда не научитесь проектировать программы или алгоритмы, без теоретических знаний. А то, как вы настроены их получать (непоследовательно, кусками, по мере поступления проблем), вы никогда не будете обладать достаточным знанием, для решения все более сложного круга задач.

Будете каждый раз искать человека, который поможет найти вам решение частной задачи, просто потому, что прошлая ваша задача была другой и вы не обладаете достаточными знаниями, чтобы найти решение самостоятельно? Удачи, с таким подходом.
_________________
https://docs.unrealengine.com/latest/INT/index.html
https://docs.unrealengine.com/latest/INT/API/index.html
В чем-то могу ошибаться, но всегда рад, если меня поправят.
Аватара пользователя
Пользователь
Сообщения: 176
YarRainbow, вот тут ты не прав. Мне минут 20 пытались в текстовом виде объяснить в чём заключается смысл массивов. Я ничего не понимал. Стоило только мне показать через скайп, как всё работает, так я сразу понял! И не надо навязывать своё мнение. У меня получается так, и люди есть, которые помогут. Будет иная ситуация, там видно будет.
Аватара пользователя
Пользователь
Сообщения: 244
YarRainbow писал(а):
Будете каждый раз искать человека, который поможет найти вам решение частной задачи, просто потому, что прошлая ваша задача была другой и вы не обладаете достаточными знаниями, чтобы найти решение самостоятельно? Удачи, с таким подходом.

Нет, почему. Как я и говорил уже - человеку главное с чего-то начать, дать толчок. Дать, как говорят, удочку, чтобы он дальше смог уже совершенствоваться в ловле рыбы. Это разные подходы. Можно долго и упорно читать книги, при этом оттуда ничего не запомнишь пока не закрепишь это на практике - мой же подход обратно, сразу показываю как это работает на практике и объясняю теорию с конкретного примера. После чего, это уже усвоено, человек рад и дальше самостоятельно совершенствуется и уже может и читать, и пробовать реализовать другие задачи.

То, что с этого человек начинает - вовсе не означает, что он не будет дальше развиваться :) Напротив - это даст ему прилив бодрости и уверенности в себе, и тогда он будет развиваться. Мы же все люди, всеми нами движут эмоции :)

Разные подходы, кому-то такой больше подходит, кому-то такой...
Аватара пользователя
Пользователь
Сообщения: 244
Вернёмся к покеру :)

Вот тут я набросал небольшую схему того, как распределяются индексы массива Deck (или как мне нравится больше DeckArr :)) ) по игрокам. Число на карте - это индекс карты в колоде. Тут сразу написано и расширение игры на большее количество участников, для этого достаточно помнить, что последние три карты - это всегда бордовые, остальные - руки.

Изображение
Аватара пользователя
Пользователь
Сообщения: 176
UENewbie, да, всё верно! Я это понимаю. В данный момент я уже реализовал систему определения ПАРЫ. Радуюсь и набрасываю варианты других систем :)
Аватара пользователя
Пользователь
Сообщения: 244
yellyex писал(а):
UENewbie, да, всё верно! Я это понимаю. В данный момент я уже реализовал систему определения ПАРЫ. Радуюсь и набрасываю варианты других систем :)

Ух ты, круто! Значит продвигаешься уже :) В отдельные функции потом скинь, типа: checkPair, checkTwoPairs, checkStreet, checkRoyalFlush и удобно будет проверять на всё подряд :)
Аватара пользователя
Пользователь
Сообщения: 176
Если что, то я в чате :)
Аватара пользователя
Пользователь
Сообщения: 244
На всякий случай запишу свою идею по вычислению пар (которую вчера в чате говорил), может дойдёшь до неё потом, а она уже тут написана :)
Моё предложение (на вырост :) ) - создание массива игроков PlayersArr типа Player (собственная структура). Структура должна содержать в себе вспомогательные переменные по каждому игроку:

Код:
Id - [u]не нужен[/u], т.к. идентификатор игрока - его порядковый элемент в массиве (это и есть уже идентификатор), он поможет получить указатель на карты игрока в колоде
Stack - текущий стек игрока (кол-во денег на сейчас)
CurrWinCombo (default: 0) - текущая выигрышная комбинация. Перезаписывается тогда, когда мы вызываем функцию подсчёта выигрышных комбинаций по тем игрокам, которые дошли до шоудауна.


CurrWinCombo - выигрышная комбинация должна быть закодирована числом (по старшинству комбинаций):
Код:
0 - инициализация, нет выигрышной комбинации / игрок сбросил карты
1 - пара
2 - две пары
3 - трипс/сет (я только не помню старше ли один другого или нет, если да - то разделить на разные идентификаторы)
4 - ...старшие комбинации...


После того, как CurrWinCombo просчитано - можно выявить победителя по тому, у кого число CurrWinCombo выше. При спорной ситуации дополнительно проанализировать кикер. Вот и все чудеса :)
Аватара пользователя
Пользователь
Сообщения: 176
UENewbie, да я пока застрял сам в этих вычислениях. Сделал определение пары, а вот старшую карту не могу.
Аватара пользователя
Пользователь
Сообщения: 244
yellyex писал(а):
UENewbie, да я пока застрял сам в этих вычислениях. Сделал определение пары, а вот старшую карту не могу.

Ну смотри, если ты сделал уже определение наличие пары у одного игрока и пары у другого игрока, то ты можешь взять по одной карте (любой, покуда они равны) у каждого игрока и сравнить их напрямую - у кого выше, пара того и старше.


Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 96

UEngine.ru © 2017
Все права защищены. При копировании материалов с сайта, ссылка на первоисточник обязательна.
Яндекс.Метрика
Главная страница