개인 자료란 (JE)

  서버 커뮤니티

Profile SeoRong 대표칭호 없음

Seo_Rong 4361ed1b04af4b1c81f46c5e8d1bd3ea

Profile

강좌 자바 에디션(JE) 플러그인 개발

skript로 고퀄리티 귓속말을 구현해보자

2024.12.08 조회 수 790 추천 수 0
분야 스크립트 
장르 채팅 

# 사전 닉네임 설정 명령어

command /닉네임 [<player>] [<string>] :

 trigger:

  # 두 번째 인자가 제공된 경우

  arg-2 is set:

   # 첫 번째 인자와 두 번째 인자를 저장

   set {%arg-1%} to arg-2

   set {%arg-2%} to arg-1

   # 플레이어 닉네임을 설정하는 명령어 실행

   execute player command "nte player %arg-1% prefix §l&f[%arg-2%]" 

  else:

   # 잘못된 사용법 안내

   send message "/닉네임 [플레이어 이름] [수정할 닉네임]" to player


# 플레이어가 서버에 접속했을 때

on join:

 {%player%} is set:

  # 플레이어의 탭 목록과 표시 이름을 기존 설정에 맞춰 설정

  set tablist name of player to "[%{%player%}%]"

  set the player's display name to "&f%{%player%}%"

  # 플레이어 이름 매핑

  set {%{%player%}%} to player

 else:

  # 새로운 플레이어의 기본 설정 저장

  set {%player%} to player


# 채팅 이벤트 처리

on chat:

 {whisper.select.%player%} is not set:

  # 채팅 메시지 포맷 지정

  set message format to "<%{%player%}%> %message%"

  exit

 {whisper.send.%player%} is set:

  # 귓속말 전송 상태 설정

  set {whisper.select.%player%} to {%{whisper.select.%player%}%}

  delete {whisper.send.%player%}

 {whisper.select.%player%} is true:

  # 이벤트 취소 및 귓속말 처리

  cancel event

  set {whisper.select.%player%} to message

  {%{whisper.select.%player%}%} is not set:

   # 대상 플레이어가 없을 경우 작업 취소

   send action bar "&c해당 플레이어가 없어 귓속말 작업을 취소합니다." to player

   delete {whisper.select.%player%}

   exit

  # 귓속말 전송 상태 업데이트

  set {whisper.select.%player%} to message

  send action bar "&a현재 %{whisper.select.%player%}%님에게 귓속말 중 입니다. 메뉴를 열어 취소할 수 있습니다."

 else:

  # 귓속말 작업 중 오류 발생 시

  cancel event

  {%{whisper.select.%player%}%} is not set:

   send action bar "&c해당 플레이어가 없어 귓속말 작업을 취소합니다." to player

   delete {whisper.select.%player%}

   exit

  message is "취소":

   # 귓속말 작업 취소 처리

   send action bar "&c귓속말 작업을 취소합니다." to player

   delete {whisper.select.%player%}

   delete {whisper.send.%player%}

   exit

   

  # 귓속말 전송 메시지 출력

  send action bar "&a현재 %{whisper.select.%player%}%님에게 귓속말 중 입니다. 메뉴를 열어 취소할 수 있습니다."

  send message "&a%{whisper.select.%player%}% << %message%" to player

  

  op player

  # 귓속말 메시지에 명령 실행 옵션 추가

  set {_command} to "/tellraw %{%{whisper.select.%player%}%}% {""text"":""&a%{%player%}% >> %message%"",""color"":""green"",""clickEvent"":{""action"":""run_command"",""value"":""/답장 %player% pass""},""hoverEvent"":{""action"":""show_text"",""contents"":[{""text"":""누르면 해당 인원에게 귓속말을 보낼 수 있습니다."",""color"":""blue""}]}}"

  execute player command {_command}

  deop player


# 귓속말 명령어

command /귓속말 [<player>] :

 trigger:

   # 귓속말 대상 설정

   set {whisper.select.%player%} to arg-1

   send action bar "&a현재 %{%{whisper.select.%player%}%}%님에게 귓속말 중 입니다. &c취소 &a를 입력하여 중지할 수 있습니다."


# 답장 명령어

command /답장 [<player>] :

 trigger:

   # 답장 대상 설정

   set {whisper.select.%player%} to arg-1

   set {whisper.send.%player%} to arg-1

   send action bar "&a현재 %{%{whisper.select.%player%}%}%님에게 귓속말 중 입니다. &c취소 &a를 입력하여 중지할 수 있습니다."





Warning
댓글이 없습니다.

새로운 댓글을 등록해 주세요!

뉴스 및 창작물
/files/thumbnails/259/181/004/262x150.crop.jpg?20260412161348

건축

Project hail mary 우주선

SHALDOPlus

2026-04-12

1

/files/thumbnails/798/179/004/262x150.crop.jpg?20260406214105

건축

프로젝트 헤일메리 [Minecraft] 1

SHALDOPlus

2026-04-06

1

/files/thumbnails/528/169/004/262x150.crop.jpg?20260301145407

건축

정신병원 탈출맵을 제작중이예요 :> 3

SHALDOPlus

2026-03-01

3

/files/thumbnails/472/161/004/262x150.crop.jpg?20260208155607

나의 GPU ☠️💀 4

SHALDOPlus

2026-02-08

0

/files/thumbnails/602/157/004/262x150.crop.jpg?20260130141854

상품

《마인크래프트 대탈출 게임 만들기》 출간!

다코미

2026-01-30

0

/files/thumbnails/873/156/004/262x150.crop.jpg?20260128131439

상품

《마인크래프트 블록 완벽 가이드》 출간!

다코미

2026-01-28

0

/files/thumbnails/317/150/004/262x150.crop.jpg?20260110144415

건축

광화문 구 경기도청사(1988)

창공

2026-01-10

2