Skip to content

Blank-In/BlankInMusic

Repository files navigation

BlankInMusic

Minecraft instrument, sheet music plugin
악기 - 등록, 적용, 연주 / 악보 - 작성, 연주, 합주 기능 등을 즐길 수 있는 음악 컨텐츠를 추가해줍니다.
1.19 미만 버전은 일부 최신기능을 더 이상 지원하지 않습니다.

시연 영상

악보 작성/연주 || 연주 높낮이 조절 || 악기 설정과 연주

이용 규약

  1. 플러그인을 활용하는 모든 행위(코드 수정, 서버 적용 등)는 반드시 원작자의 출처를 남겨야 합니다.
  2. 플러그인을 서버에 적용 후 컨텐츠로 활용하여 수익을 얻는 것을 허용합니다.
  3. 플러그인의 코드 혹은 파일을 2차 배포 하여 어떠한 형태로든 이익을 얻는 행위를 금합니다.
  4. 플러그인의 코드 수정을 허용합니다. 수정된 코드 또한 위와 동일한 이용규약을 갖습니다.
  5. 플러그인의 리소스팩 또한 위와 동일한 이용규약을 갖습니다.

명령어

/blankinmusic

플러그인의 정상작동을 확인함. 플러그인의 변수를 초기화함.

/musictag <태그>

손에 들고 있는 아이템을 악기로 만듭니다.
기본 태그 목록 : 베이스, 드럼, 종, 플루트, 차임벨, 기타, 실로폰, 철 실로폰, 카우벨, 디저리두, 비트, 밴조, 플링, 하프
마인크래프트 버전에 따라 사용이 불가능한 태그도 있습니다.
태그에 띄어쓰기 적용 가능

/tagadd <소리경로> <새로운 태그>

/tagadd block.note_block.harp 피아노 : 입력시 피아노 태그에 harp 소리 할당
새로운 태그로 drum.3 ~ drum.14 등록시 드럼 소리 추가
태그에 띄어쓰기 적용 가능

/연주차단

악기소리를 차단/차단해제 합니다.

/악보등록

손에 들고 있는 악보를 등록합니다.

/악보연주

등록된 악보를 손에 들고있는 악기로 연주합니다.

/악보연결

등록된 악보에 이어서 등록합니다.

/지휘자 <닉네임>

해당 유저를 지휘자로 등록합니다.
지휘자가 악보연주를 시작하면 동시에 연주를 시작합니다.

권한

BlankInMusic.op.*

  • BlankInMusic.blankinmusic
  • BlankInMusic.op.musictag
  • BlankInMusic.op.tagadd

BlankInMusic.user.*

  • BlankInMusic.user.연주차단
  • BlankInMusic.user.악보등록
  • BlankInMusic.user.악보연주
  • BlankInMusic.user.지휘자

BlankInMusic.user.악보연결

악용 가능성이 있어 권한을 나눠놓았음

악보 작성 양식

악보는 '책과 깃펜'과 '이름이 쓰인 책'에 적힌 내용만을 인식합니다.
만약 양식이 올바르지 않을 시 악보 연주 중에 오류를 띄우며 연주를 중단합니다.

악보는 오직 숫자 띄어쓰기 줄바꿈   - # b C F L 만 인식할 수 있습니다.
그 외의 다른 문자를 입력할 시 연주 중에 오류를 띄우며 연주가 중단됩니다.

음은 0~14까지 있으며 계이름은 악기를 들고 연주하면 나오는 계이름과 똑같습니다.
0(파♯) 의 경우 시스템상 가장 낮은 음이어서 예외적입니다.
( 0 - 파♯ | 4 - 도 | 5 - 레 | 6 - 미 )

음을 적은 후 #을 추가로 적으면 반올린 음을 연주하게 됩니다.
( 0 - 파` | 4♯ - 도♯ | 5♯ - 레♯ | 6♯ - 미♯ )

음을 적은 후 b를 추가로 적으면 반내린 음을 연주하게 됩니다.
( 0 - 파♯ | 4♭ - 도♭ | 5♭ - 레♭ | 6♭ - 미♭ )

- 는 쉼표입니다. 입력시 아무음도 연주하지 않고 그 후에 적은 길이만큼 시간이 지난 후 다음 음으로 넘어갑니다.
( - | -1 | -2 | 모두 똑같은 쉼표로 처리한다.)

음을 입력한 후에   를 입력할시 추가적으로 다른 음을 적을 수 있습니다.
만약 0 5 7# 를 입력한다면 연주를 할때 세 음을 동시에 연주합니다.
이 기능을 활용해 만약 5 5 5를 입력한다면 연주의 크기를 키울 수 있습니다.

음들이 먼저 입력되고 그 뒤에 반드시 길이가 따라와야 합니다..
4  4 (정상 작동)
44 (띄어쓰기를 하지 않이 오류 발생)
4 (길이를 입력 하지 않아 오류 발생)

길이는 1당 0.05초이고 20을 입력 시 1초입니다.
4 20이라고 악보에 적은 후 연주시 4(도)를 연주 후 1초 후에 다음으로 연주할 음으로 넘어가게 됩니다.

음에 F를 입력시 해당 음을 연주할때 양손의 아이템을 바꿉니다.
4 2 5F(F5의 형태도 가능) 2 를 악보에 적으면 도를 연주한 후 양손의 아이템을 바꾸어 레를 연주합니다.
(바꾼 후 연주할 음을 앞이나 뒤에 넣어주지 않으면 0(파♯)으로 연주함)

음에 C숫자(1~9)를 입력시 해당 음을 연주할때 숫자에 해당하는 슬롯으로 이동합니다.
4 2 5C2(C25의 형태도 가능) 2 를 악보에 적으면 도를 연주한 후 2번 슬롯으로 이동해 레를 연주합니다.
(이동한 후 연주할 음을 앞이나 뒤에 넣어주지 않으면 0(파♯) 으로 연주함)

F와 C 명령은 해당 음절(예 4F 5C1 6)의 슬롯 변경/이동 명령을 모두 수행 후 최종 상태의 악기로 연주합니다.

음에 L숫자를 입력시 숫자에 해당하는 슬롯에 악보가 존재한다면 현재 악보를 중단하고 해당 악보로 넘어가게 되고,
만약 존재하지 않는다면 현재 악보를 계속해서 연주합니다.
반드시 이전에 연주했던 음의 길이가 1 이상이어야 악보가 넘어가집니다. (악용방지를 위함)
(악보가 존재하여 넘어가게 될 시 해당 음절의 내용은 연주하지 않음 4 5 L1 에서 악보를 넘어가게 되면 4(도)와 5(레)는 무시됨)

아래와 같이 입력시 정상 작동

4 4 4# 4 8 60 8 4

도(4) 연주 후 4틱(0.2초)이 지나고 도#(4#) 연주 후 4틱(0.2초)이 지나고 솔(8) 연주 후 60틱(3초)이 지나고 솔(8) 연주 후 4틱(0.2초)이 지난 후 연주가 종료됩니다.

추가적인 작례 필요시 함께 올려놓은 악보 샘플을 참조해주세요.

Releases

No releases published

Packages

No packages published

Languages