⊹₊· ˚  E X P L O R E  ˚·₊⊹  | A Platformer #Games #Art ihcm

Instructions: ⊹₊· ˚ E X P L O R E | Mobile Platformer ˚·₊⊹\n⊹₊· ˚ ⠀D O R R A vibes ⊹₊· ˚ ⠀\n\nTOP LOVED!! - 2022/07/18 ★TYSM★\n\n➥ Difficulty 6/10\nㅤㅤnote: you can only advertise if you follow me!!\n\nㅤㅤ〉Extra info about this project ✎\nㅤㅤㅤ♫ E.VAX - Karst\nㅤㅤㅤMade in: 14 hours for @wowyok game jam\n     \n  〉Changelog ✎\n         01/07/2022\n         Initial Release\n\n〉Credits for this project ✎\n         @250119code2 for the coins (edited by me(!\n         @-GentooPenguin- for the death effect!\n         @ -AlphaK- for some art!\n         @jarvin36 for some art! (edited by me)\n         @holybird3 for detector! (edited by me)\n         @-simplestudios-- for player 1 art\n         @JtheJet for the bg\nㅤ\nComment “ISR(International Super Reader)” if you read upto here.\nㅤㅤ\n#games #music #art platformer griffpatch ceebee -ekdaukin 9cj9 explorer game fun cube cool arcade water coin\n\nFollow me for more epic games.\nHave a nice day.\nSigning off I'm @Ihcm\n\nSunset platformer! : https://scratch.mit.edu/projects/795173275 (Owner of project)

@Stage\n\nplay sound [pop v] until done\n\nwhen flag clicked\nplay sound [3 - Fresh v] until done\n\n@Player\n\ndefine Walljump Y\nif <touching (level v)?> then\n    repeat until <not <touching (level v)?>>\n        change y by ((([abs v] of (YV) ) / (YV)) * (-1))\n    end\n    set [yv v] to [0]\nend\n\ndefine Walljump X\nrepeat (8)\n    if <touching (level v)?> then\n        change y by (1)\n    end\nend\nif <touching (level v)?> then\n    change y by (-8)\n    repeat until <not <touching (level v)?>>\n        change x by ((([abs v] of (XV) ) / (XV)) * (-1))\n    end\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(mouse y) > (y position)> and <mouse down?>>> then\n        if <(XV) < [0]> then\n            set [xv v] to ((Speed) * (6))\n        else\n            set [xv v] to ((Speed) * (-6))\n        end\n        set [yv v] to ((Jump Height) - (3))\n    else\n        set [xv v] to [0]\n    end\nend\n\ndefine JR\nif <<(YV) > [0]> and <not <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(mouse y) > (y position)> and <mouse down?>>>>> then\n    change [yv v] by (-0.9)\nend\n\nwhen flag clicked\nset [dadf v] to [1]\nshow\nclear graphic effects\ngo to [front v] layer\nset size to (80) %\nset rotation style [left-right v]\ngo to x: (-200) y: (0)\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    if <not <touching (water v)?>> then\n        if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(mouse x) > (x position)> and <mouse down?>>> then\n            point in direction (90)\n            change [xv v] by (Speed)\n        end\n        if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<(mouse x) < (x position)> and <mouse down?>>> then\n            point in direction (-90)\n            change [xv v] by ((Speed) * (-1))\n        end\n    end\n    if <touching (water v)?> then\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(mouse y) > (y position)> and <mouse down?>>> then\n            start sound [Exit Water v]\n            set [yv v] to [8]\n        end\n        change [yv v] by (-0.1)\n        if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(mouse x) > (x position)> and <mouse down?>>> then\n            point in direction (90)\n            change [xv v] by (0.1)\n        end\n        if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<(mouse x) < (x position)> and <mouse down?>>> then\n            point in direction (-90)\n            change [xv v] by (-0.1)\n        end\n    end\n    if <touching (water2 v)?> then\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(mouse y) > (y position)> and <mouse down?>>> then\n            set [yv v] to [8]\n        end\n        change [yv v] by (0)\n        if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(mouse x) > (x position)> and <mouse down?>>> then\n            point in direction (90)\n            change [xv v] by (0.5)\n        end\n        if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<(mouse x) < (x position)> and <mouse down?>>> then\n            point in direction (-90)\n            change [xv v] by (-0.5)\n        end\n    end\n    set [xv v] to ((XV) * (Friction))\n    change x by (XV)\n    Walljump X\n    change [yv v] by ((Gravity) * (-1))\n    change y by (YV)\n    Walljump Y\n    change y by (-1)\n    if <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(mouse y) > (y position)> and <mouse down?>>> and <touching (level v)?>> then\n        start sound [J5 v]\n        set [yv v] to (Jump Height)\n    end\n    change y by (1)\n    JR\n    if <(x position) > [230]> then\n        start sound [confetti v]\n        broadcast (Next v)\n        change [lvl v] by (1)\n        go to x: (-200) y: (0)\n        set [xv v] to [0]\n        set [yv v] to [0]\n    end\n    if <touching (tramp v)?> then\n        set [yv v] to [25]\n    end\n    if <<<touching (spikes v)?> or <touching (lava v)?>> or <(y position) < [-170]>> then\n        start sound [Crunch v]\n        broadcast (Fail v)\n        go to x: (-200) y: (0)\n        set [xv v] to [0]\n        set [yv v] to [0]\n    end\nend\n\nwhen flag clicked\nset [lvl v] to [1]\nset [speed v] to [2]\nset [friction v] to [0.8]\nset [jump height v] to [13]\nset [gravity v] to [1]\n\nbroadcast (Fail v)\n\nwhen flag clicked\nforever\n    switch costume to ([costume name v] of [thanks v])\nend\n\n@Level\n\nwhen flag clicked\nforever\n    switch costume to (Lvl)\nend\n\nwhen I receive [fail v]\nrepeat (3)\n    change y by (-4)\n    wait (0) seconds\n    change y by (4)\n    wait (0) seconds\nend\nset y to (0)\nset x to (0)\n\n@Spikes\n\nwhen flag clicked\nforever\n    switch costume to (Lvl)\nend\n\nwhen I receive [fail v]\nrepeat (3)\n    change y by (-4)\n    wait (0) seconds\n    change y by (4)\n    wait (0) seconds\nend\nset y to (0)\nset x to (0)\n\n@Lava\n\nwhen flag clicked\nforever\n    go to x: (0) y: (([sin v] of ((timer) * (100)) ) * (6))\nend\n\nwhen flag clicked\nforever\n    switch costume to (Lvl)\nend\n\n@coolio\n\nwhen flag clicked\nforever\n    switch costume to (Lvl)\nend\n\nwhen I receive [fail v]\nrepeat (3)\n    change y by (-4)\n    wait (0) seconds\n    change y by (4)\n    wait (0) seconds\nend\nset y to (0)\n\n@Tramp\n\nwhen flag clicked\nforever\n    go to [back v] layer\n    switch costume to (Lvl)\nend\n\n@Coins\n\ndefine Spin\n\ndefine Clone At X: (x) (y) At Size: (size) (delay)\nhide\nset size to (size) %\ngo to x: (x) y: (y)\ncreate clone of (_myself_ v)\npoint in direction (90)\n\nwhen I receive [next v]\n\nwhen I start as a clone\nshow\nwait until <touching (player v)?>\nchange [coinscollected v] by (1)\nstart sound [Collect v]\nset rotation style [all around v]\nset [coin y v] to [10]\nrepeat (20)\n    change [coin y v] by (-1)\n    turn right (8) degrees\n    change y by (Coin Y)\n    change [ghost v] effect by (5)\nend\ndelete this clone\n\nSpin\n\nwhen [m v] key pressed\nset [mouse v] to (join (round (mouse x)) (join [ ] (round (mouse y))))\n\nwhen I start as a clone\nforever\n    change y by ((0.5) * ([sin v] of (Coins: frame) ))\n    change [coins: frame v] by (5)\nend\n\nshow\n\nwhen flag clicked\nhide\nset [coins: frame v] to [0]\nset [coinscollected v] to [0]\nif <(Lvl) = [1]> then\n    Clone At X: [-25] [-50] At Size: [100] [0]\n    Clone At X: [51] [-50] At Size: [100] [0.3]\n    wait until <(Lvl) = [2]>\nend\noof\nif <(Lvl) = [2]> then\n    Clone At X: [51] [-70] At Size: [100] [0]\n    Clone At X: [120] [-70] At Size: [100] [0.3]\n    Clone At X: [189] [-70] At Size: [100] [0.3]\nend\noof\nwait until <(Lvl) = [3]>\nif <(Lvl) = [3]> then\n    Clone At X: [20] [50] At Size: [100] [0]\n    Clone At X: [120] [50] At Size: [100] [0.3]\nend\noof\nwait until <(Lvl) = [4]>\nif <(Lvl) = [4]> then\n    Clone At X: [0] [0] At Size: [100] [0.3]\nend\noof\nwait until <(Lvl) = [5]>\nif <(Lvl) = [5]> then\n    Clone At X: [0] [0] At Size: [100] [0.3]\n    Clone At X: [50] [0] At Size: [100] [0.3]\n    Clone At X: [100] [0] At Size: [100] [0.3]\n    Clone At X: [150] [0] At Size: [100] [0.3]\nend\noof\nwait until <(Lvl) = [6]>\nif <(Lvl) = [6]> then\n    Clone At X: [63] [-91] At Size: [100] [0.3]\nend\noof\nwait until <(Lvl) = [7]>\nif <(Lvl) = [7]> then\n    Clone At X: [-14] [38] At Size: [100] [0.3]\nend\noof\n\nwait until <(Lvl) = [10]>\nif <(Lvl) = [10]> then\n    Clone At X: [0] [0] At Size: [100] [0.3]\n    Clone At X: [50] [0] At Size: [100] [0.3]\n    Clone At X: [100] [0] At Size: [100] [0.3]\n    Clone At X: [150] [0] At Size: [100] [0.3]\nend\n\nif <(Lvl) = [10]> then\n    Clone At X: [-51] [-50] At Size: [100] [0]\n    Clone At X: [51] [-50] At Size: [100] [0.3]\nend\nif <(Lvl) = [11]> then\n    Clone At X: [25] [-142] At Size: [100] [0]\n    Clone At X: [-194] [75] At Size: [100] [0]\n    Clone At X: [134] [135] At Size: [100] [0]\nend\nif <(Lvl) = [12]> then\n    Clone At X: [16] [-136] At Size: [100] [0]\n    Clone At X: [96] [-136] At Size: [100] [0.3]\n    Clone At X: [-64] [150] At Size: [100] [0]\nend\nif <(Lvl) = [13]> then\n    Clone At X: [110] [-10] At Size: [200] [0]\nend\nif <(Lvl) = [17]> then\n    Clone At X: [21] [-20] At Size: [100] [0]\n    Clone At X: [-175] [131] At Size: [100] [0]\nend\nif <(Lvl) = [18]> then\n    Clone At X: [-158] [101] At Size: [100] [0]\n    Clone At X: [-6] [-63] At Size: [100] [0]\nend\nif <(Lvl) = [19]> then\n    Clone At X: [110] [-60] At Size: [100] [0]\n    Clone At X: [-26] [145] At Size: [100] [0]\nend\nif <(Lvl) = [20]> then\n    Clone At X: [-40] [-81] At Size: [100] [0]\n    Clone At X: [40] [-81] At Size: [100] [0.4]\n    Clone At X: [189] [125] At Size: [100] [0]\nend\n\nClone At X: [189] [-70] At Size: [100] [0.3]\n\nif <(Lvl) = [3]> then\n\nClone At X: [20] [50] At Size: [100] [0]\nClone At X: [120] [50] At Size: [100] [0.3]\n\nClone At X: [50] [0] At Size: [100] [0.3]\n\ndefine oof\n\nwhen I receive [next v]\nrepeat (10)\n    delete this clone\nend\ndelete this clone\n\n@Water\n\nwhen flag clicked\nhide\n\ngo [backward v] (10) layers\n\nrepeat (29)\n\ngo [backward v] (1) layers\n\ngo [forward v] (1) layers\n\nwhen flag clicked\nshow\nforever\n    set y to (([sin v] of ((timer) * (100)) ) * (5))\n    set [ghost v] effect to (55)\n    switch costume to (Lvl)\nend\n\nwait until <(Lvl) = [11]>\ngo [forward v] (5) layers\n\nwhen flag clicked\nbroadcast (Animation Start v)\n\n@Water2\n\nwhen flag clicked\nhide\n\ngo [backward v] (10) layers\n\nrepeat (29)\n\ngo [backward v] (1) layers\n\ngo [forward v] (1) layers\n\nwhen flag clicked\nshow\nforever\n    set [ghost v] effect to (0)\n    switch costume to (Lvl)\nend\n\nset y to (([sin v] of ((timer) * (100)) ) * (5))\n\nwait until <(Lvl) = [11]>\ngo [forward v] (5) layers\n\nwhen flag clicked\nbroadcast (Animation Start v)\n\n@fail\n\nwhen I receive [fail v]\nshow\nrepeat (4)\n    change [ghost v] effect by (20)\nend\nhide\nset [ghost v] effect to (0)\n\nwhen flag clicked\nhide\n\n@Sprite1\n\nwhen flag clicked\nwait () seconds\nforever\n    go to [front v] layer\n    set [ghost v] effect to (100)\nend\n\ngo to [front v] layer\n\n@Love and fave reminder\n\nwhen flag clicked\nwait (2.5) seconds\ngo to [front v] layer\n\nwhen I receive [start! v]\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nhide\nwait (1) seconds\nforever\n    if <(Actions \(love/fave\)) < [2]> then\n        switch costume to (costume1 v)\n        go to x: (0) y: (150)\n        show\n        go to [front v] layer\n        start sound [High Whoosh v]\n        repeat (11)\n            change y by (-2)\n        end\n        repeat (7)\n            change y by (1)\n        end\n        repeat (6)\n            change y by (-2)\n        end\n        wait (5) seconds\n        start sound [High Whoosh v]\n        repeat (17)\n            change y by (7)\n        end\n        hide\n        wait (pick random (10) to (20)) seconds\n    else\n        stop [this script v]\n    end\nend\n\n@Thanks\n\nwhen flag clicked\nhide\nwait (1) seconds\nwait until <(Actions \(love/fave\)) = [2]>\nswitch costume to (player2 v)\nwait (1) seconds\nshow\ngo to x: (0) y: (50)\nreset timer\ngo to [front v] layer\nswitch costume to (player2 v)\nset [ghost v] effect to (100)\nrepeat until <(timer) > [3.5]>\n    change y by ((y position) / (-15))\n    change [ghost v] effect by (-3)\nend\nreset timer\nrepeat until <(timer) > [3.5]>\n    change y by (((y position) - (-100)) / (-15))\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen flag clicked\nswitch costume to (player v)\n\n@detector\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nset [actions \(love/fave\) v] to [0]\nforever\n    set [touching v] to [none]\n    Detect [love] at [-201] [-220]\n    Detect [fave] at [-201] [-220]\nend\n\ndefine Detect (thing) at (x) (y)\nswitch costume to (empty v)\nset size to (27000) %\ngo to x: (x) y: (y)\nset size to (100) %\nswitch costume to (thing)\nif <touching (mouse-pointer v)?> then\n    set [touching v] to (costume [name v])\nend\n\nwhen flag clicked\nforever\n    wait until <(touching) = [love]>\n    wait (0.2) seconds\n    if <(touching) = [love]> then\n        change [actions \(love/fave\) v] by (1)\n        stop [this script v]\n    end\nend\n\nwhen flag clicked\nforever\n    wait until <(touching) = [fave]>\n    wait (0.2) seconds\n    if <(touching) = [fave]> then\n        change [actions \(love/fave\) v] by (1)\n        stop [this script v]\n    end\nend\n\n@Thumb\n\nwhen flag clicked\nhide\n\n@Sprite2\n\nwhen flag clicked\ngo [backward v] (1) layers\nforever\n    broadcast (t v)\nend\n\nwhen I receive [t v]\ngo to (player v)\n\n