개인 자료란 (JE)

  서버 커뮤니티

Profile 사하 대표칭호 없음
Profile

질문하기 스크립트

스크립트 GUI

2020.01.08 조회 수 2724 추천 수 0

서버 스크립트를 사용하여 GUI를 오픈하려고 하는데 GUI가 안뜹니다.


서버 버전은 1.12.2 이고 스크립트 애드온은 


InvSK,GomSK,MarSK,SkQuery,Skellett,WildSkript 


를 적용 하였습니다.


제발 이거 원인 아시는분은 알려주세요 ㅠㅠ

14개의 댓글

DDang_
2020.01.09

스크립트 2.3.6 부터 GUI 기능이 내장되어 있습니다. 고로 SKquery는 필요없구요 GUI 여는데는 다른 에드온들이 필요하지 않고 그냥 Skellett 정도만 쓰셔도 됩니다. WildSkript 는 1.12.2 버전에서 Invsk로 바뀐걸로 압니다 에드온 많이 필요없어요

사하
2020.01.09
@DDang_

근데 Gui가 오픈이 불가능해요 ...

DDang_
2020.01.09
@사하

? 만드신 구문 좀 보여주실 수 있으세요? 도와드리겠습니다

사하
2020.01.10
@DDang_

variables:

{ZZZ.%player%} = 0

options:

서버: &b&l[ &f&lSYSTEM &b&l]

command /잠수 [] [] []:

trigger:

if arg 1 is not set:

message "&b&l========================================"

if player is op:

message "&7&l▶ &f&l/잠수 지역설정 : 잠수지역을 설정합니다."

message "&7&l▶ &f&l/잠수 지역삭제 : 잠수지역을 삭제합니다."

message "&7&l▶ &f&l/잠수 상점 : 잠수상점을 엽니다"

message "&7&l▶ &f&l/잠수 포인트 : 포인트를 확인합니다."

message "&b&l========================================"

if player is op:

message "&7&l▶ &f&l/잠수 상점설정 [포인트] : 잠수상점에 추가합니다"

message "&7&l▶ &f&l/잠수 초기화 : 잠수상점을 초기화 합니다."

message "&7&l▶ &f&l/잠수 설정 닉네임 : 포인트를 포인트를 설정합니다"

if arg 1 is "지역설정":

if player is op:

set {1Zlocations} to true

set {2Zlocations} to true

give 1 golden axe to player

message "{@서버} &a&l금 도끼를 들고 설정하실곳 좌 클릭 해주세요!"

message "{@서버} &c&l단 이상한곳에 하시면 잠수가 안먹힐수있습니다"

message "{@서버} &f&l이상한곳에 하셨을땐 &e&l/잠수 지역삭제"

stop

else:

message "{@서버} &c&l권한이 없습니다."

stop

if arg 1 is "지역삭제":

if player is op:

if {Zloc.point1} is not set:

if {Zloc.point2} is not set:

message "{@서버} &c&l설정된 잠수지역이 없습니다"

stop

delete {Zloc.point1}

delete {Zloc.point2}

message "{@서버} &c&l설정된 잠수지역을 삭제했습니다."

if arg 1 is "상점":

open chest with 6 row named "&a&lAFK SHOP" to player

loop {afk.item.list::*}:

add 1 to {_player}

set slot {_player}+8 of current inventory of player to loop-value

set slot 2 of current inventory of player to player head named "&f&l[ &a&lAFK Point &f&l]" with lore "&f&l%{afkpoint.%player%}% 점"

set slot 6 of current inventory of player to player head named "&f&l[ &a&lAFK Point &f&l]" with lore "&f&l%{afkpoint.%player%}% 점"

if arg 1 is "상점설정":

if player is op:

if arg 2 is not set:

message "{@서버} &c&l잠수 포인트 가격을 정해주세요!"

stop

set {_item} to player's tool

set 1th line of lore of {_item} to "&a가격 &f: &e%arg 2%"

set player's tool to air

add {_item} to {afk.item.list::*}

message "{@서버} &e잠수상점에 아이템이 추가되었습니다!"

stop

else:

message "{@서버} &c&l권한이 없습니다"

if arg 1 is "초기화":

if player is op:

delete {afk.item.list::*}

message "{@서버} &c&l잠수상점이 초기화 되었습니다!"

stop

else:

message "{@서버} &c&l권한이 없습니다"

if arg 1 is "설정":

if player is op:

if arg 2 is not set:

message "{@서버} &c&l플레이어를 입력해주세요!"

stop

if arg 3 is not set:

message "{@서버} &c&l포인트를 입력해주세요!"

stop

set {afkpoint.%arg 2%} to arg 3 parsed as integer

message "{@서버} &e&l%arg 2%님의 잠수포인트를 %arg 3%으로 설정하였습니다"

message "{@서버} &a&l당신의 잠수포인트가 %arg 3% 으로 설정되었습니다!" to arg 2 parsed as player

stop

if arg 1 is "포인트":

message "{@서버} &b&l나의 잠수포인트 &f&l :: &a&l%{afkpoint.%player%}%"

stop

 

every 1 tick:

loop all players:

if loop-player is within {Zloc.point1} to {Zloc.point2}:

if {ZZZ.%loop-player%} = 0:

message "{@서버} &a&l잠수를 시작합니다" to loop-player

add 1 to {ZZZ.%loop-player%}

if loop-player is not within {Zloc.point1} to {Zloc.point2}:

if {ZZZ.%loop-player%} = 1:

set {ZZZ.%loop-player%} to 0

message "{@서버} &c&l잠수를 종료합니다" to loop-player

every 20 seconds:

loop all players:

if loop-player is within {Zloc.point1} to {Zloc.point2}:

set {_safkpoint.%loop-player%} to random integer between 0.9 and 10

add {_safkpoint.%loop-player%} to {afkpoint.%loop-player%}

message "{@서버} &f&l잠수한지 20초가 지나서 %{_safkpoint.%loop-player%}%포인트 를 지급받았습니다" to loop-player

on inventory click:

if inventory name of current inventory of player contains colored "&a&lAFK SHOP":

cancel event

if click item is not air:

if click item is not player head:

set {_SHOP::*} to lore of click item split by "||"

set {_item} to {_SHOP::1}

replace all "가격" and ":" and "원" and " " with "" in {_item}

set {_item} to uncolored {_item} parsed as integer

if {afkpoint.%player%} >= {_item}:

close player's inventory

set {_aitem} to click item

set 1th line of lore of {_aitem} to "&f "

give click item to player

subtract {_item} from {afkpoint.%player%}

wait 1 tick

open chest with 6 row named "&a&lAFK SHOP" to player

loop {afk.item.list::*}:

add 1 to {_player}

set slot {_player}+8 of current inventory of player to loop-value

set slot 2 of current inventory of player to player head named "&f&l[ &a&lAFK Point &f&l]" with lore "&f&l%{afkpoint.%player%}% 점"

set slot 6 of current inventory of player to player head named "&f&l[ &a&lAFK Point &f&l]" with lore "&f&l%{afkpoint.%player%}% 점"

else:

send "{@서버} &c&l당신은 잠수포인트가 부족합니다"

else:

message "{@서버} &e&l해당아이템은 구매불가 상품입니다"

 

on right click on entity: #&b&lAFK 이라는 NPC 생성하시면 자동으로 잠수상점이랑 연결됩니다.

if entity's name is "&b&lAFK":

wait 1 tick

open chest with 6 row named "&a&lAFK SHOP" to player

loop {afk.item.list::*}:

add 1 to {_player}

set slot {_player}+8 of current inventory of player to loop-value

set slot 2 of current inventory of player to player head named "&f&l[ &a&lAFK Point &f&l]" with lore "&f&l%{afkpoint.%player%}% 점"

set slot 6 of current inventory of player to player head named "&f&l[ &a&lAFK Point &f&l]" with lore "&f&l%{afkpoint.%player%}% 점"

 

on leftclick:

if player's tool is golden axe:

if {1Zlocations} is set:

cancel the event

delete {1Zlocations}

set {Zloc.point1} to location of block

message "{@서버} &d&l1번구역을 설정했습니다"

stop

if {2Zlocations} is set:

delete {2Zlocations}

cancel the event

set {Zloc.point2} to location of block

message "{@서버} &d&l2번구역을 설정했습니다"

stop

on chat:

if {set.%player%} is set:

set {exit.%player%} to true

message "{@서버} &c&l잠수중 채팅을치셔서 잠수가 취소되었습니다!"

on command:

if {set.%player%} is set:

set {exit.%player%} to true

message "{@서버} &c&l잠수중 커맨드를 치셔서 잠수가 취소되었습니다!"

 

 

이건데 GUI는 열게 했는데 아이템구매를 못 하네요

DDang_
2020.01.10
@사하

저 구문으로 열렸으면 스크립트는 일단 2.3.6버전이 아닌거네요 / 원래 구문에서 건든부분이 있었나요?

사하
2020.01.10
@DDang_

아뇨 건든건 없고 스크립트 버전 2.4 입니다,

DDang_
2020.01.10
@사하

? 그런데 chest만으로도 열린다고요? 신기하네요 그럼 인게임 내에서 /sk reload all 또는 /sk reload (해당 스크립트 이름) 치셔서 나오는 문구 적어주실 수 있나요

사하
2020.01.10
@DDang_

{_SHOP::*} can't be set to 'lore of click item split by ""||"" because the latter is not anobject (잠수.sk, line 105: set {_SHOP::*} to lore of click item split by ""||"")

이렇게 뜹니다.

DDang_
2020.01.10
@사하

상위에선 lore of click item split by ""||"이 구문에서 "||"이 부분을 못쓰는 걸로 알고 있습니다. 다만 뭘로 바꿔야 하는지는 제 역량 부족으로 당장 말해드릴 수 없으나 한번 찾아보겠습니다

사하
2020.01.10
@DDang_

넵 감ㅅ합니다 ㅜㅜ

DDang_
2020.01.10
@사하

set {_SHOP::*} to lore of click item 으로 하세요

사하
2020.01.10
@DDang_

그거 해도 아이템이 점수가 있는데 점수가 부족하다고 구매가 불가능 하네요

DDang_
2020.01.10
@사하

./sk reload all 해서 오류 확인해주세요

kim0929
2022.01.22

저도 알고싶은거 있어요 reload 하는데 can't understand 이런거만 나오고 명령오도 안떠요 애드온은 skellett 쓰고있어요 스크립트버전은 2.6이예요