디시인사이드 갤러리

마이너 갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

[일반] [스크립트+리소스] 방향표시 리소스팩

브혼갤로그로 이동합니다. 2024.05.19 22:14:22
조회 1316 추천 14 댓글 3
														

https://youtu.be/ZQGh7JTLxDU



29b4c223e6c631a960b6d8b11fd22529652be73c5073fd59752dbf11233659362b76ff18


29b4c223e6c631a960b6d8b11fd22529652be7225d68f2122b33b6363d0c5e0bfa58fff777



default.json


{
    "providers": [
        {
            "type": "bitmap",
            "file": "vskript:font/directionindicator_slide.png",
            "height": 48,
            "ascent": 24,
            "chars": ["⠐⠑⠒⠓⠔⠕⠖⠗"]
        },
        {
            "type": "bitmap",
            "file": "vskript:font/directionindicator_mark.png",
            "height": 48,
            "ascent": 24,
            "chars": ["⠘⠙⠚⠛⠜⠝⠞⠟"]
        },
        {
            "type": "space",
            "advances": {
                "⠁": 128,
                "⠂": 64,
                "⠃": 32,
                "⠄": 16,
                "⠅": 8,
                "⠆": 4,
                "⠇": 2,
                "⠈": -128,
                "⠉": -64,
                "⠊": -32,
                "⠋": -16,
                "⠌": -8,
                "⠍": -4,
                "⠎": -2,
                "⠏": -1
            }
        }
    ]
}



skript.sk


options:
    ID:ResourceCode


    SPACE+: ⠁⠂⠃⠄⠅⠆⠇
    SPACE-: ⠈⠉⠊⠋⠌⠍⠎⠏


function ResourceCode_space(value:integer) :: text:
    remove 1 from {_value}
    if {_value} > 0:
        set {_space::*} to "{@SPACE+}" split at "" where [ input is not "" ]
    else:
        set {_space::*} to "{@SPACE-}" split at "" where [ input is not "" ]
        set {_value} to abs({_value})


    set {_slide::*} to ""
    set {_scale::*} to 128, 64, 32, 16, 8, 4, 2, 1
    loop {_scale::*}:
        set {_div} to floor( {_value} / loop-value )
        loop {_div} times:
            add {_space::%loop-iteration-1%} to {_slide::*}
        set {_value} to round( {_value} - ( {_div} * loop-value ) )
    return join {_slide::*}

options:
    ID: DirectionIndicator


    SCALE: 2
    ANGLE_VIEW: 120
    ANGLE_SEG: 90
    ANGLE_DOT: 10


    META_INDICATOR: metadata "directionindicator" of {_p}
   
    KEY_SLIDE: ⠐⠑⠒⠓⠔⠕⠖⠗
    KEY_MARK: ⠘⠙⠚⠛⠜⠝⠞⠟


on unload:
    delete {{@ID}::*}


on load:
    # Slide Char
    set {_space::0} to ResourceCode_space(0)
    loop "{@KEY_SLIDE}" split at "" where [ input is not "" ]:
        set {{@ID}::slide::%loop-iteration%} to "%{_space::0}%%loop-value%"


    # Mark Char
    set {_space::-4} to ResourceCode_space(-4)
    loop "{@KEY_MARK}" split at "" where [ input is not "" ]:
        set {{@ID}::mark::%loop-iteration%} to "%{_space::-4}%%loop-value%%{_space::-4}%"


on join:
    set {_p} to player
    if {@META_INDICATOR} is not set:
        set {@META_INDICATOR} to BossBar_create("")
    set {_bossbar} to {@META_INDICATOR}
    {_bossbar}.addPlayer(player)


    while player is online:
        wait 1 tick
        set {_source} to createSource({_p}, {@ANGLE_VIEW}, {@SCALE})
        BossBar_modify({_bossbar}, {_source})


local function createSource(p:player, vAngle:number, scale:number) :: text:
    set {_iScale} to 1 / {_scale}
    set {_pAngle} to yaw of {_p}
    set {_hAngle} to {_vAngle} / 2
    set {_range::min} to ( {_pAngle} - {_hAngle} )
    set {_range::max} to ( {_pAngle} + {_hAngle} )


    # Set Slide
    loop integers from {_range::min} * {_scale} to {_range::max} * {_scale}:
        set {_i} to loop-iteration
        set {_a} to loop-integer * {_iScale}


        set {_mod} to mod({_a}, {@ANGLE_SEG})
        if {_mod} is {_iScale} or {@ANGLE_SEG} - {_iScale}:
            set {_slide::%{_i}%} to {{@ID}::slide::5}
        else if {_mod} is 0:
            set {_slide::%{_i}%} to {{@ID}::slide::6}
            if {_a} is 0 or 360:
                set {_mark::%{_i}%} to {{@ID}::mark::1}
            else if {_a} is -270 or 90:
                set {_mark::%{_i}%} to {{@ID}::mark::2}
            else if {_a} is -180 or 180:
                set {_mark::%{_i}%} to {{@ID}::mark::3}
            else if {_a} is -90 or 270:
                set {_mark::%{_i}%} to {{@ID}::mark::4}
        else if mod({_a}, {@ANGLE_DOT}) = 0:
            set {_slide::%{_i}%} to {{@ID}::slide::4}
        else:
            set {_slide::%{_i}%} to {{@ID}::slide::3}
       
        # Bar Edge
        set {_i::*} to 1 and 2, ({_vAngle}*{_scale})-1, ({_vAngle}*{_scale})
        set {_slide::%{_i::1}%} to {{@ID}::slide::1} if {_slide::%{_i::1}%} is {{@ID}::slide::3} or {{@ID}::slide::4}
        set {_slide::%{_i::2}%} to {{@ID}::slide::2} if {_slide::%{_i::2}%} is {{@ID}::slide::3}
        set {_slide::%{_i::3}%} to {{@ID}::slide::2} if {_slide::%{_i::3}%} is {{@ID}::slide::3}
        set {_slide::%{_i::4}%} to {{@ID}::slide::1} if {_slide::%{_i::4}%} is {{@ID}::slide::3} or {{@ID}::slide::4}


        # Center
        set {_slide::%{_hAngle} * {_scale} - 1%} to {{@ID}::slide::7}
        set {_slide::%{_hAngle} * {_scale}%} to {{@ID}::slide::8}
        set {_slide::%{_hAngle} * {_scale} + 1%} to {{@ID}::slide::7}
   
    # Set Entity Mark
    loop living entities where [ input is not {_p} ]:
        set {_v} to vector from {_p} to loop-entity
        vector length of {_v} < 24
        vector y of {_v} is between -8 and 8


        set {_eAngle} to ( yaw of {_v} ) - {_range::min}
        add 360 to {_eAngle} if {_eAngle} < 0
        remove 360 from {_eAngle} if {_eAngle} > 360
        set {_eAngle} to round( {_eAngle} * {_scale} )
        if loop-entity is a player:
            set {_mark::%{_eAngle}%} to {{@ID}::mark::5}
        else if loop-entity is animal:
            set {_mark::%{_eAngle}%} to {{@ID}::mark::6}
        else if loop-entity is monster:
            set {_mark::%{_eAngle}%} to {{@ID}::mark::7}
   
    # Set Bed Mark
    if bed of {_p} is set:
        set {_v} to vector from {_p} to bed of {_p}
        set {_bAngle} to ( yaw of {_v} ) - {_range::min}
        add 360 to {_bAngle} if {_bAngle} < 0
        remove 360 from {_bAngle} if {_bAngle} > 360
        set {_bAngle} to round( {_bAngle} * {_scale} )
        set {_mark::%{_bAngle}%} to {{@ID}::mark::8}


    # Create Chars
    loop {_vAngle}*2*{_scale} + 1 times:
        set {_i} to loop-number * {_iScale}
        set {_char::%{_i}%.1} to {_mark::%{_i}%}
        set {_char::%{_i}%.2} to {_slide::%{_i}%}


    return join {_char::*}



00b4de23e6c039a07aff87fb44816a6947831d2582871cab468b55df8d69768565e411cc4ae282a9d9b152c4c8fd2fd28887796cae58068b9f3a93a3d29a9d9d2ca1398ee9b1be16870a6c5860d9d9c2bebecd96a67c515091e6e84d341ef0a36fdbd142ea63e8cd8b



리소스팩 연습용으로 맨들어봤음

추천 비추천

14

고정닉 4

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 말머리 제목 글쓴이 작성일 조회 추천
2868 설문 힘들게 성공한 만큼 절대 논란 안 만들 것 같은 스타는? 운영자 24/06/10 - -
2869 AD 딥 블루 호라이즌 사전예약 6.14-7.4 운영자 24/06/14 - -
256009 공지 [구매 가이드] 마인크래프트를 조금 더 싸게 구매해보자! [33] 어른이갤로그로 이동합니다. 23.11.20 20702 43
193353 공지 갤에서 운영되는 서버 확인하고 함께 즐기자 ! ! [21] Karn갤로그로 이동합니다. 22.11.06 122250 124
259943 공지 [신문고] 게시물 신고/완장한테 하고싶은말 [490] 핵미41갤로그로 이동합니다. 23.12.12 13632 15
228522 공지 [스티브 갤러리 마인크래프트 정보글 모음집] [15] 핵미41갤로그로 이동합니다. 23.05.17 129913 92
232230 공지 1.20 여정과 이야기 업데이트 내용 총정리 [2] ㅇㅇ(58.238) 23.06.08 16264 80
226451 공지 [스티브 갤러리 개발/번역 디스코드] [8] 핵미41갤로그로 이동합니다. 23.05.07 63597 66
165469 공지 스티브 갤러리 이용 규칙 [5] 핵미41갤로그로 이동합니다. 22.05.27 146938 125
290801 정보 1.21 까다로운 시련 업데이트 내용 총정리: 2편 [3] ㅇㅇ갤로그로 이동합니다. 06:54 258 13
290800 정보 1.21 까다로운 시련 업데이트 내용 총정리: 1편 [2] ㅇㅇ갤로그로 이동합니다. 06:53 397 10
290795 일반 질삭튀 애미1뒤진1년아 [3] ㅇㅇ(121.135) 05:28 506 13
290782 모드 Alex's Cave : 사탕 공동 프리뷰 [4] Cosmomix갤로그로 이동합니다. 02:13 417 9
288583 정보 뉴비필독) 모드 크래시가 날 때 질문하는법 [29] ㅇㅇ(222.114) 06.02 2633 58
290648 모드 현재 모드계.jpg [16] ㅇㅇ(106.102) 06.14 1661 18
290646 일반 마크 크리퍼 키보드 언박싱 [11] 이캐갤로그로 이동합니다. 06.14 737 12
290643 일반 화 ㅈㄴ나서 동생 따먹음 [5] ㅇㅇ(118.235) 06.14 1342 24
290640 일반 1.21버전업뎃하고 옵티파인1.20.6설치했는데안돼요 [11] ㅇㅇ(118.235) 06.14 985 19
290563 정보 !! 1.21 출시 !! [4] ㅇㅇ(125.186) 06.14 1564 16
290529 일반 확실히 방패를 만들고 나서 내 인생이 달라졌다. [5] 리스RISS갤로그로 이동합니다. 06.13 652 13
290475 창작 코튼 라이플 L1 [8] 매너갤로그로 이동합니다. 06.13 734 12
290436 정보 리소스팩 자주 하는 질문들 [19] 삐유갤로그로 이동합니다. 06.13 1325 32
290231 회로 이중 문 [14] ㅇㅇ갤로그로 이동합니다. 06.11 1066 27
290229 건축 오늘 지은 건물 두채 [8] o(^-^)O갤로그로 이동합니다. 06.11 1480 24
290171 일반 닉 ㅁㅌㅊ? [7] Minecraft갤로그로 이동합니다. 06.11 1498 41
290149 장타서 재중 야생 장타섭 정상영업!! 합니댜 주소변경됨!! [10] 부재중갤로그로 이동합니다. 06.11 1144 13
290124 창작 love taste 스킨 만들었어요 [16] 삐유갤로그로 이동합니다. 06.10 1408 13
290118 서버정 [3분 스크립트 강좌] 실습: 혈압마라톤 (1) [9] 마리사06갤로그로 이동합니다. 06.10 585 11
290107 모드 All the Mods 9 - To the Sky 한국어 번역 (배포) [24] ProjectE갤로그로 이동합니다. 06.10 1117 24
290076 모드 똑똑한 크리퍼 모드 업데이트 [9] Karn갤로그로 이동합니다. 06.10 1321 15
290072 연재 [GTNH] 60. 이제는 잠시 쉬어야 할 때 [10] ㄷㄷ갤로그로 이동합니다. 06.10 714 11
290061 모드 만들었으면 하고 상상만 하는 1.12.2 모드팩 [32] 노란라마갤로그로 이동합니다. 06.10 1221 19
290034 모드 추후 네오포지 지원이 예정된 모드 목록.list [23] Create갤로그로 이동합니다. 06.10 1386 15
289961 일반 이거 경작지 왜 안적셔지는거에요? [19] ㅇㅇ(222.107) 06.09 1988 48
289906 일반 [ 중갤의 명령입니다. 지금부터 단타를 금합니다.] [19] ㅇㅇ(106.102) 06.09 1331 39
289870 모드 단모 - 최적화 모드팩 v2.0 [7] 츠이갤로그로 이동합니다. 06.09 960 15
289834 정보 [스크립트] CosmeticsCore 구현하기 [4] 브혼갤로그로 이동합니다. 06.09 581 11
289817 도트 배찌 도트 찍어봤어요 [7] Layla갤로그로 이동합니다. 06.09 969 16
289811 일반 혼자 하는 노치트 바닐라 야생 [10] baby갤로그로 이동합니다. 06.09 1555 19
289781 장타서 사진)스압)데이터100MB) 베드락 건축농사 잔잔힐링장타 렐름 서버 근황 [1] ㅇㅇ(136.23) 06.09 464 10
289767 모드 마인콜로니 애드온 개발 근황: Refined Storage 호환 [11] 쿠요_렌카갤로그로 이동합니다. 06.08 715 17
289723 모드 Techarium 모드 부활? [12] Create갤로그로 이동합니다. 06.08 1139 13
289666 일반 푸바오야 가지마 ㅠㅠㅠㅠ [5] ㅇㅇ(125.180) 06.08 1968 24
289604 창작 중세를 알려주겠다.gif [6] ㅇㅇ(39.118) 06.08 1532 16
289509 일반 뉴비 가구 몇개 만들어봤다 [5] HFL7갤로그로 이동합니다. 06.07 964 15
289508 서버정 [3분 스크립트 강좌] NPC 우클릭 기능 만들기 [9] 마리사06갤로그로 이동합니다. 06.07 993 17
289418 일반 이겜에 1.5만원? 하면할수록 존나 혜자다라는 생각밖에 안든다 [6] ㅇㅇ(118.235) 06.07 1685 17
289373 서버정 서버 운영하면서 느꼈던 확실히 최적화 하는 방법3 [12] KITE갤로그로 이동합니다. 06.06 1715 24
289206 일반 주딱부수기 [5] 내유외유갤로그로 이동합니다. 06.06 1396 55
289186 서버정 강화로얄(구 운지서버) 완성했다 휴~ [4] 아리스카갤로그로 이동합니다. 06.06 908 10
288754 대회 (2024.06.05 수정) 스티브 갤러리 [단타제작콘테스트] 개최 [72] 핵미41갤로그로 이동합니다. 06.03 2112 35
289140 서버정 [3분 스크립트 강좌] 대매검, /me, 귓말 방지 [7] 마리사06갤로그로 이동합니다. 06.05 699 15
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2