LINUX.ORG.RU

Когда кодеру делать нечего он кодит штуки чтоб их кодили другие

 , ,


0

1

На картинке процесс отладки мода к minetest — «бульдозера» который должен уметь расковыривать грунты и возводить сады.

Очевидно, что его надо программировать, например сабжевая козявка (в процессе стройки) рисуется «примитивной» программой

local w = 15 --ширина кольца образованного "трубой"
local h = 6 -- высота трубы
local t = 4 -- ширина трубы
b:erase()  b:cuboid(w+t+1, h, w+t+1) --зачистка куба под стройку
b:go_home() b:build() --перемещение вначало и стройка каждой трубы-стены
for i = 0,w-t do b:rect('z',t,h) b:jump(0,0,1) end 
for i = 0,w do b:rect('x',t,h) b:jump(1,0,0) end b:jump(0,0,t)
for i = 0,w-t do b:rect('z',t,h) b:jump(0,0,-1) end b:jump(t,0,-t)
for i = 0,w do b:rect('x',t,h) b:jump(-1,0,0) end 

сорцы лежат на гитхабе: https://github.com/wayerr/minetest-bulldozer-mod

В остальном это кеды, на компе с встроенной ati (и проце от amd, да). Панелька еще по привычке от маленького моника торчит вверху (и в кде нет темы с равномерной ее прозрачностью - только всякие уродства типа этого).

ps. lua - ужасный язык, не втыкайте его в свои программы, пожалуйста!

>>> Просмотр (1920x1080, 374 Kb)

Deleted

Проверено: mono ()

Ответ на: комментарий от cdshines

Minetest 0.4.5

а у меня лишь мод к ней, там правда и сама игра - мод, но это тонкости 8)

Deleted ()

ps. lua - ужасный язык, не втыкайте его в свои программы, пожалуйста!

Да и русский, судя по всему, не родной, не используйте его! А, уже... Всё в порядке.

Shtucer ()

for i = 0,w do b:rect('x',t,h) b:jump(-1,0,0) end

Не пиши такие однострочники. Пожалуйста. Нечитабельно же.

vurdalak ★★★★★ ()

lua - ужасный язык, не втыкайте его в свои программы, пожалуйста!

Белка, зря ты так. Отличный это язык.

devl547 ★★★★★ ()
Ответ на: комментарий от devl547

На нашем индустриальном сервере они оба установлены.

MihailP ★★ ()
Ответ на: комментарий от vurdalak

вопрос в том как сделать читабельно все еще открыт, да можно без циклов (в примерах я так и сделал) но олин фиг

Deleted ()
Ответ на: комментарий от pevzi

костылями ооп (self), конченым вызовом методов, и тп не говоря о том что там на каждый чих надо велосипедить

Deleted ()
Ответ на: комментарий от Deleted

не говоря о том что там на каждый чих надо велосипедить

Java разработчика видно издалека. /me вспомнил об atmega128, которую ему сейчас нужно программировать, и ехидно улыбнулся.

f1xmAn ★★★★★ ()
Ответ на: комментарий от f1xmAn

ты просто на яве не писал, там в сравнении с темже питоном дофига велосипедов придется рисовать

Deleted ()
Ответ на: комментарий от vurdalak

то шо я пишу на скриншоте в kate, а это юзеры должны писать, буфер обмена конечно работает в minetest но коряво, потому и был впрос про простой и понятный способ запрограммировать поведение

вот есть мысль расставлять на карте особые кубики которые будут задавать контур, но неясно как это реализовать, и насколько юзабельно буде

Deleted ()

ps. lua - ужасный язык, не втыкайте его в свои программы, пожалуйста!

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

AGUtilities ★★★ ()
Последнее исправление: AGUtilities (всего исправлений: 1)
Ответ на: комментарий от AGUtilities

может запилить питончик 3.3 в майнтест?

питончик конечно можно но только если автор майнтеста сам задумается о сей затее

Deleted ()
Ответ на: комментарий от Deleted

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

f1xmAn ★★★★★ ()

lua - ужасный язык

да лааадно, не хуйже пайтона

x0r ★★★★★ ()
Ответ на: комментарий от Deleted

костылями ооп

Очень плохой язык, не могли как в крузисе^WC++ ООП сделать.

на каждый чих надо велосипедить

Lua всё-таки встраиваемый язык, так что BOOST в стандартной библиотеке отсутствует из соображений компактности.

quantum-troll ★★★★★ ()
Ответ на: комментарий от Deleted

self

Зато этот self явно передается безо всякой магии. Не больший костыль, чем в том же питоне, и уж точно не хуже, чем какой-нибудь this.

Лично для меня сильно неудобным показалось отсутствие такой простой вещи, как составные операторы присваивания. Никак не могу понять, почему их до сих пор не реализовали. В целом же, как по мне, язык спроектирован достаточно красиво.

pevzi ★★★★★ ()
Ответ на: комментарий от pevzi

Зато этот self явно передается безо всякой магии. Не больший костыль

local b = Bulldozer.new()
b:jump(1,1,1) -- ok
b.jump(1,1,1) --oops! where my 'self'? 

Лично для меня сильно неудобным показалось отсутствие такой простой вещи, как составные операторы присваивания.

сахара в том языке нет, одна соль

Deleted ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.