개인 자료란 (JE)

  서버 커뮤니티

Profile Mintae1106 대표칭호 없음
Profile

질문하기 스크립트

마크 채팅 쿨타임 문제

2024.12.22 조회 수 69 추천 수 0
이해도 중급자 
게임버전 (JE) 1.20.1 
게임버전 (BE) 관련없음 

variables:

    {serverchatingcooltime.%player%} = 0

    

every 10 tick:

    loop all players:

        if {serverchatingcooltime.%uuid of loop-player%} > 0:

            while {serverchatingcooltime.%uuid of loop-player%} = 0:

                wait 20 ticks

                remove 1 from {serverchatingcooltime.%uuid of loop-player%}

command /서버챗리셋:

    trigger:

        send "<##084CFB>[<##1556FB>C<##2161FB>h<##2E6BFB>a<##3B76FC>t<##4780FC>C<##548AFC>o<##6195FC>o<##6E9FFC>l<##7AA9FC>t<##87B4FD>i<##94BEFD>m<##A0C9FD>e<##ADD3FD>] &b설정 되었습니다" to player

        loop all players:

            set {serverchatingcooltime.%uuid of loop-player%} to 0

            

command /서버챗쿨타임설정 [<text>]:

    trigger:

        if player is op:

            if arg 1 is not set:

                send "<##084CFB>[<##1556FB>C<##2161FB>h<##2E6BFB>a<##3B76FC>t<##4780FC>C<##548AFC>o<##6195FC>o<##6E9FFC>l<##7AA9FC>t<##87B4FD>i<##94BEFD>m<##A0C9FD>e<##ADD3FD>] &b채팅 쿨타임을 숫자로 쳐주세요 (초)" to player

            else:

                set {serverchatingcooltime} to arg 1

                set {serverchatingcooltime.%player%} to 0

                send "<##084CFB>[<##1556FB>C<##2161FB>h<##2E6BFB>a<##3B76FC>t<##4780FC>C<##548AFC>o<##6195FC>o<##6E9FFC>l<##7AA9FC>t<##87B4FD>i<##94BEFD>m<##A0C9FD>e<##ADD3FD>] &b설정 되었습니다 (%{serverchatingcooltime}%초)" to player


on chat:

    if player is not op:

        if {serverchatingcooltime.%player%} is not 0:

            cancel event

            send "<##084CFB>[<##1556FB>C<##2161FB>h<##2E6BFB>a<##3B76FC>t<##4780FC>C<##548AFC>o<##6195FC>o<##6E9FFC>l<##7AA9FC>t<##87B4FD>i<##94BEFD>m<##A0C9FD>e<##ADD3FD>] &b현제 쿨타임 입니다 (%{serverchatingcooltime.%player%}%초)" to player

        else:

            set {serverchatingcooltime.%player%} to "%{serverchatingcooltime}%"

에서 이거 변수가 안 줄어들고 계속 쿨타임이 유지됩니다 혹시 해결방법이있나요?





4개의 댓글

코코냐
2024.12.22

뜯어고칠게 한둘이 아닙니다. 조건문부터 시작해서 루프 자체도 한명 끝냘때까지 다른 사람 쿨타임은 손도 안대게 되어있습니다.

Mintae1106
2024.12.22
@코코냐

그럼 처음부터 해야하나요?

 

Mintae1106
2024.12.22
@Mintae1106

command /서버챗쿨타임설정 []:

trigger:

if player is op:

if arg 1 is not set:

send "<##084CFB>[<##1556FB>C<##2161FB>h<##2E6BFB>a<##3B76FC>t<##4780FC>C<##548AFC>o<##6195FC>o<##6E9FFC>l<##7AA9FC>t<##87B4FD>i<##94BEFD>m<##A0C9FD>e<##ADD3FD>] &b채팅 쿨타임을 숫자로 쳐주세요 (초)" to player

else:

set {serverchatingcooltime} to arg 1

set {serverchatingcooltime.%player%} to 1

send "<##084CFB>[<##1556FB>C<##2161FB>h<##2E6BFB>a<##3B76FC>t<##4780FC>C<##548AFC>o<##6195FC>o<##6E9FFC>l<##7AA9FC>t<##87B4FD>i<##94BEFD>m<##A0C9FD>e<##ADD3FD>] &b설정 되었습니다 (%{serverchatingcooltime}%초)" to player

 

on chat:

if player is not op:

if {serverchatingcooltime.%player%} is 0:

cancel event

send "<##084CFB>[<##1556FB>C<##2161FB>h<##2E6BFB>a<##3B76FC>t<##4780FC>C<##548AFC>o<##6195FC>o<##6E9FFC>l<##7AA9FC>t<##87B4FD>i<##94BEFD>m<##A0C9FD>e<##ADD3FD>] &b현제 쿨타임 입니다 (%{serverchatingcooltime.%player%}%초)" to player

wait %{serverchatingcooltime.%player%}% seconds

set {serverchatingcooltime.%player%} to 1

else:

set {serverchatingcooltime.%player%} to 0

 

이렇게 고쳤습니다

코코냐
2024.12.23
@Mintae1106

전체적은 틀 자체는 아까보다 냣습니다. 다만 제대로 동작하기엔 아직 수정할게 많아 보입니다.

어떤 변수가 어떤 역할인지를 조심히 생각하며 설정해봅시다.

뉴스 및 창작물
/files/thumbnails/255/028/004/262x150.crop.jpg?20250416153632

업데이트

마인크래프트 자바 스냅숏 25w16a 한국어 번역본 (Minecraft Snapshot 25w16a)

updater

2025-04-16

0

/files/thumbnails/036/025/004/262x150.crop.jpg?20250411144649

업데이트

마인크래프트 자바 스냅숏 25w15a 한국어 번역본 (Minecraft Snapshot 25w15a)

updater

2025-04-09

0

/files/thumbnails/159/021/004/262x150.crop.jpg?20250402093702

업데이트

광산제작 업데이트 (The Craftmine 업데이트): 한국어 번역본

updater

2025-04-02

0

/files/thumbnails/729/017/004/262x150.crop.jpg?20250326233109

업데이트

마인크래프트 자바 1.21.5 출시 (Minecraft Java 1.21.5 Released): 한국어 번역본

updater

2025-03-26

0

/files/thumbnails/202/016/004/262x150.crop.jpg?20250323230938

소식

Minecraft LIVE - 2025 March 내용 요약

노을넴

2025-03-23

2