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

Fingercomp

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

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

  • Посещение

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

    283

Комментарии блога, опубликованные пользователем Fingercomp


  1. Запустил робота с этой программой и еле еле нашел его потом. Если бы не реактивный ранец потерялся бы - чанклоадер был установлен. Хотя указал роботу в начале 100 10 true, копал вертикальные шахты с самого низа и до самого верха, в последствии перемещаясь на несколько блоков в сторону, для того, чтобы сделать еще несколько вертикальных шахт. И все эти ходы  в переплетении естественных пещер.

     

    Могут другие моды влиять на копку робота, к примеру tinkers construct?

    Маловероятно. Тут проблема сравнения блока в инве робота и блока перед роботом.


  2. Пойду на гитхаб, заберу исходники новой ОСи и буду продавать ленивым, за один алмазик.

     

    О, неужели добавили все таки plan9k OS, это огромная штука :)

     

    Повезет тому, кто найдет :)

    А OPPM => MPT => Plan9k OS уже вообще не вариант?)


  3. Булыжник. В моей игре не встречается камень. 

     

    Про 23 строку забыл :))

    Это как? Он сравнимает не выпадаемый блок, а натуральный. Если ты положиешь роботику булыгу, но не положишь гладкий камень, то роботик будет только и заниматься, что камень копать хаотично.


  4. Как я образцы мог не правильно задать? Положил в первые слоты камень, землю, гравий..

     

    И еще заметил, что собирал себе во внутреннее хранилище и не сбрасывал мусор.

    Камень или булыгу? Это огромнейшая разница.

    А выбрасывание мусора отключено по умолчанию. На 23 строке вместо false поставь true


  5. Примеры простеньких программ добавь, а то получился просто перевод вики.

    Вообще, я хотел вынести примеры в отдельную часть — слишком большая статья иначе получится.

     

    Как ты сделал такие красивые вставки кода? Не уж-то есть тег?

    Когда задаёшь код, пиши в номере первой строки единичку.

    • Нравится 2

  6. А еще там было двое русских: один написал мод на отвертку-омнивренч, другой портировал хукрафт.

    Но они не с форума))

    Кстати, пересматривая, заметил dangranos'а из чатика. Значит, всё-таки, не все в бункере живут)


  7. Зная вашу тенденцию завершать проекты досрочно, а, точнее, отсутствия такого, в отличие от "супер-пупер" прогеров типа Монстрика или Лехаинк, надеюсь на скорый релиз — очень хочется увидеть данную махину вживую, так сказать, в действии. А если всё-таки можно будет реальные страницы открывать — вообще бомба будет! Не придётся выходить из игры только для копирования пастбина какого-нибудь там замка навороченного, к примеру... В общем, как уже сказал, с нетерпением буду ждать реализацию воистину Крутой™ идеи)


  8. !@: Если Вы хотите узнать одно из возможных использований данного блока, если Вы хотите узнать об использовании вэйпоинтов на дронах, или же если Вам не хватает динамичности в скриншотах — приложил видео от автора модификации в конце записи ;)


  9. О, спасибо!

    Черная глина на самом деле коричневая. Будет совсем некрасиво. Так что из черных блоков только уголь есть.

    "Не смотрел, но знаю". Советская Вицентопедия тоже молчит... Есть ещё обсидиан, но уродливый он. Так что да, только углеблок.


  10. Чёрный-синий-голубой-оранжевый. Прям как я люблю.

    Выглядит уже круто! Жаль, нельзя юзать хамелиум снаружи — там красить можно. Но есть чёрная глина, что будет получше угля, думаю. По крайней мере, потому, что у меня не будет желания каждый раз, когда буду проходить мимо, добыть эти блоки :D


  11. А я дополню, что за хаос творится в коде ;)

     

    Начнём по порядку. Сначала мы создаём локальную таблицу class, в который мы указали, что есть x и y как переменные. Так как это у нас будет класс, то будем учиться говорить правильно: это свойства класса. Их можно изменять как в обычной таблице:

    class["x"] = 42 -- Способ первый.
    class.x = 42    -- Способ второй.
    

      (отступление 1. Обратите внимание на второй способ: индексирование через точку, как я это называю. Это удобно, когда Вы точно знаете называние поля. Кроме того, это может сэкономить Вам несколько символов при кодинге в БИОСе, но не об этом речь. И есть ещё один нюанс, о котором я расскажу далее)

     

    С таблицей мы закончили. Теперь Вам понятна запись class.__index = class. Мы индексируем таблицу class, находя там свойство __index, и присваивая ему значение class. Стоп. Откуда, во-первых, взялся __index, ведь мы же его не указывали! И зачем писать таблицу саму в себя? D:

     

    Оказывается (и тут начинается магия ООП), у любой таблицы есть список "скрытых" свойств! В этом уроке рассказывается только об одном из них — индексирование...

     

    А давайте не будем бежать впереди паровоза, а то он Вас и задавить может спокойненько, как бы. Познакомимся с понятием "ООП". Это Объектно-Ориентированное Программирование. Такая штука после основательного осмысления может помочь Вам в особо крупных программах, экономя код и нервы. ООП построено по принципу эволюции: сначала создаётся объект, который содержит только базовые функции, затем он наследуется, получая функции своего "родителя", и, вероятно, модифицируясь (убирая, например, некоторые свойства предка и добавляя свои). Сейчас Вы на примере поймёте, о чём я говорю.

     

    Пропустим эту строку, и поедем дальше.

    function class:addObject() end

    Обратите внимание на ":" между class и addObject(). Если бы мы добавляли функцию через точку, то нам пришлось бы дополнительно указывать self в аргументы:

    function class.addObject(self) end
    

    Но, согласитесь, это нерационально. ":" же сам вставляет self в аргументы, так что теперь нужно только указывать параметры.

     

    Кстати, любая такая функция класса (function someclass:somefunc() end или function someclass.comefunc(self) end называется методом класса)

     

    С этим понятно. Рассмотрим код.

    local a = {}

    Такая строка затруднений вызывать не должна. Но на очереди новая стандартная функция, которая служит для работы с псевдо-ООП: setmetatable()!

     

    Она осуществляет наследование, о котором я рассказывал выше. В первый аргумент мы должны указать ссылку на таблицу (попросту, аргумент с таблицей, которая будет "ребёнком"), а во второй — ссылку на таблицу-"родитель". Так как это происходит внутри класса, достаточно указать self. Затем вы возвращаем получившегося "ребёнка".

     

      (Отступление 2. Обычно метод класса, который осуществляет наследование, называется new() или create())

     

    Теперь метод setPos(). Помните, мы указывали в таблице свойства x и y? Так вот, чтобы обращаться к методом своего класса, используется всё тот же self. Мы просто устанавливаем для них значения.

     

    Фух, с объявлением класса мы закончили. Следующее на очереди: процесс наследования.

     

    Наследуем очень просто: someobject = Someclass:new(), например. На так как здесь за создание отвечает addObject(), вызываем его. Мы получили объект pixel. Объект — то, что получилось после наследования класса.

     

    И так как произошло наследование, то pixel получил все методы класса.

     

      Оступление 3. И напоследок о "красоте кода".

    • Переменная класса пишется обычно с Заглавной Буквы, слова также отделяются Заглвными Буквами: SomeClass.
    • Метод класса, создающего объект, называется обычно new().
    • Нравится 1

  12. Можно склеить игровой чат и жаббер. Будет как хотелось.

    Кстати с jabber.ru аккаунта не смог зайти в it@conference.5.231.52.134

    Попробовал зарегаться на самом сервере. При регистрации сказало что-то вроде "ваш пароль был изменён с и какой-то mac адрес вроде" . В общем атворизовывать не захотело по моему паролю.

    Лично я как-то же зарегистрировал себе админ-акк? ;)

    Через учётку Гугла вошло у меня тоже без особых проблем... Гляну.

    А для чата в Майне нужен, во-первых, ботик в Джаббере (нужная двунаправленность), во-вторых, плагин для сервака, желательно с функцией подключения/отключения от чата Джаббера.

    Кто напишет? Мне это очень интересно.


  13. Когда осмысливал будильник, понял, что прога будет уже слишком сложной, чего мне не хочется.

    А пока что обновление: добавил несколько констант и показ даты в Mine-Time-Mode, о чём я благополучно забыл. Описание их в посте, обновлённые строки смотрим на пастбине.


  14. ну раз есть и часы то  в них должен быть и будильник) либо подает красный сигнал например на ревун из нуклеара, либо просто камп пищит)

    Будильник и таймер — абсолютно соглаен, вчера уже начал писать :)

     

    Сделай в программе выбор цвета для отдельного символа. Хотелось бы видеть радугу!

     

    Именно отдельно каждый символ.

     

    Например:

    18:49:11

    ббота. 2015/01/09::GMTO

    Э... Пожалуй... откажусь, да, пожалуй. Слишком вырвиглазно — налицо противоречие с заголовком.

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