TROLLING platformer
@Stage\n\nwhen flag clicked\nplay sound [Summertime v] until done\n\nwhen [m v] key pressed\nstop all sounds\n\nwhen [c v] key pressed\nswitch backdrop to (backdrop11 v)\nstop [all v]\n\n@player\n\nwhen I receive [start level v]\nset [x velocity v] to [0]\nset [y velocity v] to [0]\nset [jumping v] to [false]\n\ndefine move vertical\nchange y by (y velocity)\nif <touching color (#000000)?> then\n    if <(y velocity) > [0]> then\n        repeat until <not <touching color (#000000)?>>\n            change y by (-1)\n        end\n    else\n        repeat until <not <touching color (#000000)?>>\n            change y by (1)\n        end\n        set [jumping v] to [false]\n    end\n    set [y velocity v] to [0]\nend\n\nwhen [up arrow v] key pressed\nif <(jumping) = [false]> then\n    set [y velocity v] to [15]\n    set [jumping v] to [true]\nend\n\nwhen flag clicked\nset [level v] to [1]\nbroadcast (start level v)\nforever\n    change [y velocity v] by (-1)\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        if <(x velocity) > [-10]> then\n            change [x velocity v] by (-2)\n        end\n    end\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        if <(x velocity) < [10]> then\n            change [x velocity v] by (2)\n        end\n    end\n    if <(x velocity) > [0]> then\n        change [x velocity v] by (-1)\n    end\n    if <(x velocity) < [0]> then\n        change [x velocity v] by (1)\n    end\n    change x by (x velocity)\n    move vertical\n    move horizontal\n    if <touching color (#003aff)?> then\n        broadcast (next level v)\n    end\n    if <<(y position) < [-179]> or <touching color (#ff0000)?>> then\n        broadcast (start level v)\n    end\nend\n\ndefine move horizontal\nif <touching color (#003bff)?> then\n    if <(x velocity) > [0]> then\n        repeat until <not <touching color (#000000)?>>\n            change x by (-2)\n        end\n    else\n        repeat until <not <touching color (#000000)?>>\n            change x by (2)\n        end\n    end\n    set [x velocity v] to [0]\nend\n\nwhen I receive [start level v]\nif <(level) = [1]> then\n    go to x: (-151) y: (-107)\n    switch backdrop to (backdrop2 v)\nend\nif <(level) = [2]> then\n    go to x: (-143) y: (128)\n    switch backdrop to (backdrop3 v)\nend\nif <(level) = [3]> then\n    go to x: (-158) y: (143)\n    switch backdrop to (backdrop4 v)\nend\nif <(level) = [4]> then\n    go to x: (-189) y: (-25)\n    switch backdrop to (backdrop5 v)\nend\nif <(level) = [5]> then\n    go to x: (-189) y: (-25)\n    switch backdrop to (backdrop6 v)\nend\nif <(level) = [6]> then\n    go to x: (-189) y: (-25)\n    switch backdrop to (backdrop7 v)\nend\nif <(level) = [7]> then\n    go to x: (-189) y: (-25)\n    switch backdrop to (backdrop8 v)\nend\nif <(level) = [8]> then\n    go to x: (-162) y: (-50)\n    switch backdrop to (backdrop9 v)\nend\nif <(level) = [9]> then\n    go to x: (-206) y: (-109)\n    switch backdrop to (backdrop10 v)\nend\nif <(level) = [10]> then\n    go to x: (-151) y: (-110)\n    switch backdrop to (backdrop12 v)\nend\nif <(level) = [11]> then\n    go to x: (-187) y: (-109)\n    switch backdrop to (backdrop13 v)\nend\nif <(level) = [11]> then\n    go to x: (-187) y: (-109)\n    switch backdrop to (backdrop13 v)\nend\nif <(level) = [12]> then\n    go to x: (-186) y: (-123)\n    switch backdrop to (backdrop1 v)\nend\nif <(level) = [13]> then\n    go to x: (-170) y: (-122)\n    switch backdrop to (backdrop14 v)\nend\nif <(level) = [14]> then\n    go to x: (-168) y: (153)\n    switch backdrop to (backdrop15 v)\nend\nif <(level) = [15]> then\n    go to x: (-178) y: (-105)\n    switch backdrop to (backdrop16 v)\nend\nif <(level) = [16]> then\n    go to x: (-181) y: (-126)\n    switch backdrop to (backdrop17 v)\nend\nif <(level) = [17]> then\n    hide\n    switch backdrop to (backdrop11 v)\nend\n\nwhen I receive [next level v]\nchange [level v] by (1)\nbroadcast (start level v)\n\nwhen flag clicked\nhide\nif <(level) = [1]> then\n    show\nend\n\nwhen [c v] key pressed\nhide\n\nwhen [space v] key pressed\nask [Enter game code:] and wait\nif <(answer) = [Black skin]> then\n    switch costume to (black skin code v)\nend\nif <(answer) = [Red skin]> then\n    switch costume to (red skin code v)\nend\nif <(answer) = [WinterGifts2020Day4]> then\n    switch costume to (winter gifts 2020 v)\nend\nif <(answer) = [NOTTHEEND]> then\n    broadcast (Easter v)\nend\n\nwhen [i v] key pressed\nset [ghost v] effect to (100)\n\nwhen flag clicked\nswitch costume to (normal v)\n\nwhen [r v] key pressed\nswitch costume to (normal v)\n\nwhen [r v] key pressed\nswitch backdrop to (easter-egg-decorating-washi-tape-1280x960 v)\nstop [all v]\n\nwhen I receive [easter v]\nswitch backdrop to (easter-egg-decorating-washi-tape-1280x960 v)\nstop [all v]\n\nwhen backdrop switches to [easter-egg-decorating-washi-tape-1280x960 v]\nhide\n\nwhen [w v] key pressed\nif <(jumping) = [false]> then\n    set [y velocity v] to [15]\n    set [jumping v] to [true]\nend\n\n@moving platform\n\nwhen flag clicked\nhide\n\nwhen I receive [start level v]\nstop [other scripts in sprite v]\nif <(level) = [2]> then\n    show\nelse\n    hide\nend\nmove platform\n\ndefine move platform\ngo to x: (-27) y: (-137)\nforever\n    glide (1) secs to x: (-33) y: (54)\n    glide (1) secs to x: (-27) y: (-137)\nend\n\n@Sprite1\n\nwhen flag clicked\ngo to [front v] layer\nset [ghost v] effect to (100)\n\n
Happy Pride everyone!\nThis platformer includes 14 different levels, each one telling a story about different problems LGBT+ youth can face.\nInstructions are in the game, all levels are completable, you don't need to do the levels in order\n\nBug Warning - Characters with large props (like Quinn and Indigo) will bug if you stand up against the wall and turn right.