TWIFcomp -- это новый конкурс для очень коротких работ IF. На сколько короткий? Максимум 140 символов, как сообщения Twitter.
Полные инструкции приводятся на английском языке на http://blog.templaro.com/?page_id=118
Краткое изложение следует:
Правила
• Авторы должны представить свои игры по 25 апреля в 16:00 GMT
• Игры будут размещены на моем блоге (blog.templaro.com) в тот же день.
• Голосование продолжится до 1 мая в 16:00 GMT
• Результаты будут объявлены через Twitter (@ dhakajack) 2 мая в 1600 (и для тех, кто не справится с Твиттером, на блоге в 22:00 GMT)
• Язык: русский, английский, клингонский, квенья ... на ваш выбор
• Язык программирования: Информ, TADS, ADRIFT, Python, Haskell, опять же на ваш выбор
• Подача: Отправить на адрес dhakajack {@} gmail {пункт} com следующее - 1) ваше имя, 2) название игры, 3) краткое описание игры и/или инструкцию, 4) саму игру, 5) исходный код, 6) название системы, по которому игра была написана (например Inform6).
• При расчете длины игры, не включайте пробелы, символов табуляции и возврата каретки/перевод строки. Все другие символы идут в расчет, в том числе знаки препинания.
• Отправить по электронной почте голосов по шкале от 1 (ужасно) до 10 (идеально)
• Авторы могут голосовать, но не на свои собственные игры.
Призы:
1) рулон армированной благостойкой клейкой ленты,
2) пакет лапши рамэн,
3) удачливая игра в кости
4) карта покемон.
Удачи,
Джек
Неактивен
Dark[Ol(U23)leneri] написал:
Народ, я бы попросил прикладывать к каждому коду "логическое объяснение". А то я нифига не допер, что вы сделали. Понял, что сократили код за счет переходов через новую локацию, где идет воспроизведение/остановка.
А вот $m+=$args для меня вообще непонятно)
В традиционных ЯП локацию 2 назвали бы подпрограммой (процедурой, функцией). "gs 2,1 " означает "Вызвать подпрограмму 2 с параметром 1. А в этой подпрограмме (локации 2) переданый параметр обозначается служебным словом args. Вернее, это целый массив, потому что параметров может быть несколько: args[0],args[1],args[2]...Но если параметр всего один, то к нему можно обратиться просто args.
А тут еще сокращение для присваивания с операцией: x+=y - сокращение для x=x+y
Поэтому $m+=str args раскрывается в $m= $m + str (args) и означает "Присоединить переданный параметр к строке $m".
Функция str нужна чтобы превратить число в строку. (Байт, она действительно нужна? Вроде число в строку само превращается по мере необходимости).
Отредактировано Feuerbart (18.06.2010 21:53)
Неактивен
Еще немного сократить код можно, если перейти от строкового кодирования траектории к числовому. Конечно, при этом нужно переименовать звуковые файлы. Например, вместо aabab.wav файл должен называться 21.wav
#1 gs 2,1 act 1:gs 2 act 2:gs 2,1 - #2 close m+=m+args play m+'.wav' -
Неактивен