Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- on script load:
- import "java.lang.Math"
- import "java.lang.System"
- import "java.lang.Long"
- function A_getTime(p: player) :: string:
- set {_sec} to 1000
- set {_min} to 60 * {_sec}
- set {_hour} to 60 * {_min}
- set {_day} to 24 * {_hour}
- set {_ms} to {aStats::time::%{_p}%} * 1000
- set {_ms} to {_ms} parsed as number
- set {_res} to ""
- if {_ms} > {_day}:
- set {_res} to "%{_res}% %floor({_ms} / {_day})% dni "
- set {_ms} to {Math}.floorMod({_ms} and {_day})
- if {_ms} > {_hour}:
- set {_res} to "%{_res}%%floor({_ms} / {_hour})% godz. "
- set {_ms} to {Math}.floorMod({_ms} and {_hour})
- if {_ms} > {_min}:
- set {_res} to "%{_res}%%floor({_ms} / {_min})% min. "
- set {_ms} to {Math}.floorMod({_ms} and {_min})
- if {_ms} > {_sec}:
- set {_res} to "%{_res}%%floor({_ms} / {_sec})% sek."
- set {_ms} to {Math}.floorMod({_ms} and {_sec})
- return {_res}
- function A_getTop(s: string) :: string:
- loop {aStats::%{_s}%::*}:
- set {_lista::%loop-index%} to loop-value
- set {_x} to size of {_lista::*}
- loop {_x} times:
- loop {_lista::*}:
- if {_v.%loop-number%} is not set:
- set {_v.%loop-number%} to loop-value-2
- set {_n.%loop-number%} to loop-index
- if loop-value-2 is larger than {_v.%loop-number%}:
- set {_v.%loop-number%} to loop-value-2
- set {_n.%loop-number%} to loop-index
- delete {_lista::%{_n.%loop-number%}%}
- set {_ret} to ""
- loop {_x} times:
- loop-number is smaller than or equal to 10:
- if {_s} is "time":
- set {_p} to {_n.%loop-number%} parsed as offlineplayer
- set {_ret} to "||&cTOP %loop-number%: &6%{_n.%loop-number%}% &7Czas na serwerze: &c%A_getTime({_p})%"
- else:
- set {_ret} to "||&cTOP %loop-number%: &6%{_n.%loop-number%}% &8(&c%{_v.%loop-number%}% &6pkt&8)"
- return {_ret}
- on join:
- if {aStats::kox::%player%} is not set:
- if {aStats::time::%player%} is not set:
- set {aStats::time::%player%} to 0
- set {aStats::kox::%player%} to 0
- set {aStats::refil::%player%} to 0
- set {aStats::stone::%player%} to 0
- set {aStats::obsidian::%player%} to 0
- set {aStats::kills::%player%} to 0
- on break:
- if event-block is stone:
- add 1 to {aStats::stone::%player%}
- stop
- if event-block is obsidian:
- add 1 to {aStats::obsidian::%player%}
- stop
- on death of player:
- loop all players:
- if "%loop-player%" is "%attacker%":
- add 1 to {aStats::kills::%attacker%}
- stop
- on eat of 322:
- if data of event-item is 0:
- add 1 to {aStats::refil::%player%}
- stop
- add 1 to {aStats::kox::%player%}
- stop
- command /top:
- trigger:
- open chest with 3 rows named "&9&lTop 10." to player
- wait 2 tick
- set {_x::*} to "time", "kox", "refil", "stone", "obsidian" and "kills" #Tego nie zmieniaj !!!
- #Tutaj masz sloty w gui, po kolei: na time masz 0 slot na kox masz 5 slot itd..
- set {_slot::*} to 0, 5, 7, 9, 12 and 17
- #Tu jest analogicznie co wyżej, tylko że nazwa itemów.
- set {_name::*} to "Przegrany czas", "Zjedzone koxy", "Zjedzone refile", "Wykopany kamien", "wykopany obsydian" and "Zabici gracze"
- #Tu wyswietlane itemy. Analogicznie co wyzej.
- set {_items::*} to clock, 322:1, 322:0, stone, obsidian and diamond sword of sharpness 5
- loop {_x::*}:
- set {_slot} to "%loop-index%" parsed as integer
- #set the slot {_slot::%loop-index%} of {_x} to {_items::%loop-index%} named "%coloured {_name::%loop-index%}%" with lore "%A_getTop(loop-value)%"
- set player's current inventory's slot {_slot::%loop-index%} to {_items::%loop-index%} named "%coloured {_name::%loop-index%}%" with lore "%A_getTop(loop-value)%"
- on inventory click:
- if inventory name of player's current inventory is "&9&lTop 10.":
- cancel event
- every 1 second:
- loop all players:
- add 1 to {aStats::time::%loop-player%}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement