Заказчик
Заказчик hameleon_krd | FL.RU

Заказчик

На сайте 10 лет и 2 месяца (заходил 9 лет 9 месяцев 26 дней назад)
0
6
Рейтинг
6
Все (1)       Заказы (1)        Вакансии (0)       Конкурсы (0)
Разместить заказ
30 Сентября 2014
По договоренности
Реализовать виджет "Русская рулетка" на сайт в виде плагина Jquery.
Пример:
Имеем в HTML коде <div id="roullet"></div>
в JavaScript прописываем:
$('#roullet').createRoullet({key1: value1, key2: value2, key3: value3, ..., keyN, valueN})
в указанном div'e получаем требуемый нам виджет с описанными ниже свойствами.

Алгоритм работы (клиент):

1) имеется прямоугольный блок (размером не более 1000px) на котором изображен рулеточный стол в казино.
2) на столе имеется прямоугольная область (1) на котором выложены плиткой красные и белые прямоугольники(в произвольном порядке).
также вместо красного или белого прямоугольника может быть фотография пользователя, который сделал ставку на данную позицию.
3) На одну позицию может сделать ставку только один пользователей.
4) Сделать ставку пользователь может кликнув на кнопку (2) (после нажатия на эту кнопку рулетка должна принать вид (5)) и нажав на желаемую СВОБОДНУЮ позицию
5) Изображение рулетки (4) непрерывно вращается против часовой стрелки (или по часовой)
6) Счетчик (3) показывает время, оставшееся до розыгрыша (дни, часы, минуты, секунды) (розыгрыш происходит на сервере и сервер отдает id победителя)
7) Во время розыгрыша рулетка (4) Ускоренно вращается несколько секунт в обратную сторону, затем замирает и вместо позиций должно появиться изображение аватарки победителя и надпись: победил пользователь %username%
или же (в случае победы текущего пользователя) "Вы победили и выиграли %сумма% %валюта%".
8) После розыгрыша виджет ждет от сервера начала следующего розыгрыша. как только начался следующий розыгрыш рулетка(4) снова медленно вращается.
9) Обычное положение виджета показано на рисунке 001.jpg, а при нажатии на кнопку (0) виджет плавно выдвигается и показывается полностью. по центру окна браузера
10) Если пользователь пытается поставить на занятую позицию – ему должно выдаваться сообщение о том, что на данную позицию уже сделана ставка.
11) Если у пользователя недостаточно средств на счету – ему должно выдаваться сообщение об этом
Входные данные реализуемой функции:
{
Периодичность ajax запросов: value1, //(в секундах или миллисекундах – неважно)
Скорость вращения рулетки в обычном режиме: value2,
Скорость вращения рулетки во время розыгрыша: value3,
Направление вращения рулетки в обычном режиме: value4, // (0 – против часовой, 1 – по часовой)
Длительность вращения рулетки во время розыгрыша: value5
..................................: ......................
Размеры и положение элементов управления: .....................
Другие данные которые сочтет необходимым учитывать разработчик
}

Алгоритм работы (сервер):

1) По запросу клиента отправляет текущее состояние рулетки(id пользователей на позициях, время до розыгрыша и т.д)
2) При попытке сделать ставку должен проверить не занята ли позиция и баланс пользователя(в БД). в случае удачи списывает со счета пользователя ставку игры (ставка фиксированная и одинакова для всех)
3) Если подошло время розыгрыша – то генерирует случайное число от 1 – 36 и сохраняет в кэше (memcached) id победителя, который поставил на сгенерированный номер. отправляет всем клиентам id победителя.
4) id победителя висит в кэше до следующего розыгрыша.
5) текущее состояние рулетки хранится в memcached
6) время до розыгрыша, пауза между розыгрышами, берутся из конфига.
7) во время паузы между розыгрышами никто не может сделать ставку. все видят только предыдущего победителя

Обмен данными между клиентом и сервером AJAX запросами
На усмотрение разработчика сервер может возвращать как объект JSON так и уже готовый HTML
Структура базы данных прилагается.
Id сессии пользователя хранится в cookies. А на стороне сервера в memcached (Стандартный механизм сессий PHP не используется)

Прошло времени с момента публикации: 10 лет 2 месяца 16 дней 4 часа 53 минуты
Раздел: Программирование
Наши партнеры
Сведения об ООО «Ваан» внесены в реестр аккредитованных организаций, осуществляющих деятельность в области информационных технологий. ООО «Ваан» осуществляет деятельность, связанную с использованием информационных технологий, по разработке компьютерного программного обеспечения, предоставлению доступа к программе для ЭВМ и является правообладателем программы для ЭВМ «Платформа FL.ru (версия 2.0)».