Нет, в 1 строку. Просто переключатель =)всмы вкл/выкл в нескольких строках? ну это на двух пальцах не напишешь... мб кто и напишет, но я сейчас не хочу
[1.7.10] ComputerCraft [1.74]
#1541
Posted 21.01.2013 - 17:16
#1542
Posted 21.01.2013 - 17:24
side=""while true doevent,param=os[paste][/paste]pullEvent("key")if param==28 then if rs[paste][/paste]getOutput(side)==true then rs[paste][/paste]setOutput(side,false) else rs[paste][/paste]setOutput(side,true) end end end
#1543
Posted 21.01.2013 - 18:35
#1544
Posted 21.01.2013 - 19:33
#1545
Posted 21.01.2013 - 21:37
Ок, спасибо. Но я не совсем то имел в виду =) Как мне чтобы после выбора "enable farm" сделать чтобы не появлялось 'farm is now on", а можно было сразу переключить на "disable farm"В startup сунуть. shell.run("программа")
#1546
Posted 21.01.2013 - 22:59
#1547
Posted 22.01.2013 - 00:17
Ребят помогите. Черепаха пишет: attempt to call nil Вот код моей простенькой программы: a=10 repeat dig(1) turtle.forward(1) digup(1) digdown(1) a=a-1 until a==0 Собственно как решить? З.Ы.: Я хоть и полный нуб в computer craft но топливо положил =3
a=10 repeat turtle[paste][/paste]dig() turtle[paste][/paste]forward() turtle[paste][/paste]digUp() turtle[paste][/paste]digDown() a=a-1 until a~=0Помимо ненужных единиц и непонятных команд, твой цикл можно прочесть так: "а = 10, повторять действия пока а соотвествует 0"
#1548
Posted 22.01.2013 - 07:06
for i = 0, 10 do turtle[paste][/paste]dig() turtle[paste][/paste]forward() turtle[paste][/paste]digUp() turtle[paste][/paste]digDown()end---------------- Fxd (Я дурак)
#1549
Posted 22.01.2013 - 11:37
###### сказал =) и цикл построен правильно у него. UNPeaL, ты, как наверное уже понял, забыл "turtle." написать. "attempt to call nil" получаешь, когда вызываешь несуществующую функцию, вот это надо запомнить. А для циклов типа "считать от a до b" лучше использовать цикл с параметром, как написал Сухар. upd только надо писатьuntil a~=0Помимо ненужных единиц и непонятных команд...
for i=10,0,-1 doто есть от 10 до нуля с шагом -1.
#1550
Posted 22.01.2013 - 14:10
ЧЕЕЕЕЕЕЕЕЕЕЕЕН! ^_,^
#1551
Posted 22.01.2013 - 14:28
лол, по ходу я так = написал и не заметил =))) мне не важно, что он использует, я лишь сделал цикл с параметром, идентичный его циклу.Storm Whisper Во первых у тебя от -10 до 0 с шагом -1 Во вторых какая разница что от 0 до 10, что от 10 до 0 если число i не используется в цикле?
#1552
Posted 22.01.2013 - 14:56
#1554
Posted 22.01.2013 - 15:23
Достаточно, но я хотел бы видеть включена ферма или нет. Я вроде как делаю, но всё время ошибки D= Вот изменил немного твой код, но что то не так D=того, что я тебе дал, недостаточно?
side="bottom"while true doevent,param=os[paste][/paste]pullEvent("key") if param==28 then if rs[paste][/paste]getOutput(side)==true then rs[paste][/paste]setOutput(side,false) term[paste][/paste]clear() term[paste][/paste]setCursorPos(1,1) print("FARM IS NOW ON") else rs[paste][/paste]setOutput(side,true) term[paste][/paste]clear() term[paste][/paste]setCursorPos(1,1) print("FARM IS NOW OFF") elseif param==14 then break end endend
#1555
Posted 22.01.2013 - 15:33
#1556
Posted 22.01.2013 - 15:47
#1557
Posted 22.01.2013 - 15:48
Заправь её. Положи ей в инвентарь уголь, но смотри чтобы не было ничего деревянного, а то она у меня 1 раз все сундуки себе заправила xD И введи refuel.all. Вроде можно добавить в программyЭх не суждено мне быть заклинателем черепах. Она не двигается, только копает один блок вперед. Что писать чтоб она прокопала 10 вертикальных линий по 3 блока? [snowman]
a=1if get[paste][/paste]fuelLevel<athenturtle[paste][/paste]refuel(all)end(если честно я не знаю правильно ли я написал, но должно сработать =)) Жалко что нельзя написать колличество блоков в скобочках, например turtle.digDown(3) или i=3 turtle.digDown(i). Ах да, сухарик у тебя в коде, в предпоследней строке turle, исправь =)
#1558
Posted 22.01.2013 - 15:55
#1559
Posted 22.01.2013 - 16:00
side="bottom"while true doevent,param=os[paste][/paste]pullEvent("key") if param==28 then if rs[paste][/paste]getOutput(side)==true then rs[paste][/paste]setOutput(side,false) term[paste][/paste]clear() term[paste][/paste]setCursorPos(1,1) print("FARM IS NOW ON") else rs[paste][/paste]setOutput(side,true) term[paste][/paste]clear() term[paste][/paste]setCursorPos(1,1) print("FARM IS NOW OFF") elseif param==14 then break end endendя немного изменил внешний вид твоего кода, точнее, сдвинул блок внутри первого условия вправо. Вот теперь ты должен найти ошибку. Полезно находить их самому. Не сможешь, пиши, я дам исправленный код. Кстати,
term[paste][/paste]clear()term[paste][/paste]setCursorPos(1,1)эту часть можно вынести за внутреннее условие, ты ж два раза одно и то же пишешь!
#1560
Posted 22.01.2013 - 16:16
Может break()? Често, не вижу. И ещё, как это вытащить за внутреннее условие? И вроде ещё end добавить надо да?я немного изменил внешний вид твоего кода, точнее, сдвинул блок внутри первого условия вправо. Вот теперь ты должен найти ошибку. Полезно находить их самому. Не сможешь, пиши, я дам исправленный код.
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users