Totoro
Гуру-
Публикации
1 950 -
Зарегистрирован
-
Посещение
-
Победитель дней
289
Тип публикации
Блоги
Профили
Форум
Багтрекер
Магазин
Все публикации пользователя Totoro
-
Любопытная штука, но числа в памяти и так лежат в двоичном формате. Если надо произвести какую-то операцию с помощью bit32 - ничего никуда конвертировать не надо. Ну а если стоит задача вывести число на консоль в двоичном виде - то в Луа перевод чисел из систему в систему делается точно так же как и в любом другом языке, или даже просто в математике.
-
Он виноват в том, что в посте каша в форматировании. Сейчас хоть тег "код" поставил. А сначала вообще жесть была. Про кастомный шрифт и нафиг не нужный серый фон я уже не говорю.
-
Так выложи. Заодно глянем на твой код, и дадим советов бесплатно. P.S. Ты не можешь знать либу наизусть - т.к. не знаешь Луа. Что изменять что-то надо знать не только как этим пользоваться, но и как оно работает внутри.
-
4) http://minecraft-ru.gamepedia.com/OpenComputers/%D0%9A%D1%80%D0%B0%D1%81%D0%BD%D0%B0%D1%8F_%D0%BF%D0%BB%D0%B0%D1%82%D0%B0 5) Для того, чтобы сделать это, тебе надо разобраться как работает библиотека GUI, разобраться с выводом картинок в ОС (для этого придётся всётаки собраться и вооружиться Гуглом - и не говори что там нету - там есть даже в нескольких местах). А вообще все эти вопросы дааааалеко за пределами твоих знаний по Луа. Это всё равно как если бы ты вервые в жизни увидел отвёртку и начал спрашивать: 1) Как мне собрать автомобиль с нуля (пожалуйста инструкции с подробными комментариями) 2) Чем отличается плоская отвертка от крестовой? Мне рассказывали, что я не смогу ничего собрать, если не буду пользоваться крестовой отвёрткой. 3) Как мне писать в чат не через интернет, а радиопередатчиком, используя отвёртку? и т.п. Напиши для начала что-нибудь простое. Например программу для угадывания чисел. В бесконечном цикле задаётся вопрос - какое число загадала программа. Игрок вводит ответы, а игра отвечает - "больше" или "меньше". Если угадал - загадывается новое число. И так далее. Только напиши её сам. Все ответы есть в интернете.
-
Как реализовать ввод переменных в программу?
Totoro ответил в вопрос AndreySHAP в Разные (отсортировать)
Задавай. Оформи тему, и там, в пронумерованном виде вываливай свою кучу вопросов. Но перед этим, да. Погугли. 99% ответов находится после первого же запроса по теме. -
Как реализовать ввод переменных в программу?
Totoro ответил в вопрос AndreySHAP в Разные (отсортировать)
Изначально заголовок был "Очень тупой вопрос!". Это Алекс поправил уже -
Love2D - как и любой другой game framework - это внешняя библиотека. Язык в данном случае - Lua (самый что ни на есть обычный). Хотя формально ты может быть и прав. Тут довольно размыто определение того, что считать самостоятельным языком.
-
Это понятно. Я имел ввиду, что смысл конкурса - запилить парсинг картинки. И юзать для этого внешнии либы нельзя, конечно. Потому что в них эта задача уже решена за тебя. Но подход креативный. =)
-
Под условия попадает не совсем (PNG, внешняя либа). Но интересный вариант
-
Алекс, вот чем тебе IRC не нравится? РК у меня не идёт, Мамбла у Фингера, а у форумного чата нет нормального протокола. IRC идёт везде и на всём, даже на холодильниках. Очень удобно. А конкурс вообще-то для форумчан. И он тут на форуме - в теме и блого-посте - описан. Страничка отдельная - типа флаера, листовки. Там кастомный дизайн. Я не стал дублировать инфу, просто создал тему чтобы постить решения. Можно и на форум это всё залить, в принципе. По стилю - это конкурс типа того же 10 Hello world!, только более сложный и развёрнутый. *facepalm*
-
Как реализовать ввод переменных в программу?
Totoro ответил в вопрос AndreySHAP в Разные (отсортировать)
Я так понял, что он не разбирается в Луа, но пытается разобраться. Поэтому дал пример того, как это всё работает. Но если ему нужно что-то конкретное, то топик на ТЗ не тянет. Нужны детали. -
Нео, для кого в шапке написано - "Обсуждаем в чате или в IRC, чтобы не захламлять тему." ? Ты мог вместо этого своего "плюс один" - просто лайк Лёхе поставить. Репа бы апнулась и тема бы не захламлялась.
-
Как реализовать ввод переменных в программу?
Totoro ответил в вопрос AndreySHAP в Разные (отсортировать)
Дима. Очень приятно. =) Но да ты прав, надо двоеточие. Это я отвык от Луа уже немного. -
Как реализовать ввод переменных в программу?
Totoro ответил в вопрос AndreySHAP в Разные (отсортировать)
local a = io.read() print(a) Функция read() из модуля io читает данные и возвращает их. Они сохраняются в локальную переменную a. А потом функцией print выводятся обратно на консоль. Команду print(x) можно заменить на io.write(x). Пример можно дополнить разным полезным выводом информации: print("Кошелёк или жизнь?") local answer = io.read() print("Ты выбрал " .. answer) -
У нас тут новый мини-конкурс. Ну вы наверное знаете. (Если не знаете - забегите к Фингеру в блог, почитайте, и присоединяйтесь к веселью. ) Смысл такой, в двух словах: есть картинка, надо её распарсить и нарисовать ascii-символами в консоль. Можно юзать абсолютно любой язык программирования. При этом надо постараться сделать свой код как можно короче. Ну, в общем читайте точные правила у Фингера. В эту тему можно постить свои решения. Только оформляйте исходники в теги "code". Обсуждаем в чате или в IRC, чтобы не захламлять тему. На задачку даётся неделя времени. Но она лёгкая, так что я посидел вечером и написал, для почину, свой вариант. Язык: Scala 2.11.8 (Java >= 7) Вес (по минимуму): 620 байт Полный код (в читабельном виде): import java.nio.file.{Files, Paths} import java.nio.{ByteBuffer, ByteOrder} object BumpGold extends App { def word(array: Array[Byte], offset: Int) = ByteBuffer.wrap(array, offset, 4).order(ByteOrder.LITTLE_ENDIAN).getInt val array = Files.readAllBytes(Paths.get(args(0))) val offset = word(array, 10) val width = word(array, 18) println( (for(i <- offset until array.length by width*4) yield array.slice(i, i+width*4).map(_ & 0xFF).grouped(4) .foldLeft("")((a, b) => a + ((b(0), b(1), b(2), b(3)) match { case (_, _, _, a) if a <= 0 => " " case (r, g, b, _) if r < 51 && g < 51 && b < 51 => "█" case (r, g, b, _) if r < 102 && g < 102 && b < 102 => "▓" case (r, g, b, _) if r < 154 && g < 154 && b < 154 => "▒" case (r, g, b, _) if r < 205 && g < 205 && b < 205 => "░" case _ => "·" })) ).reverse.mkString("\n") ) } Прогон с тестовой картинкой (16 на 16): Ещё одна картинка: http://i.imgur.com/Hp0EBs7.png Минифицированный код: http://pastebin.com/27fntVdz Кто рискнёт побить мой рекорд?
-
Функции и значения, которые они возвращают
Totoro ответил в вопрос Zer0Galaxy в Разные (отсортировать)
Гм. Справедливо. Надо протестить. -
Ага ага. А что будет если FPS просядет? Персонаж будет бегать медленнее. Автомобиль в гонке тоже поедет медленнее. Найс, да? Вместо того, чтобы продолжить движение с той же скоростью, но снизить частоту кадров, снизится скорость движения всего в игре.
-
Функции и значения, которые они возвращают
Totoro ответил в вопрос Zer0Galaxy в Разные (отсортировать)
Ну, в программах надо экономить не символы. А функцию юзать или таблицу - зависит от контекста. Например такая реализация как у Алекса (через функцию) обладает свойством ленивости. То есть эта таблица не будет занимать память, ровно до того момента, когда она понадобится где-то в коде. А если не понадобится - то вообще места не займёт. -
Потому что, как заметил Лёха, без дельта тайминга скорость игры становится зависимой от железа, размера окна и т.п. Кому охото, чтобы кто-то ставил рекорд круче, только потому что у него процессор чуть быстрее? Это ведь не состязание железа, а состязание игроков должно быть.
