swg2you
Пользователи-
Публикации
219 -
Зарегистрирован
-
Посещение
-
Победитель дней
20
Тип публикации
Блоги
Профили
Форум
Багтрекер
Магазин
Все публикации пользователя swg2you
-
Разделить строку на символы - русский текст
swg2you ответил в вопрос bob558 в Разные (отсортировать)
В unicode есть gmatch? о_О -
Разделить строку на символы - русский текст
swg2you ответил в вопрос bob558 в Разные (отсортировать)
... s = 'С Новым Годом" for i = 1, unicode.len(s) do print( unicode.sub(s, i, i) ) end ... http://ocdoc.cil.li/api:unicode http://www.lua.org/manual/5.2/manual.html#6.4- 4 ответа
-
- 2
-
-
1. код elseif(type(v) == "function") then error("value in function.") end должен выглядеть else error("unsupported type of value") end в луа есть еще парочка типов отличных от булей чисел и строк. 2. Типы ключей тоже нужно проверять. Насколько я помню, ключем в луа может выступать любой тип кроме нила и нана. 3. Не совсем понятно где может понадобиться такая сериализация.
-
Оставлю это здесь: https://en.wikipedia.org/wiki/ASCII_art https://en.wikipedia.org/wiki/ANSI_art https://en.wikipedia.org/wiki/AAlib http://ansilove.sourceforge.net/examples.html http://sixteencolors.net/ P.S. ANSI запилите, велосипедисты. Тонны арта же за пару десятилетий скопилось. upd (aalib умеет не только картинки):
- 21 ответ
-
- 1
-
-
Правильно думал, я вообще с программированием уже давно наигрался. Сейчас играюсь проектируя лазерный гравер, уже вторую модификацию выпускаем. А в кодирование меня ЛУА потянул(-а, -о). Концепция языка, красивая, зараза, вызвала довольно длительный рецидив. Пришлось, скрипя мозгами, погружаться в ночные медитации Да и приятно было тряхнуть стариной, и с себе подобными пообщаться.
-
Ноп. Коротко говоря, - Это не баг это фича! Это не странное, а более чем нормальное поведение ЛУА. Это поведение "оператора пакетного присваивания" освещено в официальной документации, но такое поведение "пакетного присваивания" порождает некоторые не совсем очевидные моменты, которые я, обозвав "забавными", и счел нужным запостить в отдельную тему. С образовательной целью, так сказать. Чтобы те, кто этой фичи не знает, могли поразмышлять над примерчиком, понять почему так происходить и уяснить для себя правило ЛУА, "Пакет только в конце". Ну и чтобы потрындеть над забавностями столь чудесного языка, чего уж там греха таить.
-
Орехи грецкие кушай ты. Йода много в них есть.
-
И еще один примерчик по теме: function ret123() return 1, 2, 3 end f, g, h, i = 0, ret123() print(f,g,h,i) --> 0 1 2 3 f, g, h, i = ret123(), 4 print(f,g,h,i) --> 1 4 nil nil
-
Реализация собственного варианта протокола передачи файлов, да еще и монтированием удаленной файловой системы - хорошая задача. Второй этап - реализация клиента совместимого с общепринятым протоколом FTP? Было бы круто.
-
Сотни нефти тому, кто реализует XMPP на СС, ну или хотя-бы простенький клиент чтоб к жабке подключаться. )
-
print("10%") ... print("100%") А зачем имитация прогресса? о_О Лучше уж, выводить диагностическое "lock downloaded" И как верно подметил AlexCC, инсталлятор это круто, но ссылки на код нужны тоже. Синтаксис Lua разрешает вызов функции без указания скобок, если аргумент это конструктор таблиц или строка. Т.е. вместо f ({1,2,3}) и f ("text") можно писать f {1,2,3} и f "text". Чтоб не плодить лишних скобочек. Подробнее смотри п.3.4.9 официальной документации.
-
Тьюрмит идет к станции и крафтит там свою детку, а в конце армия тьюрмитов зохавает весь сервер. Даешь машинный апокалипсис! )
- 9 ответов
-
- opencomputers
- муравей лэнгтона
- (и ещё 3 )
-
Таблица и код вроде верные. При записи цвета 0xRRGGBB в монитор, значение 0xRRGGBB приводится к сокращенной палитре, реальное значение записанного цвета можно посмотреть вычитав знакоместо с помощью gpu.get. Т.е. если мы сделаем: gpu.setForeground(0x123456) gpu.set(5,5,' ') local s, fg, bg = gpu.get(5,5) То в fg мы получим вовсе не 0x123456, а приведенное значение. Алгоритм приведения неизвестен, но приведенные значения наиболее близки к палитре 6*8*5+16. Попробуй в sicot.lua покликать по битам меняя цвет, а потом кликнув на цвет посмотреть реальное значение приведенного цвета, чтобы узнать, какие именно цвета выводятся сверх палитры. В палитре Тир2 я находил аномальный 17-й цвет, возможно такие цвета есть и в Тир3. ЗЫ Реальные значения цветов могут немного отличаться от сгенерированных по формуле, это сделано для упрощения формулы генерации. Визуальных отличий быть не должно.
-
OC, для мониторов тир3, юзает стандартную программную 8-битную палитру 6*8*5+16 Внутри кода sicot.lua есть простая формула генерации, и комментарии по безопасной палитре.
-
Концепция которую я описал рассчитана именно на многопользовательскую "игру". 1 сервер - депозитарий, на котором реализовано мат. обеспечение "биржи". Несколько "информационных терминалов" для отображения общего состояния "биржи", котировок, сделок, и т.п. И множество "торговых терминалов" которые собственно и используются игроками для игры на бирже. Причем, если протокол обмена продумать тщательно, то можно организовать даже межсерверное взаимодействие через "интернет" карты, и подтянуть "брокеров" с других проектов.
-
Идеологи, вы для начала определитесь какими фондами будет торговать биржа, тогда и формат проявится. В качестве гипотетических внутриигровых фондов могут выступать: владение "землёй" определенными чанками, разрешение на рудную разработку чанков, разрешение на торговлю рудами, разрешение на торговлю изделиями, разрешение на постройку перерабатывающих предприятий эксплуатация таких предприятий, и т.п. Но такая тема годится скорее для специализированного сервера с "экономическим уклоном". Для "програмерского" сервера лучше подойдет написание симулятора биржевых торгов, где будет торг виртуальных заводов-газет-пароходов, тугриков и прочих абстракций. В этом случае и администрацию беспокоить не нужно, и задача менее экономическая и более программистская. Определить алгоритм колебаний "цены" торгуемых абстракций. Выделить отдельный комп под депозитарий. Определить протокол работы с депозитарием. Написать депозитарий. Написать информационный терминал. Написать торговый терминал. 1-й пункт самый сложный. Можно конечно тупо рандомную цену и бесконечный объем предложений/спроса. Но это, извините, симулятор рулетки, а не биржи. Более "биржевой" вариант, когда амплитуды случайных флуктуаций объемов спроса и объемов предложения обратно пропорциональны частотам, а цена формируется косвенно из соотношений объемов спрос/предложение. Проще говоря, спрос и предложения постоянно немного колебаются, изредка случаются большие скачки, а очень редко наступает "большой переполох" и "паника на бирже". Чем выше амплитуда скачка, тем реже он случается, а в качестве коэфициентов "случания" и "уровня паники/колебаний"- Великий Рандом. Действия игроков с депозитарием должны суммироваться с текущим состоянием биржи влияя на следующее состояние. Т.е. размещение игроком предложения или спроса - приведет к изменению соотношения спрос/предложение и качнет цены. Симулятор должен выступать в роли тысяч виртуальных игроков. Так, чтобы передавить его и взять под контроль биржевые колебания было очень сложно.
-
Улыбнули алгоритмы круга и кольца. function es.create_circle(rad) local model={} for x=-rad,rad do for y=-rad,rad do if math.sqrt(x^2+y^2)<=rad then table.insert(model,{x,y}) end end end return model end function es.create_ring(rad) local model={} for x=-rad,rad do for y=-rad,rad do if math.ceil(math.sqrt(x^2+y^2))==rad then table.insert(model,{x,y}) end end end return model end Я оставлю это здесь: Алгоритмы Брезенхэма.
-
Ну здравствуй Forex@openComputers
-
Если мне нужен какой-нибудь смс-шлюз для АСУ, я подключаю какой-нибудь GSM-модем к компьютеру с АСУ ) Тот-же siemens mc-35i умеет и СМС и факс, а если голосовой разъем закинуть на вход/выход звуковой карты - то и голос умеет, еще и с интернетом по gprs, вполне достаточным для мониторинга состояния объекта. Еще проще, когда свободно-программируемый контроллер умеет АТ-команды по RS-232. Тогда и компьютера никакого не нужно. Научить контроллер, при аварийке, АТ-командой СМС-ить через модем - как два пальца.
-
Библиотека шикарна. Дает возможность строить полнофункциональные промышленные системы управления. Сеть контроллеров на bios-net, управляемая центральным узлом + эта библиотека = современная промышленная АСУ. irl, автоматика viessmann для котелен работает по такой же схеме. + там еще выход за уставки и аварийные ситуации через шлюз СМС-ятся на телефон диспетчера, и отчеты по факсу можно отправлять. Для полного фарша только SCADA с каким-то modbus-ом не хватает.
-
Мы вовсе не дикий народ, и это не от нехватки мозгов. Мозгов полно везде, и очень даже светлых. Просто у нас много поколений вытравливали элементарное самоуважение, в результате презрение к своему и любовь к заморскому. Принцип жизни, - Импортное лучше, - кажется еще с Петра первого начался и, к сожалению, продолжается по сей день. ... Я еще застал в школе преподавание алгоритмического языка по Ершову. Со своими "пока" "нц" и "кц".
- 17 ответов
-
- 1
-
-
- Удалённое
- Управление
- (и ещё 4 )
-
мета- из греческого "рядом с" перекочевало как приставка в английский и русский, и укоренилось в узких значениях: на другом уровне, выше, ниже, после, между. Мета-фора, мета-язык, мета-физика, и т.п. А насчет распространенности это да. Мы любим кальку. Большая часть слов в современном Русском - заимствованы.
- 20 ответов
-
Тут как раз "метатаблица" и есть неблагозвучный калькированный с английского неологизм. Если бы документацию писали, а не переводили, то термин скорее всего был бы "суб-таблица" или составной, но более точный по сути "таблица операторов". А в случае с __index и __newindex было бы оговорено, что в качестве таблицы операторных методов может выступать обычная таблица индексов-значений. ЗЫ "метаметод" - тоже, еще та корявость ) мета-метод это как?
- 20 ответов
-
Шутишь? --- Ме-та-та-бли-бли-бли-цы - уж-жасное название. Еще ужаснее конструкции вида: Прочитал, теперь заикаюсь. Материал хорош, и грамотен, но та-та-та-блицы с ме-ме-ме-та-методами нужно подавать проще и другими словами.
- 20 ответов
