[#3] Winners of Skript Challenge - Area Fill

  • Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the comminuty!

    Now, what are you waiting for? Join the community now!

Gatt

Ruler
Retired Staff
Supporter
Addon Developer
Dec 8, 2016
148
21
18
Melbourne
gatt.space
It's time to announce the Winners of the 3rd Skript Challenge! Finally...
@BaeFell has given me the honour of deciding the winners (probably because he forgot again...). As such, it is my honour to announce the following 3 winners.

The selection process was quite simple, as most of the submissions a) didn't work properly, or achieve the needed result and b) were mostly based off of @LimeGlass's submission.

In no particular order, the winners are.

@LimeGlass - First Submission, Lowest amount of lines, Small and Simple and easily repeatable.
@Mr_Simba - Much like LimeGlass, but with extra detail in the included failsafe.
@Blueyescat - With added detail in the form of his arguments, added cancellation ability and more.

Congratulations to all the winners, and thank you to everyone else who submitted!
Just some helpful advice for future events;
1. Try to be original, there are always more than one way of achieving a goal. If you make the most longest and craziest response, then so be it. It's awesome in its own right.
2. While we're not against building off of others', at least add something new to it (ie; a stop feature)
3. Make sure it actually does what is required... There's one submission here that didn't even get close to the wanted result.

Thats all! Thanks a lot!

(Winners: Your badges will be given in due time, make sure to annoy @BaeFell if you haven't gotten it by next week)

(This was posted here, since @BaeFell forgot to give me permission to post in the proper place...)
 
And what about my script? It allows you to keep a tps server for a long time.
code_language.skript:
options:
    filter: air
    block: sponge
    wait: wait a tick
 
function text2Loc(location:string,world:world = "world") :: location:
    set {_location::*} to {_location} parsed as "x: %number%, y: %number%, z: %number%"
    return location({_location::1}, {_location::2}, {_location::3}, {_world})

function b(location:location):
    add {_location} to {_locations::*}
    add chunk of {_location} to {_chunks::*}
    set {_location} to chunk of {_location}
    set {_chunks::%{_location}%::*} to text2Loc("%{_locations::*}%")
    set {_location} to now
    execute console command "tps"
    while {_chunks::*} is set:
        loop {_chunks::*}:
            {_locations::*} isn't set:
                loop {_chunks::%loop-value%::*}:
                    add text2Loc("%loop-value-2%") to {_locations::*}
            while {_locations::*} is set:
                loop {_locations::*}:
                    loop blocks in radius 1 around loop-value-2:
                        loop-block = {@filter}
                        if chunk of loop-block = loop-value-1:
                            {@wait}
                            set loop-block to {@block}
                            add 1 to {_blocks}
                            load chunk chunk of location at loop-block #skellet 1.8.4
                            add location at loop-block to {_locations::*}
                        else if "%{_chunks::*}%" contains "%chunk of loop-block%":
                            add location of loop-block to {_chunks::%chunk of loop-block%::*}
                        else:
                            add chunk of loop-block to {_chunks::*}
                            add location of loop-block to {_chunks::%chunk of loop-block%::*}
                    remove loop-value-2 from {_locations::*}
                {@wait}
            broadcast "<green>%loop-value-1% complite!"
            unload chunk chunk of location at loop-block #skellet 1.8.4
            delete {_chunks::%loop-value%::*}
            remove loop-value from {_chunks::*}
            {@wait}
    execute console command "tps"
    broadcast "<green>all complite! blocks:""%{_blocks}%"" and time:""%difference between now and {_location}%"""
 
command b:
    trigger:
        b(location)
 
And what about my script? It allows you to keep a tps server for a long time.
code_language.skript:
options:
    filter: air
    block: sponge
    wait: wait a tick
 
function text2Loc(location:string,world:world = "world") :: location:
    set {_location::*} to {_location} parsed as "x: %number%, y: %number%, z: %number%"
    return location({_location::1}, {_location::2}, {_location::3}, {_world})

function b(location:location):
    add {_location} to {_locations::*}
    add chunk of {_location} to {_chunks::*}
    set {_location} to chunk of {_location}
    set {_chunks::%{_location}%::*} to text2Loc("%{_locations::*}%")
    set {_location} to now
    execute console command "tps"
    while {_chunks::*} is set:
        loop {_chunks::*}:
            {_locations::*} isn't set:
                loop {_chunks::%loop-value%::*}:
                    add text2Loc("%loop-value-2%") to {_locations::*}
            while {_locations::*} is set:
                loop {_locations::*}:
                    loop blocks in radius 1 around loop-value-2:
                        loop-block = {@filter}
                        if chunk of loop-block = loop-value-1:
                            {@wait}
                            set loop-block to {@block}
                            add 1 to {_blocks}
                            load chunk chunk of location at loop-block #skellet 1.8.4
                            add location at loop-block to {_locations::*}
                        else if "%{_chunks::*}%" contains "%chunk of loop-block%":
                            add location of loop-block to {_chunks::%chunk of loop-block%::*}
                        else:
                            add chunk of loop-block to {_chunks::*}
                            add location of loop-block to {_chunks::%chunk of loop-block%::*}
                    remove loop-value-2 from {_locations::*}
                {@wait}
            broadcast "<green>%loop-value-1% complite!"
            unload chunk chunk of location at loop-block #skellet 1.8.4
            delete {_chunks::%loop-value%::*}
            remove loop-value from {_chunks::*}
            {@wait}
    execute console command "tps"
    broadcast "<green>all complite! blocks:""%{_blocks}%"" and time:""%difference between now and {_location}%"""
 
command b:
    trigger:
        b(location)

It was far too long, and during testing; it didn't achieve the required result.
 
Give us #4! We need this Hype Train to role out! We've been riding the meme train far too long!