0. 주절주절
컴퓨터 들여다보기도 싫다. 플로피 디스크 가지고 다니기도 귀찮다. 채팅 치는것도 귀찮다.
하시는분들에게는 반가운 프로그래밍 일수도 있습니다.
바로 모니터를 사용한 프로그래밍이거든요.
물론 편하게 게임을 하고싶은 욕구는 누구나 다 가지고 있지요.
하지만 정작 모니터 프로그래밍은 타이핑한만큼 결과는 그리 많이 나오지 않아요.
신경쓸게 이만저만 아니거든요.
모니터의 크기와 폰트 스케일, 버튼 위치. 버튼의좌표값 찾기 등 할게 많죠.
이 모든 과정을 끝마쳐야만 비로소 프로그래밍 작성을 시작할수 있죠.
1. 주석소스
term.clear() -- 컴퓨터의 화면을 청소한다.
term.setCursorPos(1,1) -- 컴퓨터의 커서를 좌측 상단으로 옮겨준다.
print("this is monitor door control") -- 메시지 출력
monitor = peripheral.wrap('monitor_0') -- 무선 모뎀이 연결된 모니터와 연결시켜준다. (이름 체크 필수)
monitor.setBackgroundColor(colors.black) -- 모니터의 화면을 검은색으로 정한다.
monitor.clear() -- 모니터를 청소한다
monitor.setTextScale(4) -- 글씨 크기를 결정한다 (사이즈 0.5~5)
local x,y = monitor.getSize() -- 모니터의 크기를 잡아준다.
x = x/2-2
y = y/2
local status = 0
monitor.setBackgroundColor(colors.green) -- 모니터의 화면을 초록색으로 정한다.
monitor.setCursorPos(x,y) -- 모니터의 커서를 x, y좌표로 이동시켜준다.
monitor.write(' open ') -- open 글씨를 출력한다. 배경색이 초록이므로 open 에는 초록색의 배경이 부여된다.
redstone.setOutput('right',true) -- 레드스톤신호 우측
while true do
event, side, mx, my = os.pullEvent('monitor_touch') -- 이벤트를 정한다 (모니터 터치를 입력했으나 생각시 event 변수를 활용해야된다.)
monitor.setCursorPos(x,y)
if mx >= 8 and mx <= 13 and my >=3 and my <= 5 then -- 터치모니터의 영역 x 8~13 y 3~5
if status == 1 then
monitor.setBackgroundColor(colors.green)
redstone.setOutput('right',true)
monitor.write(' open ')
status = 0
else
monitor.setBackgroundColor(colors.red)
redstone.setOutput('right',false)
monitor.write(' closed ')
status = 1
end
end
os.sleep(0.05)
end
2. 복붙용소스
term.clear()
term.setCursorPos(1,1)
print("this is monitor door control")
monitor = peripheral.wrap('monitor_0')
monitor.setBackgroundColor(colors.black)
monitor.clear()
monitor.setTextScale(4)
local x,y = monitor.getSize()
x = x/2-2
y = y/2
local status = 0
monitor.setBackgroundColor(colors.green)
monitor.setCursorPos(x,y)
monitor.write(' open ')
redstone.setOutput('right',true)
while true do
event, side, mx, my = os.pullEvent('monitor_touch')
monitor.setCursorPos(x,y)
if mx >= 8 and mx <= 13 and my >=3 and my <= 5 then
if status == 1 then
monitor.setBackgroundColor(colors.green)
redstone.setOutput('right',true)
monitor.write(' open ')
status = 0
else
monitor.setBackgroundColor(colors.red)
redstone.setOutput('right',false)
monitor.write(' closed ')
status = 1
end
end
os.sleep(0.05)
end
3. 시연영상
'마인크래프트(Minecraft) > Computer Craft' 카테고리의 다른 글
[Computer Craft] 19. <응용기술> 패턴 인식 (0) | 2014.03.11 |
---|---|
[Computer Craft] 17. <부록?> 지양해야할 프로그래밍 - 간단한 예제들 (6) | 2013.09.19 |
[Computer Craft] 16. <응용기술> 유저 인식 문 (4) | 2013.09.08 |
[Computer Craft] 15. <응용기술> 채팅 인식 문 (2) | 2013.09.03 |
[Computer Craft] 14. <응용기술> 플로피디스크 비밀번호 문 (8) | 2013.09.02 |