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

Fingercomp

Гуру
  • Публикации

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

  • Посещение

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

    283

Сообщения, опубликованные пользователем Fingercomp


  1. Ты так и не научился код правильно и читабельно писать. Подправил ОП, поставил отступы в 2 пробела (!!!), а не в 4 (ты не на Си кодить пришёл), поставил нормально конструкцию if/then(/else)/end, сделал место с кодом красивым. Учись:

    if yourConditionGoesHere then
      -- 2 отступа, ДВА! И не лепи в одну строку!
    else
      -- Тут то же самое.
    end
    

  2. Идей по такому АПИ у меня лично всего три.

     

    I.

    Делается специальный сервачок, обрабатывающий запросы на операции со счётом. Но просто так подключиться к нему нельзя — каждый, желающий получить возможность оперировать со счетами, должен получить что-то вроде... ключа?.. Это "ключ" — ID программы, который показывает, какие операции можно осуществить (просто ли прочитать там, или же вносить изменения дополнительно). Что-то типа такого:

    api, perms=bank.auth("134jlrhaklsjdhfgq3u4ihliaduhfovjaenbi4ultbgfkasdnfv")

     

    II.

    Опять-таки сервак, но с другим принципом. Нужен ключ, но теперь уже от пользователя и одноразовый. Пользователь решает, доверять ли программе, или же слать её к пигзомбям на разрубание. Допустим, у пользователя будет набор ключей: на чтение и на запись.

    key=io.read()

    api, perms=bank.getAccount(key)

     

    III: наиболее сложный и оптимальный, как мне кажется.

    Комбинировать вышеперечисленные методы.

    key=io.read()

    api, perms=bank.auth(dev_key)

    account, perms = api.getAccount(key)


  3. Как именно? Пример будет? Ждем.

    Достаточно написать функцию-обработчик, типа этого:

     

    if _tsrmail then
      print('TSR Mail is already running!')
      return
    end
    local cp=require'computer'
    local com=require'component'
    local m=com.modem
    local port=9
    m.open(port)
    function onModemMessageOrKey(eventName, receiverAddr, sender, port, distance, msg)
      if eventName=='modem_message' then
        local h = io.open('/@','a')    
        h:write('--'..os.date()..' From:'..sender..'\n'..table.concat({table.unpack(msg)},'\n'))
        h:close()
        beep=1
      elseif eventName=='key_down' then
        beep=0
      elseif beep>0 then
        cp.beep(440)
      end
      beep=-beep
    end
    
    event.listen('modem_message',onModemMessageOrKey)
    event.listen('key_down',onModemMessageOrKey)
    
    print('TSR Mail has started!')
    _G._tsrmail=port
    

  4. Это мелочи, мы всегда можем написать

    local function listmsg(...)
      print(...)
    end
    event.listen("modem_message", listmsg)
    Главное суметь заставить работать это в фоне. Ждем LeshaInc, чтоб объяснил как это сделать.

     

    т.е. этот код выполнится, оставит слушателя работать, а я смогу тем временем запускать другие программы?

     

    listen слушает "эфир" и выполняет данную функцию при возникновения события данного, опять же. Листенер со всем его содержимым хранятся отдельно от запускаемой программы, и события обрабатываются в фоне. Для удаления листенера необходимо в той же программе вызывать event.ignore(event, func), иначе события будут продолжать обрабатываться даже после завершения программы.


  5. Разве OpenCloud не заменит функции ftp?

    Какой OpenCloud?? Во-первых, вы его никогда, похоже, не допишете.

    Во-вторых, не путай FTP с облаком. Это две разные вещи!

    В первом случае — это резидентная программа, а во втором — интерфес мост — сервер.


  6. Все идёт к тому что я собираюсь открыть проект MNL (MNL's Not Linux), копию ядра линукс, только под Lua Opencomputers и со своим преферансом и мормуазелями.

     

    И писать на биосе по мне --- тупиковая ветвь развития. Все упрется в то, что ты достигнет лимита.

    Открыть и забыть. Интересное решение.

     

     

    Неплохо, но похоже, я догадываюсь к чему это всё идет. Еще немного и swg2you напишет свою ось. Ось для Биосов.

    А что, слабо написать ось на 4к памяти?

    ОСь загруженная в темпе из инета (и/или по ОпенНет) и запускаемая из-под биоса... Интересно)


  7. Большинство уже забыло про такую крутую штуку, как OpenNet, но только не я. Он должен жить! И он будет жить!
    В общем, приятные новости из дата-центра: поднят и сконфигурирован первый Web-сервер на новом ИТ, доступный по адресу dcweb. Добавил с десяток страничек, между которыми можно переключаться. И, как вишенка на тортике, можно скачать первый файл с сервера. Серфите, в общем))
     
    Ах да, скрины.

     

     

    ya1iX8s.png

    xgbuyqe.png

     

     

     

    Кстати, для ленивых: в западной части ДЦ, у входа, поставил комп с вечно открытым браузером

    • Нравится 5

  8. Автор проги — молодец! Эмулятор работает под Вином без малейших намёков на лаги! Для обладатей счастливого пингвина — установите новейший Wine 1.7 и Winetricks, выберите дефолтный вайнпрефикс и поставьте vcrun2008. После этого будет достаточно wine path/to/OC/Emulator/OCEmulator.exe, дабы запустить эмулятор.

    B1sT8dO.png

     

    UPD1. Но, если нажать на клавишу с цифрой в осн. части или же любую клавишу в русской раскладке, пишется английский вариант с шифтом и русский нормальный, а в случае с цифрами — или дублируется, или пишется знак и цифра при нажатии с Шифтом. Неудобненько.

    UPD2. Это из-за переключения воркспейсов и залипания [Ctrl], [Alt]. Просто нажмите их ещё раз в приложении.


  9. Ага, немного весит... То есть 3.5 гига памяти съедаемой только во время загрузки, UE API, тонна багов и дюпов, кривые машины, гриф-тулзы — это ерунда, которой пренебречь можно? D: Не знал...

     

    Меня особенно пугает UE API. Это самое кривое АПИ за всю историю Майна. У его автора руки явно не оттуда растут.

     

    (Но мод прикольный, чисто по задумке. Хотя и гемОра много)

    • Нравится 1

  10. Класс! Только меня смутила переменная robAddr...Почему бы не просто computer.address?

    Сколько повторять нужно об удалении картинок в цитатах?

    robAddr -- это адрес модема робота, а owner -- адрес модема компа. Они нужны, чтобы робот и комп обменивались сообщениями только друг с другом, потому что я не могу в аутентификацию :(

    А связанная карта чем тебя не устраивает?

×
×
  • Создать...