목천호요
대표칭호 없음
이해도 | 1.12 |
---|---|
게임버전 (JE) | 모드버킷 |
스크립트 버전 | 입문자(아무것도 몰라요) |
안녕하세요 배포된 돈 스크립트랑 주식 스크립트를 연동시킬려고 하는데 자꾸 막히네요;; 도와주세요;
돈.
command /돈관리 [<Text>] [<player>] [<Text>]: description: 서버의 돈 시스템을 담당하는 명령어입니다. usage: &7명령어가 올바르지 않습니다. 명령어를 확인해주시기 바랍니다. permission: money.* permission message: {@접두사} &c당신은 권한이 없어서 해당 명령어 사용이 불가능 합니다. trigger: if arg 1 is not set: send "{@접두사} &f/돈관리 설정 [플레이어] [금액] &7- 플레이어의 돈을 설정합니다." send "{@접두사} &f/돈관리 확인 [플레이어] &7- 플레이어의 돈을 확인합니다." send "{@접두사} &f/돈관리 주기 [플레이어] [금액] &7- 플레이어에게 돈을 줍니다." if arg 1 is set: if arg 1 is not "설정" or "확인" or "주기": send "{@접두사} &a%arg 1%&f 어절은 올바르지 않은 어절입니다." if arg 1 is "설정": if arg 2 is set: if arg 3 is set: set arg 2's money to arg 3 parsed as integer send "{@접두사} &a&l%arg 2%&f님의 돈을 &e&l%arg 3%&f원으로 설정하였습니다." send "{@접두사} &6%player%&f님께서 &6%arg 2%&f님의 돈을 &e&l%arg 3%&f원으로 설정했습니다." to arg 2 else: send "{@접두사} &f올바른 금액을 입력해주세요." else: send "{@접두사} &f올바른 플레이어명을 입력해주세요." if arg 1 is "확인": if arg 2 is set: set {_m2} to "%arg 2's money%" replace all "$" with "" in {_m2} send "{@접두사} &a&l%arg 2%&f님의 보유중인 돈은 &e&l%{_m2}%원&f 입니다." else: send "{@접두사} &f올바른 플레이어명을 입력해주세요." if arg 1 is "주기": if arg 2 is set: if arg 3 is set: add arg 3 parsed as integer to arg 2's money send "{@접두사} &a&l%arg 2%&f님에게 &e&l%arg 3%&f원을 지급하였습니다." send "{@접두사} &6%player%&f님께서 &6%arg 2%&f님에게 &e&l%arg 3%&f원을 지급하였습니다." to arg 2 else: send "{@접두사} &f올바른 금액을 입력해주세요." else: send "{@접두사} &f올바른 플레이어명을 입력해주세요." on rightclick: if name of player's tool contains "{@접두사}": set {_money} to colored name of player's tool replace all "{@접두사}" and "&e&l" and "원" and " " with "" in {_money} remove 1 of player's tool from player's inventory set {_money} to uncolored {_money} parsed as integer add {_money} to player's money message "" message "{@접두사} &f당신은 &e수표&f를 사용하여 %{_money}%&f원을 얻으셨습니다." message "" stop command /수표 [<text>] [<integer>]: trigger: if arg 1 is set: if arg 1 is "발행": if arg 2 is set: if player's money >= arg 2: if arg 2 >= 5000: remove arg 2 from player's money give 1 of paper named "{@접두사} &e&l%arg 2%&f원" with lore "||&eㄴ &f우클릭 시 &e&l수표&f를 돈으로 환전합니다." to player else: send "{@접두사} &f5000원 이상만 발행이 가능합니다." else: send "{@접두사} &f보유중인 금액보다 많은 금액을 발행할수 없습니다." else: send "{@접두사} &f올바른 금액을 입력해주세요." else: send "{@접두사} &f/수표 발행 [금액] &7- 돈을 수표로 발행합니다." else: send "{@접두사} &f/수표 발행 [금액] &7- 돈을 수표로 발행합니다." command /돈 [<string>] [<string>] [<integer>]: trigger: if arg 1 is not set: set {_m} to "%player's money%" replace all "$" with "" in {_m} send "&f" send "{@접두사} &f보유 돈: &e&l%{_m}% 원" send "" send "{@접두사} &f/수표 발행 [금액] &7 - 돈를 수표로 발행합니다." send "{@접두사} &f/돈 보내기 [닉네임] [금액] &7- 돈을 보낼수 있습니다." send "{@접두사} &f/돈 순위 &7- 돈 순위를 확인 합니다." send "" else if arg 1 is "보내기": if arg 2 is not set: send "{@접두사} &f돈을 보낼 플레이어를 입력해 주세요." exit if arg 3 is not set: send "{@접두사} &f돈을 보낼 금액을 입력해 주세요." exit if arg 3 > player's money: send "{@접두사} &C돈이 부족 합니다 !" exit if arg 3 <= 0: send "{@접두사} &f올바른 금액을 입력하세요!" exit execute player command "/pay %arg 2% %arg 3%" exit else if arg 1 is "순위": execute player command "balancetop" exit
주식.
#{stock::*} 이름 #{stock::*::*} 처음가 #{stock::*::*::*} 현재가 #{stock::*::*::*::*} 증가,감소값 options: S : &f[&e리치리치&f] variables: {stocktime} = 300 every 1 second: if {stocktime} <= 0: updown() set {stocktime} to 300 loop all players: if name of loop-player's current inventory is "{@S} 주식": loop {stock::*}: set slot loop-index parsed as integer -1 of loop-player's current inventory to book named "&f%loop-value-2%" with lore "" and "&f처음 가격 : &b%{stock::%loop-index%::1}%원" and "&f현재 가격 : &a%{stock::%loop-index%::1::1}%원" and "" and "&f증감 : &5%{stock::%loop-index%::1::1::1}%" remove 1 from {stocktime} loop all players: if name of loop-player's current inventory is "{@S} 주식": set slot 45 of loop-player's current inventory to clock named "&f[ &b남은시간 &f] &a%{stocktime}%초" stop command /주식 [<text>] [<text>] [<integer>]: permission: skript.stock.open trigger: if arg-1 is not set: stockopen(player) stop if player is op: if arg-1 is "도움말": send "" send "{@S} /주식 도움말" send "{@S} /주식 추가" send "{@S} /주식 삭제" send "{@S} /주식 가격초기화" send "" stop if arg-1 is "가격초기화": loop {stock::*}: set {stock::%loop-index%::1::1} to {stock::%loop-index%::1} send "{@S} 주식의 가격이 초기화되었습니다." stop if arg-1 is "추가": if arg-2 is not set: send "{@S} 추가할 주식 이름을 입력하세요." stop if arg-3 is not set: send "{@S} 주식의 가격을 설정 해 주세요." stop loop {stock::*}: if {stock::%loop-index%} is arg-2: send "그 이름의 주식은 이미 있습니다." stop set {_num} to 1 loop {stock::*}: add 1 to {_num} set {stock::%{_num}%} to arg-2 set {stock::%{_num}%::1} to arg-3 set {stock::%{_num}%::1::1} to arg-3 send "{@S} %arg-2%주식이 %arg-3%원으로 등록되었습니다." stop if arg-1 is "삭제": loop {stock::*}: if {stock::%loop-index%} is arg-2: delete {stock::%loop-index%} send "{@S} {stock::%loop-index%}주식이 삭제되었습니다." stop send "{@S} 그 주식은 없습니다." stop function stockopen(p: player): open chest with 6 rows named "{@S} 주식" to {_p} wait 1 tick loop {stock::*}: set slot loop-index parsed as integer -1 of {_p}'s current inventory to book named "&f%loop-value%" with lore "" and "&f처음 가격 : &b%{stock::%loop-index%::1}%원" and "&f현재 가격 : &a%{stock::%loop-index%::1::1}%원" and "" and "&f증감 : &5%{stock::%loop-index%::1::1::1}%" set slot 49 of {_p}'s current inventory to sign block named "&f[ &e주식 도움말 &f]" with lore "&f[ &bLEFT CLICK &f] 주식 1개 구매" and "&f[ &bSHIFT LEFT CLICK &f] 주식 64개 구매" and "&f[ &cRIGHT CLICK &f] 주식 1개 판매" and "&f[ &cSHIFT RIGHT CLICK &f] 주식 64개 판매" set slot 45 of {_p}'s current inventory to clock named "&f[ &b남은시간 &f] &a%{stocktime}%초" function updown(): loop {stock::*}: set {_n} to random integer between -1000 and 1000 if {stock::%loop-index%::1::1} + {_n} <= 0: exit 2 sections set {stock::%loop-index%::1::1::1} to {_n} add {_n} to {stock::%loop-index%::1::1} broadcast "{@S} 주식 가격이 변동되었습니다." on inventory click: if name of player's current inventory is "{@S} 주식": cancel event if click type is left mouse button: wait 1 tick loop {stock::*}: if {stock::%loop-index%} is uncoloured name of click item: if {player's money} >= {stock::%loop-index%::1::1}: give 1 book named "%name of click item%" to player send "{@S} 주식을 구매하였습니다." remove {stock::%loop-index%::1::1} from {player's money} stop send "{@S} 돈이 부족합니다." stop if click type is left mouse button with shift: wait 1 tick loop {stock::*}: if {stock::%loop-index%} is uncoloured name of click item: if {player's money} >= 64 * {stock::%loop-index%::1::1}: give 64 book named "%name of click item%" to player send "{@S} 주식을 64개 구매하였습니다." remove 64 * {stock::%loop-index%::1::1} from {player's money} stop send "{@S} 돈이 부족합니다." stop if click type is right mouse button: wait 1 tick loop {stock::*}: if {stock::%loop-index%} is uncoloured name of click item: if player have book named "%name of click item%": remove 1 book named "%name of click item%" from player send "{@S} 주식을 팔아 %{stock::%loop-index%::1::1}%원을 얻었습니다." add {stock::%loop-index%::1::1} to {player's money} stop send "{@S} 당신은 이 주식을 가지고 있지 않습니다." if click type is right mouse button with shift: wait 1 tick loop {stock::*}: if {stock::%loop-index%} is uncoloured name of click item: if player have 64 book named "%name of click item%": remove 64 book named "%name of click item%" from player send "{@S} 주식을 팔아 %{stock::%loop-index%::1::1} * 64%원을 얻었습니다." add 64 * {stock::%loop-index%::1::1} to {player's money} stop send "{@S} 당신은 이 주식을 가지고 있지 않습니다."
스크립터브혼
2021.01.08돈 스크립트에서 플레이어의 돈을 money of player 익스프레션을 사용했고,
주식 스크립트에서는 {player's money} 변수를 사용해서 그렇습니다.
둘 다 익스프레션으로 하시거나, 변수로하시거나 둘 중 하나만 사용하세요.