마인크래프트(Minecraft)/Computer Craft 썸네일형 리스트형 [Computer Craft] 19. <응용기술> 패턴 인식 오랜만에 컴퓨터크래프트 관련 글을 쓰네요소스는 생각외로 단순하게되어 있습니다이전에 썼던 강좌글에 다 나와있던 API 함수를 활용한것이죠. 5개의 함수로 이루어져있으며 각자의 역할은 구분 지어져 있습니다. 1. T_C() turtle.compare() 함수를 쓰는것이며, 8번슬롯부터 16번 슬롯까지 하나씩 선택을 해줍니다.만일 선택된 블럭이 아래의 길과 일치하면 그 블럭에 맞는 행동값 코드를 부여해줍니다. 2. T_S(num) turtle.select() 함수를 쓰는것이며 길게 치기 귀찮아서 함수화했습니다. 3. T_GetItemCount() 아이템수를 계산해주는 turtle.getItemCount() 함수를 썻습니다.대게 상자에 넣을때 ([현재들고있는 아이템의 수량 ] -1)을 지정하기위해서 쓰는편이죠... 더보기 [Computer Craft] 18. 모니터로 문 열고 닫기 0. 주절주절 컴퓨터 들여다보기도 싫다. 플로피 디스크 가지고 다니기도 귀찮다. 채팅 치는것도 귀찮다.하시는분들에게는 반가운 프로그래밍 일수도 있습니다.바로 모니터를 사용한 프로그래밍이거든요.물론 편하게 게임을 하고싶은 욕구는 누구나 다 가지고 있지요.하지만 정작 모니터 프로그래밍은 타이핑한만큼 결과는 그리 많이 나오지 않아요.신경쓸게 이만저만 아니거든요.모니터의 크기와 폰트 스케일, 버튼 위치. 버튼의좌표값 찾기 등 할게 많죠.이 모든 과정을 끝마쳐야만 비로소 프로그래밍 작성을 시작할수 있죠. 1. 주석소스 term.clear() -- 컴퓨터의 화면을 청소한다. term.setCursorPos(1,1) -- 컴퓨터의 커서를 좌측 상단으로 옮겨준다. print("this is monitor door co.. 더보기 [Computer Craft] 17. <부록?> 지양해야할 프로그래밍 - 간단한 예제들 LUA 프로그래밍 하다보면, 어느 구간에 다가가면 엄청난 렉을 유발하는 경험이 있잖아요.원인은 무한반복을 하는 프로그래밍 때문이죠.물론 코드만 잘 짜여져 있다면 무한반복을 하더라도 아무런 탈이 없습니다. 아래의 여러가지 샘플 소스를 통해서 문제점을 적도록 하겠습니다. 샘플소스 1 while true do turtle.dig()end 터틀이 무한으로 채광을 하는것인데요.블럭이 있던 없건간에 터틀의 1회 채광행위가 빠르지 않아 문제점은 없어보입니다.터틀의 이동 및 채광 함수는 속도가 빠르지 않아 큰 문제는 없습니다만, 딜레이 함수를 걸어주는게 매우 좋습니다. 샘플소스 1 - 수정 while true do turtle.dig() os.sleep(0.05) end딜레이를 0.05초를 걸어주면 해결됩니다. = =.. 더보기 [Computer Craft] 16. <응용기술> 유저 인식 문 1. 개요 본 강좌는 컴퓨터크래프트 애드온 모드인 OpenCCSensors 가 설치되어 있어야 사용할 수 있습니다모드 자료 : OpenCCSensors 지난 시간엔 채팅인식하는 시스템을 구축해보았는데요타이핑을 하기조차 귀찮아 하는 여러분들을 위해 유저감지센서라는 아이템을 써봅시다. Sensor 조합법 Proximity Sensor Card (MK1) 조합법 2. 새로운 API들 os.loadAPI("ocs/apis/sensor") : API 함수를 불러오는 명령어입니다. math.sqrt() : 루트를 의미합니다.math.pow(밑,지수) : 제곱을 의미 합니다. = math.pow(2,3) 으로 표현 할 수 있습니다.sensor.wrap(side) : 센서의 방향을 결정합니다. detect.getTar.. 더보기 [Computer Craft] 15. <응용기술> 채팅 인식 문 본 강좌는 컴퓨터크래프트 애드온 모드인 MiscPeripherals 가 설치되어 있어야 사용할 수 있습니다. 모드 자료 : MiscPeripherals 0. 개요 그동안 플로피 디스크를 가지고 다니거나 컴퓨터 안에서 직접 제어를 해야하니 이만저만 불편한게 아니였습니다.그러나 컴퓨터크래프트 애드온 모드인 MiscPeripherals 가 추가됨으로써 채팅으로 문을 열고 닫고 하게 가능해졌죠.Chat Box 라는아이템을 사용한 채팅으로 제어하는것을 알아보도록 해요. 1. Chat Box 조합법 금4개, 노트블럭4개, 다이아몬드1개 들어갑니다. 꽤나 비싸네요. 2. 주석소스 chatbox = peripheral.wrap('left') -- Chat Box 가 있는 쪽을 연결 시켜준다.while true do e.. 더보기 [Computer Craft] 14. <응용기술> 플로피디스크 비밀번호 문 14. 플로피디스크 비밀번호 문 이번에는 예전에 썼던 대부분 소스들이 있기 떄문에 짧게 쓰겠습니다. fs.exists(dir) : 디렉토리나 파일이 존재하는가 체크해주는 함수h.eject() : 디스크를 배출해주는 함수 h.eject() 에서 h 에는 peripheral.wrap(side) 함수로 디스크 드라이버가 지정이 되었을때,그 변수의 이름을 h값으로 가집니다. 예)local drive = peripheral.wrap('left')drive.eject() local chick = peripheral.wrap('left')chick.eject()1. 주석소스 local side = 'bottom' -- 문을 열때 보낼 레드스톤 신호 위치 local drive = peripheral.wrap('left.. 더보기 [Computer Craft] 13. <기초강좌> 터틀 채광,블럭감지, 블럭비교 및 블럭놓기 API 0. 개요 이번강좌에서는 어찌보면 매우 중요한 요소가 있다고 볼 수 있는데요. 블럭이 터틀 앞에 놓여 있느냐? 내가 선택한 블럭과 일치하느냐? 이런것을 감지가 가능하게되면서 좀더 스마트하게 블럭 채취행위가 가능했죠. 또한 감지가 됬으면 블럭을 두거나 채취하는 행위가 당연히 뒤따르게 된거죠. 컴퓨터크래프트에서 만들어 두었던 tunnel 명령어를 쳐보면 아래에 블럭이 없을때 선택된 슬롯의 블럭을 놓아두는 것을 볼수있는데요. 이게 블럭감지 함수를 사용했음을 알 수 있다는것이죠. 그만큼 이 함수가 좋다는 의미겠죠? 그러므로 이번 강좌를 통해서 좀더 스마트해진 터틀을 만들어 보도록하죠. 1. 채광 API 터틀이 채광하는 API 함수는 기본적으로 세가지를 지원합니다. 농사 터틀경우에는 땅을 경작하지만, 그외의 터틀.. 더보기 [Computer Craft] 12. <기초강좌> 터틀 이동API 및 방향 API 0. 개요 터틀의 이동은 자원 채취에 있어서 매우 중요한 요소입니다.이동을 하지 않고서는 제자리에서 자원을 얻는 것은 조약돌(cobble stone)생성기 외에는 방법이 없거든요.참고로 터틀이 이동할때는 1블럭당 연료1을 소모하므로 연료가 모자르지 않은가를 체크해주어야합니다.기본적으로 refuel 숫자 또는 refuel all 명령어로 연료 충전을 할 수 있습니다 1. 이동API 1-1. 이동API 요소 터틀이 이동하는 API 함수는 기본적으로 네가지를 제공합니다.전진과 후진 그리고 위와 아래로 이동하는것이죠.그러면 이동 API를 볼까요? turtle.forward() -- 1블럭 전진 turtle.back() -- 1블럭 후진 turtle.up() -- 1블럭 상승 turtle.down() -- 1블럭.. 더보기 [Computer Craft] 11. <기초강좌> 터틀 입문 0. 서론 그동안 올려두었던 포스트 글은 어느정도 숙달 되었던 분들을 위해 작성을 했었죠.그러다보니 애초 API 들을 재대로 사용할줄을 모르는 분들이 있기 때문에기초 처음부터 작성해보자 하는 마음을 가지게 되었죠.실제로 구글, 네이버에 검색해도 재대로된 강좌글을 단 하나도 찾지 못했습니다.저보다 뛰어난분을 만나야 제능력이 더 올라갈텐데 말이죠.조합법은 생략한채 본문글 들어갑니다. 1. 터틀의 종류 터틀은 기본적으로 크게 7종류의 터틀로 나뉘는데요.처음 조합시 나오는 기본 터틀외에 6개의 다른 특징을 가진 터틀이 있습니다. 1. 채광(Mining) 터틀 : 석탄, 철, 금, 다이아몬드등 광물을 얻어낼 수 있습니다.2. 농사(Faming) 터틀 : 땅을 갈아주고 작물을 수확할 수 있습니다. 3. 근접공격(M.. 더보기 [Computer Craft] [시연영상] 나무베기 터틀 1.5.2 이후 예전에 뼛가루 전성기 시절 1.4.7 포함 이전 버전에서는 뼛가루를 1개만 넣어주면 나무가 자라났기 때문에 뼛가루 판정을 하지 않아도 됬었죠. 그러나 1.5 이후에는 뼛가루가 너프 되면서 여러번 뿌려야하는 문제점에 봉착하게 됬습니다. 그래서 1.4.7 때 작성한 제 터틀 알고리즘이 쓸모가 없어지게 됬었죠. 그래서 다시 터틀을 알고리즘을 설계하고 조촐하게나마 만들어 봤습니다. 아직 약간의 문제점이 남아 있지만, 나무 베는데는 지장이 없을정도입니다. 문제점 : 뼛가루 사용시 상자에 뼛가루가 없을때 뼛가루를 찾아 빙글빙글 도는 현상 정작 나무가 자라나면 베어버린다는... 문제점2 : config 시스템 처리가 되어있지 않음. database 파일[아이템 슬롯위치, 뼛가루 사용 on/off 설정 정보]을직접 수.. 더보기 이전 1 2 다음