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


Фотография

[1.7.10] ComputerCraft [1.74]


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2863

#2681 Lexor

Lexor

    Добытчик угля

  • Пользователи
  • Сообщений: 399
  • Откуда: Иркутская область

Написал 16.01.2014 - 07:58

Лексор, поставил я миск перифералс, можешь ту свою прогу скинуть?

Nukegeneral, нужен аддон Open peripherals, хотя миск перифералс тоже полезная штука. Я поищу программу. Но скажу сразу она не юзер-френдли, т.к делал для себя. Т.е тебе возможно будет очень не просто ее использовать. Upd. вот программа для обогатителя. Но делал я ее летом прошлого года, щас бы уже что-то сделал по-другому. До конца она не закончена, основные строки считывания информации с реактора закомментированы, т.к испытывал ее на эмуляторе компкрафта на работе.
Скрытый текст


#2682 vadimus19991

vadimus19991

    Странник

  • Пользователи
  • Сообщений: 22

Написал 17.01.2014 - 08:04

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

#2683 Cyxapuk

Cyxapuk

     

  • Главные модераторы
  • Сообщений: 8706
  • Ник в Minecraft:
    Meegoo

Написал 17.01.2014 - 10:07

А поточнее? Тебе нужно с помощью проводов передавать текст на монитор?

V6xCzSN.png


#2684 Try4W

Try4W

    Странник

  • Пользователи
  • Сообщений: 3

Написал 18.01.2014 - 13:24

Ребят, такая проблема... После каждого рестарта моего сервера программы черепашек слетают. Как сделать, чтобы они работали без перебоев не смотря на перезагрузки? Мб есть какой-нибудь аддон?

#2685 Cyxapuk

Cyxapuk

     

  • Главные модераторы
  • Сообщений: 8706
  • Ник в Minecraft:
    Meegoo

Написал 18.01.2014 - 19:32

Если у тебя черепахи, например, копают или строят, то нормальной работы после перезапусков можно добиться только изменением кода. После каждого действия сохранение всех нужных данных в отдельный файл, которые необходимы для нормального продолжения работы, и после перезапуска сервера с помощью данных из этого файла продолжать работу.Если они просто стоят на месте и спамят что нибудь (например убивают мобов у спаунера), то в программу с именем startup напиши shell.run("program name"). Но для всяких карьеров это не прокатит.

V6xCzSN.png


#2686 Nukegeneral

Nukegeneral

    Добытчик камня

  • Пользователи
  • Сообщений: 239

Написал 18.01.2014 - 20:04

Nukegeneral, нужен аддон Open peripherals, хотя миск перифералс тоже полезная штука. Я поищу программу. Но скажу сразу она не юзер-френдли, т.к делал для себя. Т.е тебе возможно будет очень не просто ее использовать. Upd. вот программа для обогатителя. Но делал я ее летом прошлого года, щас бы уже что-то сделал по-другому. До конца она не закончена, основные строки считывания информации с реактора закомментированы, т.к испытывал ее на эмуляторе компкрафта на работе.

Скрытый текст

А с Misc Periferals будет работать? И под какие кабели адаптировано?
Скрытый текст

Нельзя недооценивать предсказуемость тупизны.

#2687 Lexor

Lexor

    Добытчик угля

  • Пользователи
  • Сообщений: 399
  • Откуда: Иркутская область

Написал 19.01.2014 - 01:35

Ребят, такая проблема... После каждого рестарта моего сервера программы черепашек слетают. Как сделать, чтобы они работали без перебоев не смотря на перезагрузки? Мб есть какой-нибудь аддон?

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

А с Misc Periferals будет работать? И под какие кабели адаптировано?

Без Open peripherals работать не будет. Да и с ним тоже не факт, я не тестировал в 1.6.4 т.к вышел новый IC2 и апи могло измениться или вообще стать не работоспособным. С TE например Open peripherals теперь практически не взаимодействует. Вообще в программе 80% кода - это графический интерфейс и несколько кнопочек. Так как пример можешь посмотреть для своих наработок. А использовать ее как готовый вариант не получится. Кабели использовались 2х типов: компкрафтовский реднет для подключения к проводному модему, установленному на реакторе и реднет кабель из MFR для управления реактором.

#2688 vadimus19991

vadimus19991

    Странник

  • Пользователи
  • Сообщений: 22

Написал 24.01.2014 - 09:54

А поточнее? Тебе нужно с помощью проводов передавать текст на монитор?

да да да как передать текс по проводам

#2689 Cyxapuk

Cyxapuk

     

  • Главные модераторы
  • Сообщений: 8706
  • Ник в Minecraft:
    Meegoo

Написал 24.01.2014 - 12:56

Подключаешь проводами комп к монитору. Активируешь проводные модемы нажатием ПКМ и запоминаешь имя монитора. В программе пишешь mon = peripheral.wrap("имя монитора") Работать точно так же, как и с монитором, поставленным вплотную к компу.

V6xCzSN.png


#2690 Lexor

Lexor

    Добытчик угля

  • Пользователи
  • Сообщений: 399
  • Откуда: Иркутская область

Написал 29.01.2014 - 03:07

Ситуация такая: на экране CC компа выведены символы, отследить какой именно символ находится в конкретных координатах очень проблематично. Есть ли способ считать символ с экрана в положении курсора? UPD.: Уже отследил символы на моменте выведения на экран, но вопрос остается открытым.

#2691 Dimus

Dimus

    Странник

  • Пользователи
  • Сообщений: 89

Написал 29.01.2014 - 18:46

Я в данный момент работаю над данным вопросом. Кроме как отслеживать выводимые символы путем переопределения объекта term, других способов не вижу. Если будут другие мысли, пожалуйста, сообщи.

#2692 Cyxapuk

Cyxapuk

     

  • Главные модераторы
  • Сообщений: 8706
  • Ник в Minecraft:
    Meegoo

Написал 29.01.2014 - 20:47

В API терминала\монитора такой функции нету. Только если самому в какой-нибудь массив весь текст записывать.

V6xCzSN.png


#2693 Xytabich

Xytabich

    Странник

  • Пользователи
  • Сообщений: 54
  • Откуда: Россия

Написал 30.01.2014 - 14:49

Всем привет, есть небольшая проблемка. Я делаю программу карьера для черепашки и там надо вводить длину и ширину копания, в этом то и проблема, надо как нибудь перевести string в int

#2694 Dimus

Dimus

    Странник

  • Пользователи
  • Сообщений: 89

Написал 30.01.2014 - 15:01

Всем привет, есть небольшая проблемка. Я делаю программу карьера для черепашки и там надо вводить длину и ширину копания, в этом то и проблема, надо как нибудь перевести string в int

Как на счет tonumber() ?

А по поводу чтения содержимого экрана предлагается следующая программка:
if nativeterm then  print('getLine already loaded')  returnendlocal screen={}local w,h=term[paste][/paste]getSize()local nativeterm={}nativeterm[paste][/paste]write=term[paste][/paste]writeterm[paste][/paste]write=function(text)	--Writes text to the screen[paste][/paste]  local x,y=term[paste][/paste]getCursorPos()  nativeterm[paste][/paste]write(text)  if x>1  then text=screen[y]:sub(1,x-1)[paste][/paste][paste][/paste]text end  x=term[paste][/paste]getCursorPos()  if x<=w then text=text[paste][/paste][paste][/paste]screen[y]:sub(x) end  if text:len()>w then text=text:sub(1,w) end  screen[y]=textendnativeterm[paste][/paste]clear=term[paste][/paste]clearterm[paste][/paste]clear=function()	--Clears the entire screen  nativeterm[paste][/paste]clear()  for i=1,h do    screen[i]=string[paste][/paste]rep(' ',w)  endendnativeterm[paste][/paste]clearLine=term[paste][/paste]clearLineterm[paste][/paste]clearLine=function()	--Clears the line the cursor is on  nativeterm[paste][/paste]clearLine()  local x,y=term[paste][/paste]getCursorPos()  screen[y]=string[paste][/paste]rep(' ',w)endnativeterm[paste][/paste]scroll=term[paste][/paste]scrollterm[paste][/paste]scroll=function(n)	--Scrolls the terminal n lines[paste][/paste]  nativeterm[paste][/paste]scroll(n)  for i=1,n do    table[paste][/paste]remove(screen,1)    screen[h]=string[paste][/paste]rep(' ',w)  endendterm[paste][/paste]getLine=function(line,i,j) --Return string from screen in line from i to j symbol  if i then    return screen[line]:sub(i,j)  else    return screen[line]  endendterm[paste][/paste]clear()
После выполнения вышеприведенного кода становится доступной функция term.getLine(line[,i[,j]]), которая возвращает текст с экрана из строки с номером line начиная с позиции i и кончая позицией j. Если параметр j опущен, возвращается текст до конца строки, если параметр i опущен, возвращается строка целиком

#2695 Xytabich

Xytabich

    Странник

  • Пользователи
  • Сообщений: 54
  • Откуда: Россия

Написал 30.01.2014 - 18:18

Всем привет, есть небольшая проблемка. Я делаю программу карьера для черепашки и там надо вводить длину и ширину копания, в этом то и проблема, надо как нибудь перевести string в int

Как на счет tonumber() ?

нет, я где то видел что можно переводить стринг в инт при вводе в строку цифр.

#2696 Cyxapuk

Cyxapuk

     

  • Главные модераторы
  • Сообщений: 8706
  • Ник в Minecraft:
    Meegoo

Написал 30.01.2014 - 19:06

Это оно и естьintVar = tonumber(read())

V6xCzSN.png


#2697 Lexor

Lexor

    Добытчик угля

  • Пользователи
  • Сообщений: 399
  • Откуда: Иркутская область

Написал 31.01.2014 - 03:05

А по поводу чтения содержимого экрана предлагается следующая программка...

Т.е по сути она подменяет стандартное апи term и запоминает символы выводимые на экран в массив screen. Лучше всего наверное ее будет подгружать в виде апи в начале программы.

#2698 Xytabich

Xytabich

    Странник

  • Пользователи
  • Сообщений: 54
  • Откуда: Россия

Написал 31.01.2014 - 19:50

Это оно и есть intVar = tonumber(read())

а ну теперь ясно, спасибо

#2699 vadimus19991

vadimus19991

    Странник

  • Пользователи
  • Сообщений: 22

Написал 11.02.2014 - 19:04

Подключаешь проводами комп к монитору. Активируешь проводные модемы нажатием ПКМ и запоминаешь имя монитора. В программе пишешь mon = peripheral.wrap("имя монитора") Работать точно так же, как и с монитором, поставленным вплотную к компу.


#2700 Cyxapuk

Cyxapuk

     

  • Главные модераторы
  • Сообщений: 8706
  • Ник в Minecraft:
    Meegoo

Написал 11.02.2014 - 21:17

Поподробнее про реализацию. Будут стоять 2 компа с мониторами, соединенными между собой проводами. В комп нужно будет написать сообщение, что бы оно появилось на двух мониторах. Так?

V6xCzSN.png



Количество пользователей, читающих эту тему: 9

0 пользователей, 9 гостей, 0 анонимных