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


Фотография

[1.7.10] ComputerCraft [1.74]


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

#381 Storm Whisper

Storm Whisper

    Зачарователь

  • Пользователи
  • Сообщений: 1554
  • Откуда: Убежище 13

Написал 22.03.2012 - 08:49

для запуска сторонней программы есть команда os.run({},"название программы")для реагирования на сингал редстоуна есть команда os.pullEvent, но я с ней ещё не разбирался, щас попробую.но можешь сделать бесконечный цикл, постоянно проверяющий активность редстоун-сигнала, только не забудь в конце тела цикла написать sleep(1)upd не могу запустить на мониторе что либо в своей программе, сижу и думаю как это сделать..

#382 Oflor

Oflor

    Тонущий в песках душ

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

Написал 22.03.2012 - 09:14

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

Именно.

#383 Storm Whisper

Storm Whisper

    Зачарователь

  • Пользователи
  • Сообщений: 1554
  • Откуда: Убежище 13

Написал 22.03.2012 - 09:20

Oflor, ок, тогда ты прав, лучше такPioneer, похоже что запустить программу на монике пока ещё вообще невозможно, для этого нужно чёто типо команды monitor.run. но можно написать что-нибудь вот так: peripheral.call("сторона","write","текст"), а чтобы стереть: peripheral.call("сторона","clear")надеюсь поможет. а что ты вообще хочешь сделать, если не секрет?upd разобрался с pullEvent. короче пиши if os.pullEvent("redstone")=="redstone" then ... тогда по изменению сигнала редстоуна произойдёт действие.только не забудь сделать повтор, а то программа будет работать только один раз.

#384 Pioneer

Pioneer

    Странник

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

Написал 22.03.2012 - 09:47

Storm Whisper, спасибо за оперативную помощь.цель простая, просто научиться запускать программы на монитор от внешнего сигнала, на простом примере готовой программы time. а так, можно выводить на монитор о текущем состоянии систем/фабрик.насчет вывода на монитор, покопался в самой программе monitor, вот исполнительный блокlocal monitor = peripheral.wrap( sSide )term.redirect( monitor )shell.run( sProgram, select( 3, ... ) )term.restore()отсюда вместо переменных sSide и sPrograms подставляем свои значения

#385 Storm Whisper

Storm Whisper

    Зачарователь

  • Пользователи
  • Сообщений: 1554
  • Откуда: Убежище 13

Написал 22.03.2012 - 10:48

разобрался в коде монитора, спасибо что сказал что так можно. короче тебе не надо запускать ещё одну прогу, просто сделай так:
side=[paste][/paste][paste][/paste][paste][/paste] //присваивает аргумент этой переменнойterm[paste][/paste]redirect(peripheral[paste][/paste]wrap(side))'твой код'term[paste][/paste]restore()
тогда надо будет писать "time left", и будет запущено на левый моник, но это если ты сам запускаешь прогу, а если в автозапуске то конечно же надо в саму прогу писать сторону

#386 Pioneer

Pioneer

    Странник

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

Написал 22.03.2012 - 11:36

Работает.Только уточню, значение прописывать в кавычках, к примеру 'left'Спасибо!

#387 Storm Whisper

Storm Whisper

    Зачарователь

  • Пользователи
  • Сообщений: 1554
  • Откуда: Убежище 13

Написал 22.03.2012 - 11:43

пожалуйста!ну да, это же string переменная, естественно в кавычках (не в апострофах, как у тебя)но это в программе, а если аргумент то без кавычек!

#388 Pioneer

Pioneer

    Странник

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

Написал 22.03.2012 - 12:11

вот что у меня получилось в итоге:
repeatos[paste][/paste]pullEvent( "redstone" )term[paste][/paste]redirect(peripheral[paste][/paste]wrap("left"))term[paste][/paste]clear()term[paste][/paste]setCursorPos(1, 1)print( "The time is "[paste][/paste][paste][/paste]textutils[paste][/paste]formatTime( os[paste][/paste]time(), false ) )term[paste][/paste]restore()until e == os[paste][/paste]pullEvent( "redstone" )
PS в отличие между os.pullEvent() и os.pullEventRaw() ?

#389 Storm Whisper

Storm Whisper

    Зачарователь

  • Пользователи
  • Сообщений: 1554
  • Откуда: Убежище 13

Написал 22.03.2012 - 12:38

хзя не понял, ты хочешь чтобы по нажатию кнопки у тебя обновлялось время? а не проще ли делать обновление каждую секунду/минуту?

#390 Pioneer

Pioneer

    Странник

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

Написал 22.03.2012 - 12:49

можно было, но цель была именно от сигнала.

#391 Storm Whisper

Storm Whisper

    Зачарователь

  • Пользователи
  • Сообщений: 1554
  • Откуда: Убежище 13

Написал 22.03.2012 - 14:15

сделал гайд по "сети", API "rednet"

#392 Storm Whisper

Storm Whisper

    Зачарователь

  • Пользователи
  • Сообщений: 1554
  • Откуда: Убежище 13

Написал 22.03.2012 - 16:53

кто скажет для чего здесь
Скрытый текст
служит local? upd что если я функцию опишу после всего кода, она будет работать?

#393 Ratinod

Ratinod

    Странник

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

Написал 22.03.2012 - 19:52

Пользуйся справочником http://www.lua.ru/doc/2.6.html :) А если по простому, она задает область видимости переменной(-ых). (т.е. ты можешь использовать одно и тоже имя переменной в цикле для 2-х различных операций (по ссылке есть хороший пример использования))

#394 Storm Whisper

Storm Whisper

    Зачарователь

  • Пользователи
  • Сообщений: 1554
  • Откуда: Убежище 13

Написал 22.03.2012 - 19:57

спасибо! очень помог! =) (без сарказма)

#395 Ratinod

Ratinod

    Странник

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

Написал 22.03.2012 - 20:03

Кстати. А программы сюда свои можно выкладывать? Или нужны только туториалы?
П.С: а почему не добавишь информацию пользователя miker9 с 11 страницы. Компактное (конкретное) описание функций TurtleAPI очень удобное.

#396 Storm Whisper

Storm Whisper

    Зачарователь

  • Пользователи
  • Сообщений: 1554
  • Откуда: Убежище 13

Написал 22.03.2012 - 20:06

можно выкладывать и проги, и гайды. кстати да, надо его тоже выложить =)я кстати пишу большую прогу, называется "Черепахер", но что она делает пока секрет, хотя и суть проста =)

#397 Ratinod

Ratinod

    Странник

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

Написал 22.03.2012 - 20:18

Рад буду посмотреть :)Я вот тоже прогу доделываю. Основное назначение - копать. Осталось сделать только выбор:будет ли она работать в режиме "выравнивания" или "рытья",что я сейчас и доделываю :)

#398 Storm Whisper

Storm Whisper

    Зачарователь

  • Пользователи
  • Сообщений: 1554
  • Откуда: Убежище 13

Написал 22.03.2012 - 20:20

у меня схожая штука =) как сделаешь, пиши!

#399 Ratinod

Ratinod

    Странник

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

Написал 22.03.2012 - 21:43

Программа "DigiDigi":
Скрытый текст


#400 Zodiak69

Zodiak69

    Убийца драконов

  • Модераторы
  • Сообщений: 13452
  • Ник в Minecraft:
    Zodiak69

Написал 22.03.2012 - 23:42

Почему-то в спойлер не убирается :( (уберите кто умеет)

Используй тег hidden.

8g3ZeiD.png



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

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