Если у Вас есть вопросы, как сделать что-то в программе или Вы не понимаете чего-то (то ли это ошибка, то ли фича и т.д.), то спрашивайте в этой теме.
Неактивен
Подскажите как на 4ой версии аксмы сделать смену фона, в зависимости от происходящего в истории?
На 2ой версии можно было выбирать тему макросом <<style>> , в 4ке это не возможно(
В данный момент вышел из положения, путем показа солнышка или луны в заголовке, но, это все не то.
Заранее спасибо!)
Неактивен
Поработал не много с календарем.
Конечно есть что улучшать, добавить алгоритм Зеллера, улучшить работу в цикле, если кто поможет - Велком)))
Високосность присутствует
:: time <<loop 10>><<if $minut gte 60>> <<set $hour = $hour + 1>> <<set $minut = $minut - 60>> <<endif>><<endloop>> <<loop 10>><<if $hour gte 24>> <<set $day = $day + 1>> <<set $hour = $hour - 24>> <<set $week = $week + 1>> <<endif>><<endloop>> <<If $week gt 7 >> <<set $week = $week - 7>> <<endif>> <<if ($month eq 1) or ($month eq 3) or ($month eq 5) or ($month eq 7) or ($month eq 8) or ($month eq 10) or ($month eq 12)>> <<if $day gt 31>> <<set $day = $day - 31>> <<set $month = $month + 1>> <<endif>> <<endif>> <<if ($month eq 4) or ($month eq 6) or ($month eq 9) or ($month eq 11)>> <<if $day gt 30>> <<set $day = $day - 30>> <<set $month = $month + 1>> <<endif>> <<endif>> <<if $month eq 2 and $year%4 neq 0>> <<if $day gt 28>> <<set $day = $day - 28>> <<set $month = $month + 1>> <<endif>> <<endif>> <<if $month eq 2 and $year%4 eq 0>> <<if $day gt 29>> <<set $day = $day - 29>> <<set $month = $month + 1>> <<endif>> <<endif>> <<if $month gt 12>> <<set $year = $year + 1>> <<set $month = $month - 12>> <<endif>> <<If $week == 1>> <<set $day_name ='Пн'>> <<endif>> <<If $week == 2>> <<set $day_name ='Вт'>> <<endif>> <<If $week == 3>> <<set $day_name ='Ср'>> <<endif>> <<If $week == 4>> <<set $day_name ='Чт'>> <<endif>> <<If $week == 5>> <<set $day_name ='Пт'>> <<endif>> <<If $week == 6>> <<set $day_name ='Сб'>> <<endif>> <<If $week == 7>> <<set $day_name ='Вс'>> <<endif>> <<If $month == 1>> <<set $month_name = 'января'>> <<endif>> <<If $month == 2>> <<set $month_name = 'февраля'>> <<endif>> <<If $month == 3>> <<set $month_name = 'марта'>> <<endif>> <<If $month == 4>> <<set $month_name = 'апреля'>> <<endif>> <<If $month == 5>> <<set $month_name = 'мая'>> <<endif>> <<If $month == 6>> <<set $month_name = 'июня'>> <<endif>> <<If $month == 7>> <<set $month_name = 'июля'>> <<endif>> <<If $month == 8>> <<set $month_name = 'августа'>> <<endif>> <<If $month == 9>> <<set $month_name = 'сентября'>> <<endif>> <<If $month == 10>> <<set $month_name = 'октября'>> <<endif>> <<If $month == 11>> <<set $month_name = 'ноября'>> <<endif>> <<If $month == 12>> <<set $month_name = 'декабря'>> <<endif>> <<if $hour lt 10>> <<set $nullh=0>><<endif>> <<if $hour gte 10>> <<set $nullh=''>><<endif>> <<if $minut lt 10>> <<set $nullm=0>><<endif>> <<if $minut gte 10>> <<set $nullm=''>><<endif>>
Вывод можно оформить самим как угодно.
Пример:
<<print $nullh>><<print $hour>>:<<print $nullm>><<print $minut>> <<print $day_name>>. <<print $day>> <<print $month_name>> <<print $year>>г.
Конечно не забыть задать стартовые параметры
:: s_c <<set $minut = 20>> <<set $hour = 23>> <<set $day = 27>> <<set $week = 4>> <<set $month = 2>> <<set $year = 1700>>
и подключить
<<display 'time'>>
Отредактировано cd3snake (20.01.2016 19:01)
Неактивен
По работе календаря
С циклом 10 можно передавать
minut = minut + 600
hour = hour + 240
Если передавать больше, ломается, можно получить - nn часов и nnn минут.
Того что есть, более чем достаточно, кому мало, можно увеличить n раз выполнение цикла.
Более 100 делать не рекомендую, начинаются притормаживания.
Можно даже оптимизировать цикл часов. Не вижу смысла в передачи количества часов > 2ух суток.
Так же можно передавать day, не забыв так же прибавить week. И т.д.
Отредактировано cd3snake (22.01.2016 10:20)
Неактивен
Причесал не много. теперь в минутах, неделя спокойно переваривается
<<loop $minut.toString()*10>> <<if $minut gte 60>> <<set $hour = $hour + 1>> <<set $minut = $minut - 60>> <<endif>> <<endloop>> <<loop $hour.toString()*10>> <<if $hour gte 24>> <<set $day = $day + 1>> <<set $hour = $hour - 24>> <<set $week = $week + 1>> <<endif>> <<endloop>> <<If $week gt 7 >> <<set $week = $week - 7>> <<endif>> ############ <<if ($month eq 1) or ($month eq 3) or ($month eq 5) or ($month eq 7) or ($month eq 8) or ($month eq 10) or ($month eq 12)>> <<if $day gt 31>> <<set $day = $day - 31>> <<set $month = $month + 1>> <<endif>> <<endif>> ############ <<if ($month eq 4) or ($month eq 6) or ($month eq 9) or ($month eq 11)>> <<if $day gt 30>> <<set $day = $day - 30>> <<set $month = $month + 1>> <<endif>> <<endif>> ############ <<if $month eq 2 and $year%4 eq 0>> <<if $day gt 29>> <<set $day = $day - 29>> <<set $month = $month + 1>> <<endif>> <<endif>> <<if $month eq 2 and $year%4 neq 0>> <<if $day gt 28>> <<set $day = $day - 28>> <<set $month = $month + 1>> <<endif>> <<endif>> ######### <<if $month gt 12>> <<set $year = $year + 1>> <<set $month = $month - 12>> <<endif>> ######### <<If $week == 1>> <<set $day_name ='Пн'>> <<endif>> <<If $week == 2>> <<set $day_name ='Вт'>> <<endif>> <<If $week == 3>> <<set $day_name ='Ср'>> <<endif>> <<If $week == 4>> <<set $day_name ='Чт'>> <<endif>> <<If $week == 5>> <<set $day_name ='Пт'>> <<endif>> <<If $week == 6>> <<set $day_name ='Сб'>> <<endif>> <<If $week == 7>> <<set $day_name ='Вс'>> <<endif>> <<If $month == 1>> <<set $month_name = 'января'>> <<endif>> <<If $month == 2>> <<set $month_name = 'февраля'>> <<endif>> <<If $month == 3>> <<set $month_name = 'марта'>> <<endif>> <<If $month == 4>> <<set $month_name = 'апреля'>> <<endif>> <<If $month == 5>> <<set $month_name = 'мая'>> <<endif>> <<If $month == 6>> <<set $month_name = 'июня'>> <<endif>> <<If $month == 7>> <<set $month_name = 'июля'>> <<endif>> <<If $month == 8>> <<set $month_name = 'августа'>> <<endif>> <<If $month == 9>> <<set $month_name = 'сентября'>> <<endif>> <<If $month == 10>> <<set $month_name = 'октября'>> <<endif>> <<If $month == 11>> <<set $month_name = 'ноября'>> <<endif>> <<If $month == 12>> <<set $month_name = 'декабря'>> <<endif>> ######### <<if $hour lt 10>><<set $nullh=0>><<else>><<set $nullh=''>><<endif>> <<if $minut lt 10>><<set $nullm=0>><<else>><<set $nullm=''>><<endif>>
Неактивен