Never Stop Dreaming: a platformer
@Stage\n\nwhen flag clicked\nset [page v] to [—]\nbroadcast (Intro v) and wait\n\nwhen I receive [play v]\nwait until <(PAGE) = [GAME]>\nrepeat until <(PAGE) = [Title]>\n    broadcast (tick v)\n    wait until <(D) = [3]>\n    wait until <(AUS) = [0]>\nend\n\nwhen I receive [_function v]\nset [d v] to [3]\nwait until <(PAGE) = [GAME]>\nrepeat until <(PAGE) = [Title]>\n    broadcast (b.tick v)\nend\n\nwhen flag clicked\nbroadcast (LOAD v)\n\nwhen I receive [intro v]\nset [page v] to [Intro]\n\nwhen I receive [end intro v]\nset [page v] to [Title]\nbroadcast (PAGE)\n\nwhen I receive [play v]\nset [page v] to [GAME]\n\nwhen I receive [title v]\nset [page v] to [Title]\nset [d v] to [-]\n\nwhen flag clicked\nset [sizing v] to [480]\nset [x vel type v] to [1]\nset [x speed v] to [7]\n\nwhen flag clicked\nset [deaths v] to [0]\n\nwhen I receive [play v]\nset [deaths v] to [0]\n\nwhen I receive [options v]\nset [page v] to [Options]\n\nwhen I receive [title v]\nset [d v] to [3]\n\nwhen I receive [_function v]\nConfigure Logs - [PLAY]\n\ndefine Configure Logs - [PLAY]\nwait (.1) seconds\nif <([backdrop # v] of [_stage_ v]) = [1]> then\n    add (join (join [LOG] [ ~ ]) (join [Time: \[] (join (join (current [hour v]) (join [:] (join (current [minute v]) [\]]))) (join [  Date: \[] (join (join (current [month v]) (join (join [/] (current [date v])) (join [/] (current [year v])))) [\]]))))) to [play log v]\nend\nif <not <([backdrop # v] of [_stage_ v]) = [1]>> then\n    Error - Request Denied\nend\n\nwhen I receive [death v]\nif <(SFX) = [On]> then\n    start sound [DEATH v]\nend\n\nwhen I receive [impact v]\nif <(SFX) = [On]> then\n    start sound [knock v]\nend\n\nwhen I receive [next level v]\nset [d v] to [-]\nstop [other scripts in sprite v]\nbroadcast (Newscreen v)\nwait (1) seconds\nNext level ((level) + (1))\n\nwait (.01) seconds\nchange [level v] by (1)\n\ndefine Next level (lvl id)\nif <(level) = [1]> then\n    set [d v] to [0]\n    set [level v] to (lvl id)\n    broadcast (play v)\n    wait (.01) seconds\n    set [level v] to (lvl id)\nelse\n    if <(level) = [2]> then\n        set [d v] to [0]\n        broadcast (STATS v)\n    end\nend\n\nwhen I receive [play v]\nbroadcast (_function v)\nwait (.01) seconds\nset [page v] to [GAME]\n\ndefine SETUP UL\nset [ul counter v] to [1]\ndelete all of [update logs v]\nrepeat (length of [bk ul v])\n    add (item (UL counter) of [bk ul v]) to [update logs v]\n    change [ul counter v] by (1)\nend\n\ndefine Add U Log (update)\nif <<[bk ul v] contains (update)?> = [false]> then\n    add (join [Update : ] (join (join [\[ ] (join (update) [ \]])) (join [  Date: \[] (join (join (current [month v]) (join (join [/] (current [date v])) (join [/] (current [year v])))) [\]])))) to [bk ul v]\nend\n\ndefine Reboot UL\ndelete all of [bk ul v]\nAdd U Log [Logs Created]\nAdd U Log [Game Art Finalized]\nAdd U Log [Edited TB, mobile controls added]\nSETUP UL\n\ndefine Reset Play Log\ndelete all of [play log v]\n\ndefine Green Flag Logs\nif <(length of [gfl v]) < [1]> then\n    switch backdrop to (backdrop1 v)\n    FirstTimeSinceRefresh\n    add (join (join [FIRST GFL LOG] [ ~ ]) (join [Time: \[] (join (join (current [hour v]) (join [:] (join (current [minute v]) [\]]))) (join [  Date: \[] (join (join (current [month v]) (join (join [/] (current [date v])) (join [/] (current [year v])))) [\]]))))) to [gfl v]\n    Run system\nelse\n    add (join (join [GFL LOG] [ ~ ]) (join [Time: \[] (join (join (current [hour v]) (join [:] (join (current [minute v]) [\]]))) (join [  Date: \[] (join (join (current [month v]) (join (join [/] (current [date v])) (join [/] (current [year v])))) [\]]))))) to [gfl v]\nend\n\nwhen flag clicked\nGreen Flag Clicked\n\ndefine Green Flag Clicked\nGreen Flag Logs\n\ndefine Show Logs\nwait (0) seconds\nhide list [play log v]\nwait (0) seconds\nhide list [gfl v]\nwait (0) seconds\nhide list [update logs v]\nwait (0) seconds\n\ndefine Hide Logs\nwait (0) seconds\nshow list [play log v]\nwait (0) seconds\nshow list [gfl v]\nwait (0) seconds\nshow list [update logs v]\nwait (0) seconds\nshow list [temporary file storage v]\nwait (0) seconds\nshow list [portal position\(s\) v]\nwait (0) seconds\n\ndefine FirstTimeSinceRefresh\nswitch backdrop to (backdrop1 v)\ndelete all of [gfl v]\ndelete all of [play log v]\ndelete all of [play log v]\ndelete all of [gfl v]\n\nwhen flag clicked\nHide Logs\n\nwhen I receive [stopped v]\nHide Logs\n\nwhen I receive [_function v]\ndelete all of [bk ul v]\n\nwhen flag clicked\n[NEW] Configure portal positions [LVL]\n\ndefine  [OLD] Configure Portal Positions (qty: current levels)\ndelete all of [portal position\(s\) v]\ndelete all of [temporary file storage v]\nadd [1] to [temporary file storage v]\nrepeat (qty: current levels)\n    add [Loading PORTAL SCRIPT...] to [portal position\(s\) v]\nend\nrepeat (5)\n    wait (0) seconds\nend\nrepeat ((qty: current levels) / (qty: current levels))\n    if <[1] = (temporary file storage)> then\n        replace item (temporary file storage) of [portal position\(s\) v] with (join (join (join (join [x: ] (join [529] [ ~ ])) [y: ]) [-214]) [ ~])\n        add ((temporary file storage) + (1)) to [temporary file storage v]\n        delete ((length of [temporary file storage v]) - (1)) of [temporary file storage v]\n    end\n    wait (.1) seconds\n    if <[2] = (temporary file storage)> then\n        replace item (temporary file storage) of [portal position\(s\) v] with (join (join (join (join [x: ] (join [-653] [ ~ ])) [y: ]) [140]) [ ~])\n        add ((temporary file storage) + (1)) to [temporary file storage v]\n        delete ((length of [temporary file storage v]) - (1)) of [temporary file storage v]\n    end\nend\nshow list [portal position\(s\) v]\n\nwhen I receive [stats v]\nset [page v] to [STATS]\n\ndefine run backround timer (start) (delay)\nset [backround timer v] to (start)\nwait (delay) seconds\nforever\n    change [backround timer v] by (.0158695286373141592654)\nend\n\ndefine reset backround timer\nset [backround timer v] to [0]\n\nwhen I receive [play v]\nforever\n    check for pass input\nend\n\ndefine check for pass input\nif <key ((letter (1) of (super secret)) v) pressed?> then\n    set [input1 v] to []\n    set [pass counter v] to [1]\n    set [ssp timer v] to [14]\n    repeat until <<(input1) = (super secret)> or <(ssp timer) < [1]>>\n        change [ssp timer v] by (-0.569)\n        if <key ((letter (pass counter) of (super secret)) v) pressed?> then\n            set [input1 v] to (join (input1) (letter (pass counter) of (super secret)))\n            change [pass counter v] by (1)\n            change [ssp timer v] by (7)\n        end\n        if <(input1) = (super secret)> then\n            [NEW] Configure portal positions []\n            broadcast (AH v)\n        end\n        if <(ssp timer) < [1]> then\n            end inputs\n        end\n    end\nelse\n    set [input1 v] to []\n    set [ssp timer v] to [READY]\nend\n\ndefine end inputs\ncheck for pass input\nset [input1 v] to []\nset [ssp timer v] to [READY]\nset [ssp timer v] to [10]\n\ndefine Error - Request Denied\nbroadcast (System Errors v)\ndouble-stop project\n\ndefine double-stop project\nrepeat (2)\n    stop [all v]\nend\n\ndefine Run system\nrepeat until <[1999999] < (backround timer)>\n    wait (0) seconds\nend\nswitch backdrop to (backdrop2 v)\nwait until <(PAGE) = [TITLE]>\nError - Request Denied\n\nwhen I receive [dialog v]\nset voice to (tenor v)::tts\nspeak [SYSTEM ERROR]::tts\nwait (0) seconds\nspeak [THE SERVER TIMED OUT! PLEASE REFRESH PROJECT!]::tts\n\nwhen flag clicked\nswitch backdrop to (backdrop1 v)\n\ndefine Clear logs (log1) and (log2)\nif <(log1) = [Play Log]> then\n    delete all of [play log v]\nend\nif <(log2) = [Play Log]> then\n    delete all of [play log v]\nend\nif <(log1) = [GFL]> then\n    delete all of [gfl v]\nend\nif <(log2) = [GFL]> then\n    delete all of [gfl v]\nend\n\ndefine Clear GFL and PL\nClear logs [Play Log] and [GFL]\n\nwhen I receive [stats v]\nset [page v] to [STATS]\nset [d v] to [-]\n\nwhen I receive [stopped v]\n [OLD] Configure Portal Positions [2]\n\nwhen I receive [ah v]\nchange [gametimecounter v] by (555)\n\ndefine [NEW] Configure portal positions (shortcut)\nrepeat (3)\n    add [placeholder] to [portal position\(s\) v]\nend\ndelete all of [portal position\(s\) v]\nset [decode prtl length v] to (length of (join (join (join (shortcut) [ 1c:]) (join [ ] [])) [ |]))\nadd [529] to [portal position\(s\) v]\nadd [-214] to [portal position\(s\) v]\nadd [-653] to [portal position\(s\) v]\nadd [140] to [portal position\(s\) v]\nadd [0] to [portal position\(s\) v]\nadd [0] to [portal position\(s\) v]\n\nrepeat (3)\n    add [placeholder] to [portal position\(s\) v]\nend\ndelete all of [portal position\(s\) v]\nset [decode prtl length v] to (length of (join (join (join (shortcut) [ 1c:]) (join [ ] [])) [ |]))\nadd (join (join (join (shortcut) [ 1x:]) (join [ ] [529])) [ |]) to [portal position\(s\) v]\nadd (join (join (join (shortcut) [ 1y:]) (join [ ] [-214])) [ |]) to [portal position\(s\) v]\nadd (join (join (join (shortcut) [ 2x:]) (join [ ] [-653])) [ |]) to [portal position\(s\) v]\nadd (join (join (join (shortcut) [ 2y:]) (join [ ] [140])) [ |]) to [portal position\(s\) v]\nadd (join (join (join (shortcut) [ 3x:]) (join [ ] [0])) [ |]) to [portal position\(s\) v]\nadd (join (join (join (shortcut) [ 3y:]) (join [ ] [0])) [ |]) to [portal position\(s\) v]\n\n@blank\n\n@intro\n\nwhen I receive [intro v]\nclone\nset volume to (100) %\n\ndefine clone\nswitch costume to (dot v)\nset [cloneid v] to [back]\ncreate clone of (_myself_ v)\nset [cloneid v] to [logo1]\ncreate clone of (_myself_ v)\nset [cloneid v] to [logo2]\ncreate clone of (_myself_ v)\nset [cloneid v] to [swipe]\ncreate clone of (_myself_ v)\nset [cloneid v] to [me]\nswitch costume to (intro v)\nwait (3.2) seconds\n\nwhen I start as a clone\ngo to x: (0) y: (0)\nset [beat v] to [.715]\nif <(cloneID) = [swipe]> then\n    go to [front v] layer\n    set [ghost v] effect to (0)\n    set size to (100) %\n    switch costume to (dot v)\n    go to x: (-500) y: (0)\n    set size to (300) %\n    switch costume to (end.swipe v)\n    go to x: (-500) y: (0)\n    wait (6) seconds\n    show\n    go to [front v] layer\n    glide (.4) secs to x: (0) y: (0)\n    go to [front v] layer\n    wait (.5) seconds\n    go to [front v] layer\n    go to [front v] layer\n    broadcast (end intro v)\n    glide (.4) secs to x: (0) y: (500)\n    go to [front v] layer\n    hide\n    delete this clone\nelse\n    if <(cloneID) = [back]> then\n        switch costume to (back v)\n        show\n    end\n    if <(cloneID) = [logo1]> then\n        switch costume to (logo1 v)\n        set size to (0) %\n        show\n        repeat (50)\n            change size by (size1)\n            set [size1 v] to ((((140) + ((size) * (-1))) / (2)) + ((.7) * (size1)))\n        end\n    end\n    if <(cloneID) = [logo2]> then\n        switch costume to (logo2 v)\n        set [beat v] to [.715]\n        set size to (0) %\n        wait (1.16) seconds\n        show\n        repeat (50)\n            go to [front v] layer\n            change size by (size1)\n            set [size1 v] to ((((138) + ((size) * (-1))) / (2)) + ((.2) * (size1)))\n        end\n        wait (.4) seconds\n        switch costume to (logo2 v)\n        repeat (4)\n            next costume\n            wait (.04) seconds\n        end\n        set [x v] to [-15]\n        repeat (20)\n            change x by (x)\n            change [x v] by (.9)\n        end\n        set [x v] to [40]\n        repeat (30)\n            set [x2 v] to (x position)\n            set [y2 v] to (y position)\n            bubblessss (x2) (y2)\n            change x by (x)\n            set [x v] to ((x) * (0.9059))\n            if <touching (_edge_ v)?> then\n                hide\n                delete this clone\n            end\n            if <not <(costume [name v]) = [logo2 8]>> then\n                next costume\n            end\n        end\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nset [beat v] to [.715]\n\nwhen I start as a clone\nif <(cloneID) = [logo1]> then\n    wait (2.89) seconds\n    repeat (20)\n        change [ghost v] effect by (5)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(cloneID) = [back]> then\n    set size to (134) %\n    switch costume to (back v)\n    wait (4.359) seconds\n    swipe\nend\n\ndefine swipe\nswitch costume to (back v)\nrepeat (13)\n    next costume\nend\n\nwhen I receive [end intro v]\nif <not <(cloneID) = [swipe]>> then\n    delete this clone\nend\nif <(cloneID) = [me]> then\n    repeat (10)\n        change volume by (-10)\n    end\nend\n\nwhen I start as a clone\nif <(cloneID) = [Bubble]> then\n    set size to (pick random (25) to (pick random (35) to (pick random (45) to (60)))) %\n    switch costume to (bubble v)\n    set [ghost v] effect to (100)\n    set x to (x2)\n    set y to (y2)\n    set y to (pick random (-30) to (30))\n    repeat (pick random (2) to (4))\n        change [ghost v] effect by (-20)\n        change x by (-3)\n    end\n    repeat (50)\n        change [ghost v] effect by (2)\n        change x by (-3)\n    end\n    delete this clone\nend\n\ndefine bubblessss (x2) (y2)\nset [x2 v] to (x2)\nset [y2 v] to (y2)\nset [cloneid v] to [bubble]\ncreate clone of (_myself_ v)\ncreate clone of (_myself_ v)\n\nwhen flag clicked\nEraseMemory\n\ndefine EraseMemory\nset [beat v] to [0]\nset [beat v] to [0]\nset [delay v] to [0]\nset [size1 v] to [0]\nset [x v] to [0]\nset [x2 v] to [0]\nset [y2 v] to [0]\n\nwhen I start as a clone\nif <(cloneID) = [Back]> then\n    play sound [FIX v] until done\nend\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\n@Player Hitbox\n\nwhen I receive [b.tick v]\nset size to (100) %\nset rotation style [left-right v]\ngo to x: (0) y: (0)\nshow\nset [ghost v] effect to (100)\n\nwhen flag clicked\nhide\n\nwhen I receive [death v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nset [ghost v] effect to (100)\nwait until <(D) = [0]>\nbroadcast (Glide v)\n\nwhen I receive [fade-in v]\nset [ghost v] effect to (100)\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nwait (.78) seconds\nset [d v] to [3]\n\nwhen flag clicked\nhide\n\nwhen I receive [b.tick v]\nif <<touching color (#bc66ff)?> or <<touching color (#9966ff)?> or <touching color (#8d54ff)?>>> then\n    broadcast (BOUNCE v)\nend\nif <<touching color (#feff66)?> or <<touching color (#e7e75c)?> or <touching color (#d6dd63)?>>> then\n    broadcast (BOUNCE2 v)\nend\n\nwhen I receive [play v]\nforever\n    if <touching color (#00cc39)?> then\n        broadcast (SetCHKPT v)\n        change [lvl ckpt v] by (1)\n        wait until <not <touching color (#01e442)?>>\n        set [saved x v] to (SCROLL X)\n        set [saved y v] to (SCROLL Y)\n    end\nend\n\nwhen I receive [death v]\nchange [deaths v] by (1)\n\nwhen I receive [play v]\nforever\n    if <<touching color (#0096db)?> or <touching color (#00adff)?>> then\n        broadcast (Death v)\n        wait until <not <(D) = [3]>>\n        wait until <(D) = [3]>\n    end\nend\n\nwhen I receive [next level v]\nset [lvl ckpt v] to [0]\n\nwhen I receive [title v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [_function v]\nforever\n    if <<touching color (#1d609f)?> or <touching color (#4b3d4b)?>> then\n        broadcast (Portal v)\n        wait (3) seconds\n        broadcast (NEXT LEVEL v)\n        wait until <not <<touching color (#1d609f)?> or <touching color (#4b3d4b)?>>>\n    end\nend\n\nwhen I receive [portal v]\nrepeat (10)\n    set [d v] to [POR]\nend\n\nwhen I receive [play v]\nforever\n    if <key (c v) pressed?> then\n        broadcast (Death v)\n        change [deaths v] by (0)\n        wait until <not <key (c v) pressed?>>\n    end\nend\n\nif <(D) = [0]> then\nend\n\nwhen I receive [newscreen v]\nrepeat (10)\n    set [d v] to [Pending]\nend\n\nwhen I receive [stats v]\nstop [other scripts in sprite v]\nhide\n\n@Snow\n\nwhen flag clicked\nhide\n\nwhen I receive [play v]\nwait until <(PAGE) = [GAME]>\nrepeat until <(PAGE) = [Title]>\n    if <(SNOW) = [On]> then\n        if <not <(D) = [-]>> then\n            create clone of (_myself_ v)\n            wait (e4) seconds\n            wait until <(AUS) = [0]>\n        end\n    end\nend\n\nwhen I start as a clone\nLAYER SET\nif <(stopped?) = [false]> then\n    point in direction (pick random (0) to (360))\n    set size to (pick random (100) to (150)) %\n    set [brightness v] effect to (900)\n    switch costume to (pick random (2) to (4))\n    set [ghost v] effect to (pick random (55) to (70))\n    if <(pick random (1) to (2)) = [2]> then\n        go to x: (pick random (-240) to (240)) y: (300)\n    else\n        go to x: (500) y: (pick random (-180) to (180))\n    end\n    if <(pick random (1) to (3)) = [2]> then\n        repeat until <<(x position) < [-239]> or <(y position) < [-179]>>\n            turn left (1) degrees\n            change y by (((PLAYER YV) / (1.5)) + (-3))\n            show\n            if <(D) = [3]> then\n                if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> then\n                    change x by ((((X SPEED) * (-1)) / (1.5)) + (-2.14))\n                end\n                if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>> then\n                    change x by (-1.2)\n                end\n                if <not <<<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> or <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>>>> then\n                    change x by (-3)\n                end\n            end\n            wait until <(AUS) = [0]>\n            if <[13] < (PLAYER YV)> then\n                if <[170] < (y position)> then\n                    delete this clone\n                end\n            end\n        end\n        delete this clone\n    else\n        repeat until <<(x position) < [-239]> or <(y position) < [-179]>>\n            turn left (-1) degrees\n            change y by (((PLAYER YV) / (1.5)) + (-3))\n            show\n            if <(D) = [3]> then\n                if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> then\n                    change x by ((((X SPEED) * (-1)) / (1.5)) + (-2.14))\n                end\n                if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>> then\n                    change x by (-1.2)\n                end\n                if <not <<<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> or <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>>>> then\n                    change x by (-3)\n                end\n            end\n            wait until <(AUS) = [0]>\n            if <[13] < (PLAYER YV)> then\n                if <[170] < (y position)> then\n                    delete this clone\n                end\n            end\n        end\n        delete this clone\n    end\nelse\n    point in direction (pick random (0) to (360))\n    set size to (pick random (100) to (150)) %\n    set [brightness v] effect to (900)\n    switch costume to (pick random (2) to (4))\n    set [ghost v] effect to (pick random (55) to (70))\n    if <(pick random (1) to (2)) = [2]> then\n        go to x: (pick random (-240) to (240)) y: (300)\n    else\n        go to x: (500) y: (pick random (-180) to (180))\n    end\n    if <(pick random (1) to (3)) = [2]> then\n        repeat until <<(x position) < [-239]> or <(y position) < [-179]>>\n            turn left (1) degrees\n            change y by (((PLAYER YV) / (1.5)) + (-3))\n            show\n            go to [front v] layer\n            if <(D) = [3]> then\n                if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> then\n                    change x by ((((X SPEED) * (-1)) / (1.5)) + (-2.14))\n                end\n                if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>> then\n                    change x by (-1.2)\n                end\n                if <not <<<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> or <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>>>> then\n                    change x by (-3)\n                end\n            end\n            wait until <(AUS) = [0]>\n            if <[13] < (PLAYER YV)> then\n                if <[170] < (y position)> then\n                    delete this clone\n                end\n            end\n        end\n        delete this clone\n    else\n        repeat until <<(x position) < [-239]> or <(y position) < [-179]>>\n            turn left (-1) degrees\n            change y by (((PLAYER YV) / (1.5)) + (-3))\n            show\n            go to [front v] layer\n            if <(D) = [3]> then\n                if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> then\n                    change x by ((((X SPEED) * (-1)) / (1.5)) + (-2.14))\n                end\n                if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>> then\n                    change x by (-1.2)\n                end\n                if <not <<<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> or <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>>>> then\n                    change x by (-3)\n                end\n            end\n            wait until <(AUS) = [0]>\n            if <[13] < (PLAYER YV)> then\n                if <[170] < (y position)> then\n                    delete this clone\n                end\n            end\n        end\n        delete this clone\n    end\nend\n\nwhen I receive [title v]\ndelete this clone\n\nwhen I receive [stopped v]\nforever\n    create clone of (_myself_ v)\n    wait (e4) seconds\nend\n\nwhen I start as a clone\nforever\n    if <<touching color (#000000)?> and <not <<touching (playerart v)?> or <touching (player hitbox v)?>>>> then\n        if <(stopped?) = [false]> then\n            delete this clone\n        end\n    end\nend\n\ndefine LAYER SET\ngo to [back v] layer\ngo [forward v] (4) layers\n\nwhen I start as a clone\nif <(stopped?) = [true]> then\n    set [player yv v] to [0]\nend\n\n@PlayerArt\n\nwhen I receive [b.tick v]\nset rotation style [all around v]\nif <key (down arrow v) pressed?> then\n    switch costume to (player22 v)\nelse\n    if <not <<<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>> or <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>>>> then\n        if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <[0] < (mouse y)>>>> then\n            switch costume to (player3 v)\n        else\n            switch costume to (player2 v)\n        end\n    else\n        if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> then\n            switch costume to (player v)\n        end\n        if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>> then\n            switch costume to (player5 v)\n        end\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [death v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nset [ghost v] effect to (100)\nwait until <(D) = [0]>\nbroadcast (Glide v)\n\nwhen I receive [fade-in v]\nset [ghost v] effect to (100)\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nwait (.78) seconds\nset [d v] to [3]\n\nwhen flag clicked\nhide\n\nwhen I receive [title v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [play v]\nwait (.15) seconds\ngo to [front v] layer\ngo [backward v] (1) layers\nshow\nwait (.2) seconds\ngo to [front v] layer\n\ndefine TypeTalk (text) (delay) (a)\nset [talk1 v] to [0]\nset [talk2 v] to []\nrepeat ((length of (text)) + (1))\n    say (Talk2)\n    set [talk2 v] to (join (Talk2) (letter (Talk1) of (text)))\n    wait (delay) seconds\n    change [talk1 v] by (1)\n    wait until <(AUS) = [0]>\nend\nsay (Talk2) for (a) seconds\n\nwhen I receive [newscreen v]\nsay [] for (0) seconds\n\nwhen I receive [stopped v]\nhide\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [portal v]\nspiral\n\nwhen I receive [_function v]\nset [ghost v] effect to (0)\nset size to (100) %\npoint in direction (90)\n\nwhen flag clicked\nReset Graphics\n\ndefine spiral\ngo to x: (0) y: (0)\nset [ghost v] effect to (0)\nset size to (100) %\npoint in direction (90)\nif <(SFX) = [On]> then\n    broadcast (sound v)\nend\nrepeat (50)\n    move (3.141592654) steps\n    turn right (20) degrees\n    change [ghost v] effect by (2)\n    change size by (-2)\nend\n\nwhen I receive [_function v]\ngo to x: (0) y: (0)\nset size to (100) %\n\ndefine Reset Graphics\ngo to x: (0) y: (0)\nset [ghost v] effect to (0)\nset size to (100) %\npoint in direction (90)\n\nwhen I receive [_function v]\nReset Graphics\n\nwhen I receive [sound v]\nstart sound [Magic Spell v]\n\nwhen I receive [stats v]\nstop [other scripts in sprite v]\nhide\n\n@LEVEL DEC\n\nwhen I receive [b.tick v]\nif <(D) = [3]> then\n    go to x: (SCROLL X) y: (SCROLL Y)\n    show\nelse\n    go to (-level- v)\nend\nswitch costume to (join (join (join [Level] [ ]) (level)) (join [ ] ((Lvl CKPT) + (1))))\nshow\n\nwhen flag clicked\nhide\n\ndefine Calibrate to size: (s)\nResetV\nswitch costume to (c v)\nset size to (s) %\nswitch costume to ((1) + (1))\nshow\n\nwhen I receive [play v]\nCalibrate to size: (Sizing)\n\nwhen I receive [setchkpt v]\nchange [lvl ckpt v] by (0)\n\nwhen I receive [new lvl v]\nset [lvl ckpt v] to [0]\n\nwhen I receive [play v]\ngo to [back v] layer\ngo [forward v] (3) layers\nset [level v] to [1]\n\nwhen I receive [title v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [play v]\nset [lvl ckpt v] to [0]\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [stats v]\nstop [other scripts in sprite v]\nhide\n\n@-LEVEL-\n\ndefine ResetV\nset [x v] to [0]\nset [y v] to [0]\n\ndefine Calibrate to size: (s)\nResetV\nswitch costume to (c v)\nset size to (s) %\nswitch costume to ((.5) + (1.5))\nshow\n\nwhen I receive [tick v]\nif <(X VEL TYPE) = [0]> then\n    if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> then\n        change [x v] by (-1)\n    end\n    if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>> then\n        change [x v] by (1)\n    end\nelse\n    if <(X VEL TYPE) = [1]> then\n        if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>>> then\n            change x by ((X SPEED) * (-1))\n            if <touching (player hitbox v)?> then\n                change x by (X SPEED)\n            end\n        end\n        if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < [0]>>>> then\n            change x by (X SPEED)\n            if <touching (player hitbox v)?> then\n                change x by ((X SPEED) * (-1))\n            end\n        end\n    end\nend\n\nwhen I receive [tick v]\nif <touching (player hitbox v)?> then\n    change y by (-1)\n    if <touching (player hitbox v)?> then\n        change y by (-1)\n        if <touching (player hitbox v)?> then\n            change y by (-1)\n            if <touching (player hitbox v)?> then\n                change y by (-1)\n                if <touching (player hitbox v)?> then\n                    change y by (-1)\n                    if <touching (player hitbox v)?> then\n                        change y by (-1)\n                        if <touching (player hitbox v)?> then\n                            change y by (-1)\n                            if <touching (player hitbox v)?> then\n                                change y by (7)\n                                change x by ((0) - (x))\n                                if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <[0] < (mouse y)>>>> then\n                                    if <(x) > [0]> then\n                                        set [x v] to [-5]\n                                    else\n                                        set [x v] to [5]\n                                    end\n                                    set [y v] to [-10]\n                                    broadcast (Jump v)\n                                else\n                                    set [x v] to [0]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nchange [y v] by (1)\nchange y by (round (y))\nif <touching (player hitbox v)?> then\n    change y by ((y) * (-1))\n    set [y v] to [0]\nend\nchange y by (1)\nif <touching (player hitbox v)?> then\n    if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <[0] < (mouse y)>>>> then\n        set [y v] to [-13]\n    end\nend\nchange y by (-1)\nset [x v] to ((x) * (0.9))\nchange x by (round (x))\n\ndefine Pos\nResetV\ngo to x: (SAVED X) y: (SAVED Y)\nResetV\n\nwhen I receive [tick v]\nif <(D) = [3]> then\n    if <(level) = [1]> then\n        if <[900] < (y position)> then\n            broadcast (Death v)\n            wait until <not <(D) = [3]>>\n            wait until <(D) = [3]>\n        end\n    end\n    if <(level) = [2]> then\n        if <[859] < (y position)> then\n            broadcast (Death v)\n            wait until <not <(D) = [3]>>\n            wait until <(D) = [3]>\n        end\n    end\nend\n\nwhen I receive [death v]\nDeath.pos\nResetV\n\ndefine Death.pos\nif <not <(D) = [POR]>> then\n    set [d v] to [5]\n    wait (.2) seconds\n    set [d v] to [0]\nend\nResetV\n\nwhen flag clicked\nset [d v] to [3]\n\nwhen flag clicked\nResetLVL\n\nwhen I receive [b.tick v]\nset [scroll x v] to (round (x position))\nset [scroll y v] to (round (y position))\n\nwhen I receive [glide v]\nglide (.25) secs to x: (SAVED X) y: (SAVED Y)\nwait (1) seconds\nbroadcast (Fade-IN v)\nResetV\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nhide\n\nwhen I receive [play v]\nResetLVL\nCalibrate to size: (Sizing)\nResetLVL\nPos\n\nwhen I receive [b.tick v]\nset [player xv v] to (x)\nset [player yv v] to (y)\n\nwhen I receive [bounce v]\nset [y v] to [-20]\n\nwhen I receive [b.tick v]\nif <touching (player hitbox v)?> then\n    change y by (-2)\nend\nswitch costume to ((level) + (1))\n\nwhen I receive [title v]\nstop [other scripts in sprite v]\nrepeat (10)\n    hide\nend\n\ndefine ResetLVL\nif <(level) = [1]> then\n    set [saved x v] to [990]\n    set [saved y v] to [550]\nend\nif <(level) = [2]> then\n    set [saved x v] to [900]\n    set [saved y v] to [430]\nend\nif <(level) = [3]> then\n    set [saved x v] to [900]\n    set [saved y v] to [430]\nend\n\nwhen I receive [play v]\nResetLVL\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [_function v]\nrepeat (3)\n    ResetLVL\n    ResetLVL\nend\n\ndefine decode portal position (qty: cur lvls) (value) (level)\ndelete all of [decoded v]\ndelete all of [decoded v]\nrepeat (qty: cur lvls)\n    add [] to [decoded v]\nend\nset [decode char counter v] to [4]\nset [counter char 2 v] to [1]\nrepeat until <(letter (decode char counter) of (item (level) of [portal position\(s\) v])) = (value)>\n    replace item (counter char 2) of [decoded v] with (join (item (counter char 2) of [decoded v]) (letter (decode char counter) of (item (level) of [portal position\(s\) v])))\n    change [decode char counter v] by (1)\nend\nset [decode char counter v] to [13]\nchange [counter char 2 v] by (1)\nrepeat until <(letter (decode char counter) of (item (level) of [portal position\(s\) v])) = (value)>\n    replace item (counter char 2) of [decoded v] with (join (item (counter char 2) of [decoded v]) (letter (decode char counter) of (item (level) of [portal position\(s\) v])))\n    change [decode char counter v] by (1)\nend\n\nwhen I receive [portal v]\nnew portal function\n\ndefine Glide to:   x: (x) y: (y) speed: (-)\nglide (-) secs to x: (x) y: (y)\n\nwhen flag clicked\ndelete all of [decoded v]\nshow list [decoded v]\n\nwhen I receive [bounce2 v]\nset [y v] to [-40]\n\ndefine Hack\nset [d v] to [0]\ndecode portal position [2] [ ] []\nGlide to:   x: (item (1) of [decoded v]) y: (item (2) of [decoded v]) speed: [.25]\nset [d v] to [3]\n\ndefine check for pass input\nif <key ((letter (1) of (super secret)) v) pressed?> then\n    set [input1 v] to []\n    set [pass counter v] to [1]\n    set [ssp timer v] to [14]\n    repeat until <<(input1) = (super secret)> or <(ssp timer) < [1]>>\n        change [ssp timer v] by (-0.569)\n        if <key ((letter (pass counter) of (super secret)) v) pressed?> then\n            set [input1 v] to (join (input1) (letter (pass counter) of (super secret)))\n            change [pass counter v] by (1)\n            change [ssp timer v] by (7)\n        end\n        if <(input1) = (super secret)> then\n            stop [all v]\n        end\n        if <(ssp timer) < [1]> then\n            stop [this script v]\n        end\n    end\nelse\n    set [input1 v] to []\n    set [ssp timer v] to [READY]\nend\n\nwhen flag clicked\nset [input1 v] to []\n\nwhen I receive [ah v]\nbroadcast (Portal v)\n\nwhen I receive [ah v]\nset [y v] to [0]\n\nwhen I receive [y to 0 v]\nset [y v] to [0]\nset [player yv v] to [0]\n\nwhen I receive [stats v]\nstop [other scripts in sprite v]\nhide\n\ndefine old portal function\nif <(level) = [1]> then\n    decode portal position [2] [ ] (level)\nend\nif <(level) = [2]> then\n    decode portal position [2] [~] [2]\nend\nGlide to:   x: (item (1) of [decoded v]) y: (item (2) of [decoded v]) speed: [.25]\n\ndefine new portal function\nchange [level v] by (0)\nGlide to:   x: (item ((-1) + ((2) * (level))) of [portal position\(s\) v]) y: (item ((0) + ((2) * (level))) of [portal position\(s\) v]) speed: [.25]\n\n@LEVEL PRTL\n\nwhen I receive [b.tick v]\nif <(D) = [3]> then\n    go to x: (SCROLL X) y: (SCROLL Y)\nelse\n    go to (-level- v)\nend\nswitch costume to ((level) + (1))\nshow\n\nwhen flag clicked\nhide\n\ndefine Calibrate to size: (s)\nResetV\nswitch costume to (c v)\nset size to (s) %\nswitch costume to (level)\nshow\ngo to [back v] layer\n\nwhen I receive [play v]\nCalibrate to size: (Sizing)\n\nwhen I receive [setchkpt v]\nchange [lvl ckpt v] by (0)\n\nwhen I receive [new lvl v]\nset [lvl ckpt v] to [0]\n\nwhen I receive [play v]\nset [level v] to [1]\n\nwhen I receive [title v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [play v]\nset [lvl ckpt v] to [0]\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [stats v]\nstop [other scripts in sprite v]\nhide\n\n@Swiper\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nset volume to (50) %\nCalibrate\nshow\ngo to [front v] layer\nset volume to (20) %\nif <(SFX) = [On]> then\n    start sound [High Whoosh v]\nend\nglide (.4) secs to x: (0) y: (0)\ngo to [front v] layer\nwait (.5) seconds\ngo to [front v] layer\ngo to [front v] layer\nchange volume by (-10)\nif <(SFX) = [On]> then\n    start sound [Low Whoosh v]\nend\nglide (.4) secs to x: (0) y: (500)\ngo to [front v] layer\nhide\ndelete this clone\n\ndefine Calibrate\nswitch costume to (costume2 v)\nset size to (100) %\ngo to x: (-1000) y: (0)\nset size to (800) %\ngo to x: (-1000) y: (0)\nchange x by (-70)\nswitch costume to (costume1 v)\n\nwhen I receive [newscreen v]\ncreate clone of (_myself_ v)\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\nwhen I start as a clone\nforever\n    go to [front v] layer\nend\n\n@TitleScreen\n\nwhen I receive [load v]\nClone\n\nwhen flag clicked\nhide\n\ndefine Clone\nset [myid v] to [Back]\ncreate clone of (_myself_ v)\nset [myid v] to [Title]\ncreate clone of (_myself_ v)\nset [myid v] to [Play]\ncreate clone of (_myself_ v)\nset [myid v] to [Options]\ncreate clone of (_myself_ v)\nset [myid v] to [Return]\ncreate clone of (_myself_ v)\nset [myid v] to [Help]\ncreate clone of (_myself_ v)\nset [myid v] to [HelpTab]\ncreate clone of (_myself_ v)\nset [myid v] to [0]\n\nwhen I start as a clone\n\nwhen I start as a clone\nswitch costume to (options v)\nif <(myID) = [Back]> then\n    go to x: (0) y: (0)\n    switch costume to (back v)\n    go to [back v] layer\n    set size to (100) %\nend\nif <(myID) = [Title]> then\n    set size to (100) %\n    switch costume to (title v)\n    go to [back v] layer\n    go [forward v] (1) layers\n    go to x: (0) y: (100)\nend\nif <(myID) = [Play]> then\n    go to x: (0) y: (-20)\n    switch costume to (play v)\n    go to [back v] layer\n    go [forward v] (2) layers\n    set size to (148) %\nend\nif <(myID) = [Options]> then\n    go to x: (0) y: (-100)\n    switch costume to (options v)\n    go to [back v] layer\n    go [forward v] (2) layers\n    set size to (148) %\nend\nif <(myID) = [Return]> then\n    go to x: (-200) y: (-163)\n    switch costume to (return v)\n    go to [back v] layer\n    go [forward v] (2) layers\n    set size to (100) %\nend\nif <(myID) = [Help]> then\n    go to x: (207) y: (-151)\n    switch costume to (help v)\n    go to [back v] layer\n    go [forward v] (2) layers\n    set size to (100) %\nend\n\nwhen I receive [end intro v]\nif <<<<(myID) = [Options]> or <(myID) = [Play]>> or <(myID) = [Title]>> or <(myID) = [Back]>> then\n    show\n    repeat (6)\n        set [ghost v] effect to (0)\n    end\nend\n\nwhen I receive [title v]\nif <<<<<(myID) = [Options]> or <(myID) = [Play]>> or <(myID) = [Title]>> or <(myID) = [Back]>> or <(myID) = [Help]>> then\n    set [ghost v] effect to (0)\n    show\nend\n\nwhen I start as a clone\nif <<(myID) = [Play]> or <(myID) = [Options]>> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            point in direction ((90) + (([sin v] of (((backround timer) - (0)) * (50)) ) * (5)))\n            set size to ((162) + (([sin v] of (((backround timer) - (0)) * (150)) ) * (5))) %\n            set [brightness v] effect to (-10)\n        else\n            point in direction ((90) + (([sin v] of (((backround timer) - (0)) * (100)) ) * (5)))\n            set size to ((150) + (([sin v] of (((backround timer) - (0)) * (150)) ) * (5))) %\n            set [color v] effect to (0)\n            set [brightness v] effect to (-1)\n        end\n    end\nend\nif <(myID) = [Title]> then\n    forever\n        set y to ((90) + (([sin v] of (((backround timer) - (0)) * (75)) ) * (10)))\n    end\nend\nif <(myID) = [Help]> then\n    forever\n        switch costume to (help v)\n        if <touching (mouse-pointer v)?> then\n            point in direction ((90) + (([sin v] of (((backround timer) - (0)) * (50)) ) * (2)))\n            set size to ((122) + (([sin v] of (((backround timer) - (0)) * (150)) ) * (5))) %\n            set [color v] effect to (0)\n            set [brightness v] effect to (-10)\n        else\n            point in direction ((90) + (([sin v] of (((backround timer) - (0)) * (100)) ) * (2)))\n            set size to ((110) + (([sin v] of (((backround timer) - (0)) * (75)) ) * (10))) %\n            set [color v] effect to (0)\n            set [brightness v] effect to (-1)\n        end\n    end\nend\n\nwhen I start as a clone\nif <<(myID) = [Play]> or <(myID) = [Options]>> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            if <mouse down?> then\n                if <(PAGE) = [Title]> then\n                    broadcast (Newscreen v)\n                    wait (1) seconds\n                    broadcast (myID)\n                    if <[Play] = (myID)> then\n                        broadcast (start recording stats v)\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [options v]\nif <<(myID) = [Return]> or <<(myID) = [Back]> or <(myID) = [Title]>>> then\n    repeat (10)\n        show\n    end\nelse\n    hide\nend\n\nwhen I receive [play v]\nhide\n\nwhen I start as a clone\nhide\nif <(myID) = [Return]> then\n    forever\n        if <(PAGE) = [Options]> then\n            show\n            go to x: (-200) y: (-163)\n            if <touching (mouse-pointer v)?> then\n                set size to (107) %\n                if <mouse down?> then\n                    broadcast (Newscreen v)\n                    wait (1) seconds\n                    broadcast (Title v)\n                end\n            else\n                set size to (100) %\n            end\n        else\n            if <(PAGE) = [GAME]> then\n                go to [front v] layer\n                repeat until <not <(PAGE) = [GAME]>>\n                    show\n                    go to x: (208) y: (166)\n                    if <touching (mouse-pointer v)?> then\n                        set size to (86) %\n                        if <mouse down?> then\n                            broadcast (AUS v)\n                            wait until <(AUS) = [5]>\n                            wait until <(AUS) = [0]>\n                        end\n                    else\n                        set size to (80) %\n                    end\n                end\n            else\n                if <(PAGE) = [STATS]> then\n                    go to [front v] layer\n                    show\n                    go to x: (-200) y: (-163)\n                    if <touching (mouse-pointer v)?> then\n                        set size to (107) %\n                        if <mouse down?> then\n                            broadcast (Newscreen v)\n                            wait (1) seconds\n                            broadcast (Title v)\n                        end\n                    else\n                        set size to (100) %\n                    end\n                else\n                    hide\n                end\n            end\n        end\n    end\nend\nif <(myID) = [HelpTab]> then\n    switch costume to (helptab v)\n    hide\nend\n\nwhen flag clicked\nforever\n    wait (0) seconds\nend\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\nwhen I start as a clone\nif <(myID) = [Help]> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            if <mouse down?> then\n                if <(PAGE) = [Title]> then\n                    broadcast (help v)\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [help v]\nset [page v] to [help]\nif <not <<(myID) = [HelpTab]> or <(myID) = [Back]>>> then\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    hide\n    wait until <not <mouse down?>>\n    wait until <(PAGE) = [Title]>\n    repeat (10)\n        change [ghost v] effect by (-10)\n    end\nelse\n    if <(myID) = [HelpTab]> then\n        go to x: (0) y: (0)\n        set [ghost v] effect to (100)\n        show\n        repeat (10)\n            change [ghost v] effect by (-10)\n        end\n        wait until <not <mouse down?>>\n        wait until <<mouse down?> and <not <touching (mouse-pointer v)?>>>\n        broadcast (Title v)\n        repeat (10)\n            change [ghost v] effect by (10)\n        end\n    end\nend\nif <(myID) = [Back]> then\n    set [ghost v] effect to (0)\nend\n\nwhen I start as a clone\nif <(myID) = [CHECKPOINT]> then\n    go to x: (-206) y: (167)\n    hide\nend\n\nwhen I receive [options v]\nif <(myID) = [Return]> then\n    show\n    repeat (6)\n        set [ghost v] effect to (0)\n    end\nend\n\n@Backround \n\nwhen flag clicked\nhide\n\nwhen I receive [play v]\nforever\n    go to [back v] layer\n    go to x: ((SCROLL X) / (2)) y: ((SCROLL Y) / (2))\nend\n\nwhen I receive [play v]\nCalibrate to size: [400]\n\ndefine Calibrate to size: (s)\nResetV\nswitch costume to (costume2 v)\nset size to (s) %\nswitch costume to (costume1 v)\nshow\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\n@music\n\nwhen I receive [load v]\nwait (6) seconds\nforever\n    play sound [StoneSteps v] until done\nend\n\nwhen I receive [load v]\nwait (7) seconds\nforever\n    if <(MSC) = [Off]> then\n        set volume to (0) %\n    else\n        if <(MSC) = [On]> then\n            set volume to (100) %\n        end\n    end\nend\n\n@AUS\n\nwhen flag clicked\nhide\n\nwhen I receive [aus v]\nset [aus v] to [5]\nset [aus ans v] to [0]\nhide\nset [myid v] to [B]\ncreate clone of (_myself_ v)\nset [myid v] to [Q]\ncreate clone of (_myself_ v)\nset [myid v] to [Y]\ncreate clone of (_myself_ v)\nset [myid v] to [N]\ncreate clone of (_myself_ v)\nset [myid v] to [0]\n\nwhen I start as a clone\nswitch costume to (myID)\n\nwhen I receive [answered v]\nif <(myID) = [0]> then\n    if <(AUS ANS) = [y]> then\n        broadcast (Newscreen v)\n        set [aus v] to [0]\n        wait (1) seconds\n        broadcast (Title v)\n    else\n        if <(AUS ANS) = [n]> then\n            broadcast (resume v)\n            set [aus v] to [0]\n        end\n    end\nend\n\nwhen I receive [resume v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nset [aus ans v] to [0]\ndelete this clone\n\nwhen I receive [newscreen v]\nwait (.5) seconds\ndelete this clone\n\nwhen flag clicked\nset [aus v] to [0]\n\nwhen I start as a clone\nif <(myID) = [N]> then\n    go to x: (35) y: (-27)\n    set [ghost v] effect to (100)\n    show\n    repeat (10)\n        go to [front v] layer\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen I start as a clone\nif <(myID) = [Y]> then\n    go to x: (-35) y: (-27)\n    set [ghost v] effect to (100)\n    show\n    repeat (10)\n        go to [front v] layer\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen I start as a clone\nif <(myID) = [Q]> then\n    go to x: (0) y: (0)\n    set [ghost v] effect to (100)\n    show\n    repeat (10)\n        go to [front v] layer\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen I start as a clone\nif <(myID) = [B]> then\n    set size to (100) %\n    go to x: (0) y: (0)\n    set [ghost v] effect to (100)\n    show\n    repeat (5)\n        go to [front v] layer\n        change [ghost v] effect by (-5)\n    end\nend\n\nwhen I start as a clone\nif <<(myID) = [N]> or <(myID) = [Y]>> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            set size to (105) %\n            set [color v] effect to (0)\n            set [brightness v] effect to (-14)\n            if <mouse down?> then\n                set [aus ans v] to (myID)\n                broadcast (Answered v)\n            end\n        else\n            set size to (100) %\n            set [color v] effect to (0)\n            set [brightness v] effect to (0)\n        end\n    end\nend\n\nforever\n    if <<mouse down?> and <touching (mouse-pointer v)?>> then\n        set [aus ans v] to [N]\n        broadcast (Answered v)\n    end\nend\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\n@Game Options\n\nwhen I receive [load v]\nCLONE\n\ndefine CLONE\nset [mystatus v] to [On]\nset [myid v] to [SFX]\ncreate clone of (_myself_ v)\nset [myid v] to [MUSIC]\ncreate clone of (_myself_ v)\nset [myid v] to [SNOW]\ncreate clone of (_myself_ v)\nset [myid v] to [VSL]\ncreate clone of (_myself_ v)\nset [myid v] to [E]\ncreate clone of (_myself_ v)\nset [myid v] to [LOGO]\ncreate clone of (_myself_ v)\nset [myid v] to [MYSELF]\n\nwhen I start as a clone\nhide\nSETUP ACC TO (MyID)\nforever\n    if <(PAGE) = [Options]> then\n        if <<(MyID) = [SNOW]> or <<(MyID) = [MUSIC]> or <(MyID) = [SFX]>>> then\n            set size to (96) %\n            if <<mouse down?> and <<<((y position) - (dis)) < (mouse y)> and <(mouse y) < ((y position) - ((0) - (dis)))>> and <<((x position) - (dis)) < (mouse x)> and <(mouse x) < ((x position) - ((0) - (dis)))>>>> then\n                if <(myStatus) = [On]> then\n                    set [mystatus v] to [Off]\n                else\n                    if <(myStatus) = [Off]> then\n                        set [mystatus v] to [On]\n                    end\n                end\n                wait until <not <<mouse down?> and <<<((y position) - (dis)) < (mouse y)> and <(mouse y) < ((y position) - ((0) - (dis)))>> and <<((x position) - (dis)) < (mouse x)> and <(mouse x) < ((x position) - ((0) - (dis)))>>>>>\n                if <(SFX) = [On]> then\n                    start sound [Clock Ticking v]\n                end\n            end\n        end\n        if <(MyID) = [VSL]> then\n            if <touching (mouse-pointer v)?> then\n                set size to (120) %\n                go to [front v] layer\n                set [brightness v] effect to (-14)\n                if <mouse down?> then\n                    Show Logs\n                    wait until <not <(Log show?) = [true]>>\n                end\n            else\n                go to [front v] layer\n                set size to (115) %\n                set [brightness v] effect to (0)\n            end\n        end\n    end\nend\n\ndefine SETUP ACC TO (id)\nset drag mode [not draggable v]\nif <(id) = [SFX]> then\n    set [mystatus v] to [On]\n    go to x: (-130) y: (-9)\n    switch costume to (sfx-on v)\nend\nif <(id) = [MUSIC]> then\n    set [mystatus v] to [On]\n    go to x: (-130) y: (-50)\n    switch costume to (music-on v)\nend\nif <(id) = [SNOW]> then\n    set [mystatus v] to [On]\n    go to x: (-130) y: (-91)\n    switch costume to (snow-on v)\nend\nif <(id) = [VSL]> then\n    set size to (115) %\n    set [mystatus v] to []\n    go to x: (95) y: (-87)\n    switch costume to (vsl v)\nend\nif <(id) = [LOGO]> then\n    set size to (50) %\n    set [mystatus v] to []\n    go to x: (95) y: (-27)\n    switch costume to (costume1 v)\nend\nif <(id) = [E]> then\n    set size to (115) %\n    set [mystatus v] to []\n    go to x: (0) y: (-168)\n    switch costume to (e v)\nend\n\nwhen I receive [options v]\nHide Logs\nif <not <<(MyID) = [E]> or <(MyID) = [MYSELF]>>> then\n    show\nend\n\nwhen I receive [title v]\nHide Logs\nif <not <(MyID) = [MYSELF]>> then\n    hide\nend\nhide\n\nwhen I start as a clone\nforever\n    if <(MyID) = [SFX]> then\n        set [sfx v] to (myStatus)\n        if <(myStatus) = [On]> then\n            switch costume to (sfx-on v)\n        end\n        if <(myStatus) = [Off]> then\n            switch costume to (sfx-off v)\n        end\n    end\n    if <(MyID) = [MUSIC]> then\n        set [msc v] to (myStatus)\n        if <(myStatus) = [On]> then\n            switch costume to (music-on v)\n        end\n        if <(myStatus) = [Off]> then\n            switch costume to (music-off v)\n        end\n    end\n    if <(MyID) = [SNOW]> then\n        set [snow v] to (myStatus)\n        if <(myStatus) = [On]> then\n            switch costume to (snow-on v)\n        end\n        if <(myStatus) = [Off]> then\n            switch costume to (snow-off v)\n        end\n    end\nend\n\nwhen I receive [stopped v]\nstop [other scripts in sprite v]\nhide\n\nwhen flag clicked\nset [dis v] to [22]\nchange [dis v] by (1)\n\ndefine Show Logs\nwait (0) seconds\nhide list [play log v]\nwait (0) seconds\nhide list [gfl v]\nwait (0) seconds\nhide list [update logs v]\nwait (0) seconds\nset [log show? v] to [true]\nbroadcast (SL v)\n\ndefine Hide Logs\nbroadcast (HL v)\nset [log show? v] to [false]\nwait (0) seconds\nshow list [play log v]\nwait (0) seconds\nshow list [gfl v]\nwait (0) seconds\nshow list [update logs v]\nwait (0) seconds\nshow list [temporary file storage v]\nwait (0) seconds\nshow list [portal position v]\nwait (0) seconds\n\nwhen flag clicked\nHide Logs\nset [log show? v] to [false]\n\nwhen flag clicked\nhide\n\nwhen I receive [sl v]\nif <(MyID) = [E]> then\n    if <(Log show?) = [true]> then\n        show\n        go to [front v] layer\n        repeat until <(Log show?) = [false]>\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (-14)\n                set size to (105) %\n                if <mouse down?> then\n                    set [log show? v] to [false]\n                    Hide Logs\n                    hide\n                end\n            else\n                set size to (100) %\n                set [brightness v] effect to (0)\n            end\n        end\n        hide\n    else\n        go to [front v] layer\n        hide\n    end\nend\n\n@Splash / TB\n\nwhen flag clicked\nset [stopped? v] to [false]\nhide\nswitch costume to (costume1 v)\nset size to (100) %\ngo to x: (0) y: (500)\nset size to (500) %\ngo to x: (0) y: (500)\nset size to (215) %\nswitch costume to (bit v)\nset [y v] to [-25]\nshow\nforever\n    reset timer\n    set [ghost v] effect to (100)\nend\n\nwhen [timer v] > (.01)\nset [stopped? v] to [true]\nbroadcast (stopped v)\nGLIDE\n\ndefine GLIDE\nrepeat until <[0] < (Y)>\n    change [y v] by (1.6)\n    change y by (Y)\n    go to [front v] layer\nend\n\nwhen I receive [stopped v]\nbroadcast (Y to 0 v)\nforever\n    switch costume to (bit v)\n    show list [temporary file storage v]\n    wait (0) seconds\n    show list [portal position v]\n    wait (0) seconds\n    if <(MSC) = [On]> then\n        play sound [StoneSteps v] until done\n    end\nend\n\ndefine run forever\nforever\n    wait (e4) seconds\n    go to [front v] layer\n    show\n    reset timer\n    show list [gfl v]\n    show list [play log v]\n    show list [update logs v]\n    show list [bk ul v]\nend\n\nwhen I receive [stopped v]\nforever\n    set [d v] to [STOPPED]\nend\n\n@Logo\n\n@STAT DATA/PAGE\n\nwhen I receive [play v]\nRunTimer\n\ndefine REFRESH CLOUD\n\nset [☁ wr deaths v] to (☁ WR DEATHS)\nset [☁ wr time v] to (☁ WR TIME)\n\ndefine REBOOT RECORDS (value) (value2)\nset [☁ wr deaths v] to (value)\nset [☁ wr time v] to (value2)\nREFRESH CLOUD\n\ndefine NORMAL : Reset records\nREBOOT RECORDS [0] [999]\n\ndefine UPDATE LISTS (timeunit)\nPRESET LISTS\nREFRESH CLOUD\nreplace item (item # of [TIME] in [stats v]) of [stats v] with (join [TIME: ] (join ([abs v] of (gametimecounter) ) (timeunit)))\nreplace item (item # of [WR TIME] in [stats v]) of [stats v] with (join [WR TIME: ] (join (☁ WR TIME) (timeunit)))\nreplace item (item # of [DEATHS] in [stats v]) of [stats v] with (join [DEATHS: ] (join (DEATHS) []))\nreplace item (item # of [WR DEATHS] in [stats v]) of [stats v] with (join [WR DEATHS: ] (join (☁ WR DEATHS) []))\n\ndefine PRESET LISTS\ndelete all of [stats v]\nadd [TIME] to [stats v]\nadd [WR TIME] to [stats v]\nadd [DEATHS] to [stats v]\nadd [WR DEATHS] to [stats v]\n\ndefine SEE LIST FUNCTION <status>\nif <<status> = [True]> then\n    hide list [stats v]\nelse\n    show list [stats v]\nend\n\nwhen flag clicked\nPRESET LISTS\n\ndefine CHECKDEATHRECORDS <newdeathrecord?>\nif <<newdeathrecord?> = [True]> then\n    if <<newdeathrecord?> = [True]> then\n        if <<newdeathrecord?> = [True]> then\n            if <<newdeathrecord?> = [True]> then\n                setdeathrecord ([abs v] of (DEATHS) )\n            end\n        end\n    end\nend\n\ndefine setdeathrecord (value)\nset [☁ wr deaths v] to (value)\n\ndefine RunTimer\nset [gametimecounter v] to [0]\nrepeat until <<(PAGE) = [STATS]> or <(PAGE) = [TITLE]>>\n    if <(AUS) = [0]> then\n        wait (1) seconds\n        set [gametimecounter v] to ((gametimecounter) + (1))\n    end\nend\n\nwhen I receive [play v]\nforever\n    hide\n    go to x: (0) y: (0)\n    SEE LIST FUNCTION <key (space v) pressed?>\n    UPDATE LISTS [  sec]\nend\n\nwhen I receive [aus v]\nshow list [stats v]\n\nwhen I receive [title v]\nstop [other scripts in sprite v]\nshow list [stats v]\n\nwhen I receive [newscreen v]\nif <(PAGE) = [GAME]> then\n    repeat until <<(PAGE) = [STATS]> or <(PAGE) = [TITLE]>>\n        show list [stats v]\n    end\nelse\n    show list [stats v]\nend\n\nwhen I receive [stats v]\nPrepare Print\ncreate clone of (_myself_ v)\nPrint txt - broadcast: [Print STATS]\n\ndefine wait for incoming data\nwait (.1) seconds\n\ndefine finalize stat data\nPRESET LISTS\nREFRESH CLOUD\nreplace item (item # of [TIME] in [stats v]) of [stats v] with (join [TIME: ] (join ([abs v] of (gametimecounter) ) (timeunit)))\nreplace item (item # of [WR TIME] in [stats v]) of [stats v] with (join [WR TIME: ] (join ([abs v] of (☁ WR TIME) ) (timeunit)))\nreplace item (item # of [DEATHS] in [stats v]) of [stats v] with (join [DEATHS: ] (join (DEATHS) []))\nreplace item (item # of [WR DEATHS] in [stats v]) of [stats v] with (join [WR DEATHS: ] (join (☁ WR DEATHS) []))\n\ndefine Hide LIST\nrepeat (1)\n    show list [stats v]\nend\n\ndefine REFRESH CLOUD VAR\n\nset [☁ wr deaths v] to ([abs v] of (☁ WR DEATHS) )\nset [☁ wr time v] to ([abs v] of (☁ WR TIME) )\n\ndefine Check for records\nREFRESH CLOUD\nCHECKDEATHRECORDS <(☁ WR DEATHS) < (DEATHS)>\nCHECKTIMERECORDS <(gametimecounter) < (☁ WR TIME)>\nREFRESH CLOUD\n\ndefine CHECKTIMERECORDS <newtimerecord?>\nif <<newtimerecord?> = [true]> then\n    if <<newtimerecord?> = [true]> then\n        if <<newtimerecord?> = [true]> then\n            if <<newtimerecord?> = [true]> then\n                set new time rec ([abs v] of ((1) * ((gametimecounter) - (0))) )\n                REFRESH CLOUD\n            end\n        end\n    end\nend\n\ndefine set new time rec (new record value )\nREFRESH CLOUD\nset [☁ wr time v] to (new record value )\n\ndefine Prepare Print\ngo to x: (0) y: (0)\nHide LIST\nstop [other scripts in sprite v]\nREFRESH CLOUD VAR\nHide LIST\nwait for incoming data\nCheck for records\nfinalize stat data\nCheck for records\n\ndefine Print txt - broadcast: (message)\nbroadcast (message)\n\nwhen I start as a clone\ngo to x: (0) y: (0)\nset size to (100) %\nset [color v] effect to (0)\ngo [backward v] (1) layers\ngo to [front v] layer\nshow\n\nwhen flag clicked\nhide\n\nwhen I receive [newscreen v]\nhide\n\nwhen I receive [title v]\nhide\n\nwhen flag clicked\nset [gametimecounter v] to [0]\n\n@text\n\ndefine (print) x: (x) y: (y) size: (size) color: (color) brightness: (brightness)\nset [brightness v] effect to (brightness)\nhide\nset [color v] effect to (color)\nset size to (size) %\ngo to x: (x) y: (y)\nset [txt v] to [0]\nrepeat (length of (print))\n    change [txt v] by (1)\n    switch costume to (letter (txt) of (print))\n    create clone of (_myself_ v)\n    stamp\n    change x by ((size) / (9))\nend\nhide\n\nwhen flag clicked\nerase all\n\nwhen I receive [print stats v]\nPrint Stats [-75]\n\ndefine Print Stats (x pos)\nDelete all txt\n(join (gametimecounter) [ sec]) x: (x pos) y: [41] size: [134.5] color: [0] brightness: [100]\n(join (☁ WR TIME) [ sec]) x: (x pos) y: [16] size: [134.5] color: [0] brightness: [100]\n(join (DEATHS) []) x: (x pos) y: [-34] size: [134.5] color: [0] brightness: [100]\n(join (☁ WR DEATHS) []) x: (x pos) y: [-59] size: [134.5] color: [0] brightness: [100]\n\nwhen I start as a clone\nrepeat (2)\n    set drag mode [not draggable v]\nend\nbroadcast (txt noise v)\nforever\n    go to [front v] layer\n    show\n    if <(delete txt) = [1]> then\n        erase all\n        delete this clone\n    end\nend\n\ndefine Delete all txt\nerase all\nset [delete txt v] to [0]\nwait (0) seconds\nset [delete txt v] to [1]\nwait (0) seconds\nset [delete txt v] to [0]\n\nwhen I receive [newscreen v]\nDelete all txt\n\nwhen I receive [txt noise v]\nset volume to (40) %\nstart sound [click v]\n\n@timer\n\ndefine run backround timer (start) (delay)\nset [backround timer v] to (start)\nwait (delay) seconds\nforever\n    change [backround timer v] by (.0158695286373141592654)\nend\n\nwhen flag clicked\nrun backround timer [0] [0]\n\n@(DELETE THIS)\n\ndefine CLONE\nset [mystatus v] to [On]\nset [myid v] to [SFX]\ncreate clone of (_myself_ v)\nset [myid v] to [MUSIC]\ncreate clone of (_myself_ v)\nset [myid v] to [SNOW]\ncreate clone of (_myself_ v)\nset [myid v] to [VSL]\ncreate clone of (_myself_ v)\nset [myid v] to [E]\ncreate clone of (_myself_ v)\nset [myid v] to [LOGO]\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nhide\nSETUP ACC TO (MyID)\nforever\n    if <(PAGE) = [settings]> then\n        if <<(MyID) = [SNOW]> or <<(MyID) = [MUSIC]> or <(MyID) = [SFX]>>> then\n            set size to (96) %\n            if <<mouse down?> and <<<((y position) - (dis)) < (mouse y)> and <(mouse y) < ((y position) - ((0) - (dis)))>> and <<((x position) - (dis)) < (mouse x)> and <(mouse x) < ((x position) - ((0) - (dis)))>>>> then\n                if <(myStatus) = [On]> then\n                    set [mystatus v] to [Off]\n                else\n                    if <(myStatus) = [Off]> then\n                        set [mystatus v] to [On]\n                    end\n                end\n                wait until <not <<mouse down?> and <<<((y position) - (dis)) < (mouse y)> and <(mouse y) < ((y position) - ((0) - (dis)))>> and <<((x position) - (dis)) < (mouse x)> and <(mouse x) < ((x position) - ((0) - (dis)))>>>>>\n                if <(SFX) = [On]> then\n                    start sound [Clock Ticking v]\n                end\n            end\n        end\n    end\nend\n\ndefine setup\nCLONE\npreset ID to [MYSELF]\n\ndefine preset ID to (value)\nset [myid v] to (value)\n\ndefine SETUP ACC TO (id)\nset drag mode [not draggable v]\nif <(id) = [SFX]> then\n    set [mystatus v] to [On]\n    go to x: (-130) y: (-9)\n    switch costume to (sfx-on v)\nend\nif <(id) = [MUSIC]> then\n    set [mystatus v] to [On]\n    go to x: (-130) y: (-50)\n    switch costume to (music-on v)\nend\nif <(id) = [SNOW]> then\n    set [mystatus v] to [On]\n    go to x: (-130) y: (-91)\n    switch costume to (snow-on v)\nend\n\n
　　　　※報告乱用されたので再共有しました。\n　　　日本語は下。❤️&⭐️&Followよろしく！\n　　　　　　【Method of operation】\n・Left/Right movement:You can tap the arrow keys right or left, and the A of D key to move the main character to the right or left. ・Jump can de operated dy tapping the up arrow key, the W key, or the main character'stop.\n・ Crouch Can be operated by pressing the left arrow key, S key, or tapping below the main character.\nYou can go to the next stage by pressing the K key. If you find a stage difficult, press the K key.\nIf you find this work even a little interesting, please press ♡ and ☆ and follow me!\n　　　　　　　　【操作方法】\n・左/右の動き：矢印キーを右または左に、AまたはDキーをタップすると、主人公を右または左に移動できます。\n・ジャンプは、上矢印キー、Wキー、または主人公の上をタップして操作できます。\nKキーを押すと、次の段階に進むことができます。ステージが難しい場合は、Kキーを押してください。\nこの作品が少しでも面白いと思ったら、♡と☆を押してフォローしてください！