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

Куда смотрит игрок

Рекомендуемые сообщения

Описание

Этот небольшой программный комплекс(всего 3 файла) делает одну простую вещь: определяет, на какой блок смотрит игрок, в пределах некоторой области.

Гифки для наглядности:

c4246ab76a806e1586190a1bafb7699b.gif

e4b7c2273bba22c44700da33c8796194.gif

6f1992947debe6c4c4a1c9a6c6f6db69.gif

 

Теперь перейдем к билду

Нам нужен стандартный компьютер с дополнительно подключенными Соединенная плата, Геоанализатор, Glasses Terminal(не забудьте привязать и надеть очки)

image.png.d276f4d3a2d98b8c521862e119a7a5d3.png

А также планшет со следующей начинкой:

image.png.689c1adb6e082a1d5586d1cb0bf6b98c.png

Можно использовать более дешевые компоненты, однако в контейнер улучшений нужно будет вставить Улучшение "Навигация", поэтому он должен быть 2 уровня.

 

На оба устройства устанавливаем OpenOS.

На планшет устанавливаем wtwtp_tool.lua

wget https://raw.githubusercontent.com/hohserg1/OpenComputersPrograms/master/playerlook/wtwtp_tool.lua

На компьютер устанавливаем wtwtp.lua и glasses.lua

wget https://raw.githubusercontent.com/hohserg1/OpenComputersPrograms/master/playerlook/wtwtp.lua
wget https://raw.githubusercontent.com/hohserg1/OpenComputersPrograms/master/playerlook/glasses.lua

 

 

Редактируем в wtwtp_tool.lua строчку 

local cx,cy,cz = -1408,0,512

Вставляем свои координаты центра карты, используемой в апгрейде навигации

 

Редактируем в wtwtp.lua строчки

local geolyzerAbsolutePos = {-1408,5,512}
local glassesAbsolutePos = {-1408,4,512}

Вставляем свои координаты геоанализатора и терминала очков

 

Запускаем wtwtp с аргументами x1,y1,z1,x2,y2,z2 соответствующие области вокруг геоанализатора, в которой мы хотим работать. Геоанализатор может скнаировать кубическую область во все стороны на расстоянии 32.

Комп какое-то время будет сканировать блоки в заданной области и после вернется курсор терминала.

Запускаем wtwtp_tool без аргументов и через долю секунды мы увидим, что блок, на который игрок смотрел игрок в момент выполнения wtwtp_tool, будет подсвечен.

 

Запоздалый вопрос актуальности

Наверное, некоторые читатели подумали: "а зачем же оно нужно?"

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

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

 

 

 

 

Изменено пользователем hohserg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Насколько я понимаю, в OpenGlasses 2 можно в очки встроить геолизатор и апгрейд навигации, после чего на стороне моста вызывать getUserLookingAt(username: string) и получать в таблице под ключами x, y, z координаты блока.

Клик регистрируется ивентами interact_world{,_block}_{right, left}. Но, пожалуй, для интерфейса проще даже рисовать на оверлее: кликать можно курсором, как в любом другом гуи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Спасибо за информацию)

В моей реализации используется первая версия OpenGlasses, следовательно, можно использовать на версиях отличных от 1.12.2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


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