yusin12
대표칭호 없음
yusin_YT 1e0511f92377434a9f27b5724c29fbe3
게임버전 | 1.13.x, 1.14.x, 1.15.x, 1.16.x, 1.17.x, 1.18.x, 1.19.x |
---|
갈증 2번째 시간입니다! 이번에는 물 포션을 마시면 갈증이 사라지는 걸 만들어볼거에요!
구현 방법
1. 포션을 마시면 1점 올라가는 스코어보드 C생성
2. C의 점수가 1이상인 모든 플레이어에게 스코어보드A의 점수는 n씩 빼기
3. C의 점수가 1이상인 모든 플레이어에게 C의 점수 초기화
1. 포션을 마시면 1점 올라가는 스코어보드 C생성
/scoreboard objectives add C minecraft.used:minecraft.potion
포션을 사용하면 점수가 1 올라가는 스코어보드C를 생성
2. C의 점수가 1이상인 모든 플레이어에게 스코어보드A의 점수는 n씩 빼기
execute as @a[scores={C=1..}] at @s run scoreboard players remove @s A 15
만약 스코어보드C의 점수가 1이상인 모든 플레이어가 있다면.. 그 플레이거 기준으로.. 스코어보드A의 점수를 15점을뺀다.
3. C의 점수가 1이상인 모든 플레이어에게 C의 점수 초기화
execute as @a[scores={C=1..}] at @s run scoreboard players reset @s C
만약 스코어보드C의 점수가 1이상인 모든 플레이어가 있다면.. 그 플레이어 기준으로.. 스코어보드C의 값을 초기화 시킨다.
여기까지 완성하면 물 포션을 마셨을 때!
갈증이 하락하는걸 볼 수 있어요!
하지만!!! 이렇게 하면 물 포션을 계속 먹으면 갈증이 음수가 될 수가 있어요!
그래서 저희는 1가지 추가할겁니다!
add )
1. A의 값이 0이하 일 때 강제로 0으로 만들기
1. A의 값이 0이하 일 때 강제로 0으로 만들기
execute as @a[scores={A=..0}] at @s run scoreboard players set @s A 0
만약 스코어보드A의 점수가 0이하인 모든 플레이어가 있다면.. 그 플레이어 기준으로.. 자기자신의 스코어보드A값을 0으로 설정한다.
마무리이~~
네? 오늘은 왜 as, at socres={A=1}이런거 설명을 안해주냐구요?
에이 학생들... 거저먹으면 안데졍><
다음부터 어려운것만 설명해주고 나머지들은 알아서 하는겁니다!!
으쌰으쌰!
다음 커맨드 상점 커맨드
질문은 댓글도 괜찮고
디스코드도 괜찮아요!
상민#3372
댓글이 없습니다.
새로운 댓글을 등록해 주세요!