Идея: Гардевуар, Колючий Мех, с форума wov.mybb.ru
Графическая поддержка: Колючий Мех
Спасибо им за это!
Плагин к скрипту Супер-Дайсов: лотерея "Колесо удачи"
Установка:
1. Должен быть установлен и опробирован скрипт Супер-Дайсов => Супер - Дайсы!
2. В одном из форумов, прописанных в скрипте Дайсов, создаём тему под результаты Лотереи: 'Обработка результатов лотереи "Колесо удачи"',(можно создать отдельный форум для лотереи и прописать его ID в скрипте Дайсов, не забываем открыть форум гостю на чтение/запись).
Считываем ID темы, цифры после /viewtopic.php?id= при клике в левой колонке на название темы в форуме(разделе) с темами. Пример: http://forum.mybb.ru/viewtopic.php?id=32127
3. Прописываем ID темы (см. в скрипте ниже, красным), а также прописываем группы, допускаемые к лотерее. Идем в Администрирование страницы,
Создаём страницу: Лотерея "Колесо удачи"
В окно кода вставляем Код:
Код установки на Свою страницу:
<!-- код на страницу для "Колесо Удачи" -->
<style type="text/css">
.main.pages {
position:relative;
margin:auto;
margin-top:-90px;
height:1000px;
width:920px;
min-height:1030px;
z-index:2;
}
#Round, #center,
#cover, #center-gif {
transition-duration: 0s;
}
#bgImg,
#bgImg-2{
width:282px;
height:282px;
background: rgba(32,32,26,.93);
transition-duration: 9.8s;
}
#bgImg-2.active{
background: rgba(0,0,0,.42);
}
</style>
<!-- Настройки скрипта "Колесо Удачи" -->
<script type="text/javascript">
//============== AdminSetting Parametrs ===========//
var probability ={};
probability.Access = [1,2,4]; //группы Доступа к колесу;
probability.LoginNoAccess = ["Ник1","Ник2","и т.д."]; //Пользователи лишенные доступа;
probability.TemaID = 367; //ID темы с оформлением -вставкой Дайс-сообщения с результатом;
probability.Lot = new Array (
['red','Пустой лот',0], //0 - негативный итог; 1 - Деньги; 2 - Призы или Бонусы;
['blue','одна руна навыка',2],
['green','500 Redsuns',1],
['red','-50 жизней',0],
['blue','уникальное украшение на выбор',2],
['green','50 Redsuns',1],
['red','-30 Энергии',0],
['blue','украшение из лавки на выбор',2],
['green','100 Redsuns',1],
['red','Одна удачная охота',2],
['blue','подарок из лавки на выбор',2],
['green','250 Redsuns',1] //Последний элемент без запятой;
)
probability.Arr =[];
//Вероятности выпадения;
probability.red = 72; //Вероятность красного
probability.green = 24; //Вероятность зеленого
probability.blue = 12; //Вероятность синего
</script>
<script type="text/javascript" src="http://forumstatic.ru/files/0013/61/e9/62574.js"></script>
<div id="modal-wrp">
<div id="openModal" class="modalDialog">
<div>
<h3>ПЕРЕХОД в тему</h3>
<p>Через несколько секунд Вы будете перенаправлены на страницу с темой оформления результатов.</p>
</div>
</div></div>
<div class="wrp-round">
<div id="arrow-a"></div>
<img id="round-arrow" src="http://funkyimg.com/i/2HpWz.png" border="0">
<img id="Round" src="http://funkyimg.com/i/2HpPq.jpg" border="0">
<img class="sector-frame a-1" src="http://funkyimg.com/i/2HpS1.png" border="0">
<img class="sector-frame a-2" src="http://funkyimg.com/i/2HpRZ.png" border="0">
<div id="cover"></div>
<img id="center-gif" src="http://funkyimg.com/i/2HpSt.gif" border="0">
<img id="bgImg" src="http://funkyimg.com/i/2HpW7.png" border="0">
<div id="bgImg-2"></div>
<img id="center" src="http://funkyimg.com/i/2HpTU.png" border="0">
</div>
<!--//End код на страницу для "Колесо Удачи" -->
Красным жирным - минимально необходимые установочные параметры;
Cерозеленым - настройки к текущему Колесу, меняются при смене колеса на Вашу конкретику(В конце будет дано разъяснение )
Код в спойлере выше, - работает под гостем сразу же (без записи в тему), при установки на свою страницу
4. В HTML верх
временно ставим код:
<script>test_kolesa=true;</script>
Тестируем код на своей странице и отправку результатов в указанную в скрипте тему.
Еще раз: - тема должна находиться в форуме прописанном в скрипте Дайсов, форум должен быть открыт на запись/чтение под гостем.
Дополнительные коды, повышающие юзабельность, в HTML верх и в Объявление
В HTML верх
1. Заменяем код в HTML верх: <script>test_kolesa=true;</script> на такой:
<!-- Установка дня и часа Лотереи -->
<script type="text/javascript">
FORUM.Lottery_days = [2,6]; // День недели
FORUM.Lottery_hours = [5,21]; // Время по Москве (От и До)
</script>
<script type="text/javascript" src="http://forumstatic.ru/files/0013/61/e9/62802.js"></script>
<!--//End-->
Пояснения:
FORUM.Lottery_days - Дни недели розыгрыша лотереи, 0 - воскресение, 1- понедельник и т.д
FORUM.Lottery_hours - Время работы лотереи, с - до (временной диапазон: от 0 до 24)
В начало Объявления
<!-- Объява Дня и часа Лотереи -->
<a href="/pages/lotereya_koleso_udachi" style="text-decoration:none" title="Переход на Страницу"><div id="lottery_day" style="display:none;
margin:9px 30px;
margin-top: 5px;
padding:30px 0 15px 0;
padding: 15px 20px;
border-radius: 16px;
border:3px double #362EAD;
background-clip: border-box;
background: #fff;
background: -moz-linear-gradient(#fff, #362EAD);
background: -webkit-linear-gradient(#fff, #362EAD);
background: -o-linear-gradient(#fff, #362EAD);">
<pre style="dispay:block;font:italic normal 700 15px/17px Georgia!important;color:#fff;letter-spacing:1px;text-align:center;">
<p style="font:italic normal 700 19.5px/13px Arial;margin:-1px 0 -5px 0!important;
text-shadow: 1px 1px 0px #BFD3E6;
color:#27587E">Сегодня день лотереи "Колесо Удачи"</p>
<span style="text-shadow: 0 1px 1px #000">Спешите, не опаздывайте, Лотерея теперь два дня
в неделю с 05:00 Мск - по 21:00 Мск, следите за объявлениями!</span>
</pre></div></a><!--//End -Объява Дня и часа Лотереи -->
Красным - ссылка на страницу лотереи, правим, - вставляем полную ссылку, если имя страницы отличается от рекомендованного
Установка своего собственного варианта Колеса:
(смена в секторах надписей, иконок призов, изменение общего фона у секторов с единым цветом)
Свернутый текст
Сама картинка Колеса находиться в этом теге (см. выше п. 3. Код установки на Свою страницу:)
<img id="Round" src="http://funkyimg.com/i/2HpPq.jpg" border="0">
Размер картинки 834 x 834 пикселей , формат .jpg - формат и размер сохраняем для своих заменяемых картинок)
Вариант иной картинки колеса: http://savepic.net/6630270.jpg
1. В своих картинках:Число секторов, их расположение и последовательность смены цвета фона и начальный угол смещения колеса сохраняем!
2. Шаблон для удобства правки: http://savepic.net/6653809.png (Накладываем в ФШ слоем выше первого /или второго/ исходника картинки)
3. Общие принципы: Красный сектор - типично с негативными результатами( в оставшихся секторах с иным цветом - сплошной позитив). Всего в колесе три градации цвета секторов, по четыре сектора в каждом
Всего секторов - 12.
Зелёный(у меня он коричневый) исключительно с денежными призами,
Синий - с бонусами. Считается что бонусы в два раза весомей денежных призов.
4. Как проставить в скрипт коды результатов со своей картинки:
Коды результаты заносятся в probability.Lot = new Array (, начиная с 5-го сектора, левее центрального, обходя весь круг по часовой стрелке, картинка-пояснение: http://savepic.net/6622864.jpg
Заполнение кодов результатов, изменяемые параметры - красным (коды цвета секторов
не меняем, просто принимаем во внимание новое соответствие /к примеру у меня, при новой раскраске предыдущего исходника, зелёный('green') - превратился в коричневый/
probability.Lot = new Array (
['red','Пустой лот',0], //0 - негативный итог; 1 - Деньги; 2 - Призы или Бонусы;
['blue','одна руна навыка',2],
['green','500 Redsuns',1],
['red','-50 жизней',0],
['blue','уникальное украшение на выбор',2],
['green','50 Redsuns',1],
['red','-30 Энергии',0],
['blue','украшение из лавки на выбор',2],
['green','100 Redsuns',1],
['red','Одна удачная охота',2],
['blue','подарок из лавки на выбор',2],
['green','250 Redsuns',1] //Последний элемент без запятой;
)
Новое Колесо, Пример заполнения кодов результатов
для Варианта http://savepic.net/6630270.jpg ...
probability.Lot = new Array (
['red','- 500 золотых',0], //0 - негативный итог; 1 - Деньги; 2 - Призы или Бонусы;
['blue','You win',2],
['green','650 золотых',1],
['red','Плен',0],
['blue','+1 провинция',2],
['green','50 золотых',1],
['red','You die',0],
['blue','Новое оружие',2],
['green','150 золотых',1],
['red','Служба в дозоре',0],
['blue','Яйцо дракона',2],
['green','350 золотых',1] //Последний элемент без запятой;
)
5. Вероятность выпадения, простановка кодов.
Общие положения:
a) Справедливость: Число выпадающих отрицательных результатов, - равно числу позитивных выпадающих вариантов
b) Считаем, что подарки-бонусы с синих секторов в два раза престижнее денежных призов, поэтому их число выпадения в два раза менее, чем денежных.
===========================
Расчёт вероятности для колеса: http://savepic.net/6630270.jpg
Пусть число случаев будет близко к 100. Для кратного повторения результатов число случаев в каждом секторе должно делиться на 4 (4 сектора в каждом цвете).
Примем, что на красном секторе только отрицательные результаты (в исходнике в красном секторе затесался позитив "Удачная Охота", лучше делать без таких исключений)
Тогда:
Число случаев красного сектора = 48 (48 делится на 3 и на 4)
Для синего и зеленого тоже = 48
Посколь синий реже в два раза зеленого, то зелёный = 32, синий = 16 (итого синий+зелёный = 48, - всё честно)
Итоговый код для вставки в скрипт:
probability.Arr =[];
//Вероятности выпадения;
probability.red = 48; //Вероятность красного
probability.green = 32; //Вероятность зеленого
probability.blue = 16; //Вероятность синего
Объединяем серо-зеленые коды из последних пунктов 4. и 5. Установка своего собственного варианта Колеса и заменяем серо-зеленое в исходнике п.п. 3. Код установки на Свою страницу:
Также заменяем ссылку в тегах
<img id="Round" src="http://savepic.net/6627399.jpg" border="0">
на свою картинку
Всё - Новое Колесо поставлено.
DEMO
Отписываемся в этой теме
Отредактировано Deff (Ср, 13 Июн 2018 11:13:38)