Перейти к содержимому

NEO

Пользователи
  • Публикации

    1 436
  • Зарегистрирован

  • Посещение

  • Победитель дней

    78

Все публикации пользователя NEO

  1. Здравствуйте уважаемые жильцы форума и не только! Буду краток, не так давно пришла идея создания графического редактора для работы с изображениями под ОС, уже есть наработки, https://github.com/Avaja/OCPaint, как всегда хочу подключить луа для удобного написания форматера, тобишь, в скрипт передаются данные изображения, а уже в скрипте они преобразуются в поток байт сохраняемый в файл, таким образом можно будет писать пользовательские скрипты. http://i.imgur.com/c5KtqqU.png Пока всё выглядит бедненько, но постараюсь наполнить функционалом. Уже есть такие фичи. - Рисование пикселей. - Рисование символов. - Смена цвета. - Смена инструментов. - Ластик. - Файл конфигурации. - Автоматическое обновление скриптов с гитхаба. Можно скачать! https://github.com/Avaja/OCPaint/releases/tag/0.1-alpha LuaApi! http://pastebin.com/RrzgJNrq Пиксели лежат строками не столбцами. Тут я буду промежуточные скомпилированный проект держать которые на гитхаб не попадут в релизы. https://www.dropbox.com/sh/rpjioshlrdc5i7h/AAB5jkhhqVxOsJZiBbEXFtpKa?dl=0 Все баги и фичи слать сюда -> https://github.com/Avaja/OCPaint/issues
  2. Автор твердит что ОС, мне кажется ему виднее.
  3. Почему - же блоки в воздухе висят...
  4. debug.sethook(hook, '', 100), будет каждые 100 инструкции, можно написать миллион инструкции в строке.
  5. Там стэк машина, читай lua С api, всё просто. https://www.lua.org/manual/5.1/manual.html методы начинаются на lua_ LuaState* L; lua_pushinteger(L, 999); lua_setglobal(L, "var"); Таким образом теперь есть глобальная переменная по имени var со значением 999. Всё работает по принципу стэка, ты пушаешь туда что - то, а уже функциями работаешь с верхушки.
  6. Где - то была тема Используй аннотацию Callback, есть аргумент doc, ему присваивается дока или модифицируй require.
  7. Это определяется в моде. Можно переписать require так что бы он доки находил и выводил. Где - то была тема на форуме.
  8. function hook() coroutine.yield() end debug.sethook(hook, 100) Каждые 100 инструкции будет вызываться coroutine.yield. в OC таким образом реализована защита от while true do и большой нагрузки цп.
  9. Я писал специальный пакетный обработчик, регистрируешь пакет, определяешь в нём функции toBytes, fromBytes, в теле пакета реализуешь код который превращает байты в данные и наоборот, также функция handle которая принимает готовый пакет, структура пакета, 2 байта = длина пакета, 1 байт id пакета(количество байт зависит от количества id, 256 разных пакетов думаю хватит) , данные которые пойдут в fromBytes функцию. Тут желательно принцип ООП применять, в toBytes и fromBytes нужно передавать готовый буфер имеющий методы для конвертации из байт в данные и наоборот. debug.sethook, ей можно регулировать такие вещи.
  10. Мы здесь все коряво пишем, русский вообще не родной мне язык. Я еще хорошо пишу, а другие в моей местности, страх и ужас. сечас.
  11. Сдвиг - это деление и умножение на два, грубо говоря.
  12. Вот людях лень даже загуглить даже не формулу, а деление в столбик с остатком, как им не лень по клавишам стучать да и вообще думать, программирование - это все таки числа и операции с ними. А не ксс и хтмл и арифметика не нужна. Я хачу сделать дота2 на паскаль.
  13. Это уже наглость, человек просит помочь в решении задачи, ты молодец, решил, но и другим дай. Я здесь не видел слов, "дайте готовую библиотеку".
  14. Комментарии не просто так придуманы. Они и есть документация.
  15. Так, если уже начали тут кодить и я поделюсь своим проектом, OpenComputers Global Emulator - сокращённо OpenCGE, язык программирования - Java, Графическая часть - JavaFX, луа машина - LuaJ. https://github.com/Avaja/OpenCGE Гитхаб, кому интересно, присоединяйтесь, вы спросите зачем еще один эмулятор? Я вам отвечаю заранее, мне интересна глобальная сеть, а именно в будущем подключение к серверу и глобальный хакинг один одного.
×
×
  • Создать...