title Extra step
author Rosden Shadow [Mark Signorelli]
homepage rosden.itch.io

( sorry about all the junk code from me trying to make a game with multiple power ups)

noaction
run_rules_on_level_Start

background_color #3B3942

text_color #E0AAF2

again_interval 0.14
========
OBJECTS
========

Background
#46495B #3B3942 (#E57ED5 #CC5285)
11111
11101
11111
10111
11111
(
00101
01110
11011
01111
10110)
(
11101
00101
11111
10100
10111)


nomove
#FFEED9 #536673
.....
.000.
.010.
.000.
.....

burner1
#FFEED9 #F2F2AA #E5C17E
.....
.100.
.2.0.
.221.
.....

burner2
#FFEED9 #F2F2AA #E5C17E
.....
.001.
.0.2.
.122.
.....

burner3
#FFEED9 #F2F2AA #E5C17E
.....
.122.
.0.2.
.001.
.....

burner4
#FFEED9 #F2F2AA #E5C17E
.....
.221.
.2.0.
.100.
.....

Target
white #423D39
.....
.000.
.0.0.
.000.
.....

Wall
#FFD9E0 #E0AAF2  #A87EE5 #705C84
21110
21110
22221
23232
32323

overwall
#FFD9E0 #E0AAF2  #A87EE5 #705C84
.....
.....
.....
10000
21110


Playerright
white #CCCCCC  #7EE58D #5C8466
.000.
11202
11313
11110
.1.1.

playerleft
white #CCCCCC  #7EE58D #5C8466
.000.
20211
31311
01111
.1.1.

Crate
#D9FFDC #7EE58D #5C8466 #4F5B46
21100
21110
22110
32223
.333.

overcrate
#D9FFDC #7EE58D #5C8466 #4F5B46
.....
.....
.....
.....
.000.

Crate2
#FFD9E0 #E0AAF2 #A87EE5 #705C84
21100
21110
22110
32223
.333.

overcrate2
#FFD9E0 #E0AAF2 #A87EE5 #705C84
.....
.....
.....
.....
.000.

Cratefail
#CCCCCC #999999 #666666 #333333 #231F26
21100
21110
22110
32223
.333.

overcratefail
#CCCCCC #999999 #666666 #333333 #231F26
.....
.....
.....
.....
.000.

power1
#AAE0F2 #7EA1E5
..0..
.000.
.101.
.111.
..1..

power2
#CC7A52 #B32D2D
..0..
.000.
.101.
.111.
..1..

power3
#7EE58D #5C8466
..0..
.000.
.101.
.111.
..1..

powhud1
#AAE0F2 #7EA1E5 #5C6684
.100.
.210.
.220.
.....
.....

powhud1acti
#F2F2AA #E5C17E #CC7A52 #736053
.100.
.210.
.220.
.....
.....

powhud2
#CC7A52 #B32D2D #73342E
.100.
.210.
.220.
.....
.....

powhud3
#7EE58D #5C8466 #4F5B46
.100.
.210.
.220.
.....
.....

end
#D9FFDC #7EE58D #5C8466 #4F5B46
21100
21110
22110
32223
.333.
endx
#D9FFDC #7EE58D #5C8466 #4F5B46
21100
21110
22110
32223
.333.


1up
#D9FFDC #7EE58D #5C8466 #4F5B46
.....
.....
.....
.....
21110
1up2
#D9FFDC #7EE58D #5C8466 #4F5B46
21110
.....
.....
.....
.....

1down
#D9FFDC #7EE58D #5C8466 #4F5B46
.....
.....
21110
21110
.....

1left
#D9FFDC #7EE58D #5C8466 #4F5B46
1....
1....
11...
2....
3....
1left2
#D9FFDC #7EE58D #5C8466 #4F5B46
.....
.....
.....
.....
0....
1right
#D9FFDC #7EE58D #5C8466 #4F5B46
...11
....1
....1
....2
....3
1right2
#D9FFDC #7EE58D #5C8466 #4F5B46
.....
.....
.....
.....
....0

1leftremoval
#D9FFDC #7EE58D #5C8466 #4F5B46
1....
1....
1....
.....
.....
1rightremoval
#D9FFDC #7EE58D #5C8466 #4F5B46
....1
....1
....1
.....
.....

1leftremovalx
#D9FFDC #7EE58D #5C8466 #4F5B46
1....
1....
1....
1....
1....
1rightremovalx
#D9FFDC #7EE58D #5C8466 #4F5B46
....1
....1
....1
....1
....1

2up
#FFD9E0 #E0AAF2 #A87EE5 #705C84
.....
.....
.....
.....
21110
2up2
#FFD9E0 #E0AAF2 #A87EE5 #705C84
21110
.....
.....
.....
.....

2down
#FFD9E0 #E0AAF2 #A87EE5 #705C84
.....
.....
21110
21110
.....

2left
#FFD9E0 #E0AAF2 #A87EE5 #705C84
1....
1....
11...
2....
3....
2left2
#FFD9E0 #E0AAF2 #A87EE5 #705C84
.....
.....
.....
.....
0....
2right
#FFD9E0 #E0AAF2 #A87EE5 #705C84
...11
....1
....1
....2
....3
2right2
#FFD9E0 #E0AAF2 #A87EE5 #705C84
.....
.....
.....
.....
....0

2leftremoval
#FFD9E0 #E0AAF2 #A87EE5 #705C84
1....
1....
1....
.....
.....
2rightremoval
#FFD9E0 #E0AAF2 #A87EE5 #705C84
....1
....1
....1
.....
.....

2leftremovalx
#FFD9E0 #E0AAF2 #A87EE5 #705C84
1....
1....
1....
1....
1....
2rightremovalx
#FFD9E0 #E0AAF2 #A87EE5 #705C84
....1
....1
....1
....1
....1


cloner
#E5C17E #DB7F55 #B32D2D #73342E
.100.
.210.
.221.
.332.
.....

swapcrate
Orange Yellow
00000
0...0
0...0
0...0
00000

swapwall
black
.....
.....
.....
.....
.....

thefloor
#3B3942
00000
00000
00000
00000
00000

thefloorx
#3B3942
00000
00000
00000
00000
00000

eend
#3B3942
00000
00000
00000
00000
00000

pitani
black white #CCCCCC
.1.1.
2.1.1
.2.1.
2.2.1
.2.2.

pitani2
black white #CCCCCC
..1..
.2.1.
2.2.1
.2.2.
..2..

pitani3
black white #CCCCCC
.....
..1..
.2.1.
..2..
.....

pitani4
black white #CCCCCC
.....
.....
..1..
.....
.....


blockani
black #D9FFDC #7EE58D #5C8466 #4F5B46
.1.1.
2.1.1
.2.1.
2.2.1
.2.2.

blockani2
black #D9FFDC #7EE58D #5C8466 #4F5B46
..1..
.2.1.
2.2.1
.2.2.
..2..

blockani3
black #D9FFDC #7EE58D #5C8466 #4F5B46
.....
..1..
.2.1.
..2..
.....

blockani4
black #D9FFDC #7EE58D #5C8466 #4F5B46
.....
.....
..1..
.....
.....

(
checkempty
black
.....
.....
.....
.....
.....

checkblock
black
.....
.....
.....
.....
.....
)
stopcha
transparent

resetacti
transparent

nopow
transparent
nostep
transparent

hudwork
transparent

hudstart
transparent

con
transparent

hudadd
transparent

spa
transparent

ani
transparent
noburn
transparent


stepup
transparent
stepdown
transparent
stepleft
transparent
stepright
transparent


pit
black #231F26 (#E57ED5 #CC5285)
11111
10101
01010
00000
00000

pitfull
black #231F26 (#E57ED5 #CC5285)
00000
00000
00000
00000
00000


switcrate
black
.....
.....
.....
.....
.....

switcrate2
black
.....
.....
.....
.....
.....

arrow
black
.....
.....
.0.0.
.000.
..0..

arrow2
black
.....
.0.0.
.000.
..0..
.....

arrowx
black
.....
.....
.....
.....
.....

arrowx2
black
.....
.....
.....
.....
.....

winend
#FFD9E0 #E0AAF2 #A87EE5 #705C84
1000.
21100
21110
22110
.2221


=======
LEGEND
=======

. = Background
# = Wall
P = Playerright
* = Crate

O = target
n = nomove
a = arrow2 and wall
e=end
t = end and target and eend
w=end and winend

c=cloner
-=thefloor
x=thefloorx

;=pit

1= power1
2= power2
3= power3

0=hudadd and thefloor and hudstart

hud=powhud1 or powhud2 or powhud3 or powhud1acti

feelx= overcrate or overcrate2 or overcratefail

feel = overwall
pushable=crate or cloner or swapcrate  or switcrate or switcrate2 or crate2 
win=crate or wall

power=power1 or power2 or power3

theemx= crate 
player=playerright or playerleft

apit= pit or pitfull

cubes=Crate or crate2
blocker = wall or crate  or nomove or player or arrow or apit

blockerx= wall

step=stepup or stepdown or stepleft or stepright

arrowk = arrow or arrow2 or arrowx or arrowx2
burner=burner1 or burner2 or burner3 or burner4

theconfeel2=2up or 2up2 or 2down or 2left or 2left2 or 2right or 2right2 or 2leftremoval or 2rightremoval or 2leftremovalx or 2rightremovalx

theconfeel=1up or 1up2 or 1down or 1left or 1left2 or 1right or 1right2 or 1leftremoval or 1rightremoval or 1leftremovalx or 1rightremovalx

pitanix=pitani or pitani2 or pitani3 or pitani4

blockanix=blockani or blockani2 or blockani3 or blockani4

=======
SOUNDS
=======

pushable MOVE 36772507

EndLevel 74089700

player MOVE 68988304
sfx0 52836103
sfx1 45427502

sfx2 29503700
sfx3 81951902


sfx4 58584302

sfx5 49778503

sfx6 72843303

sfx7 55064703

sfx8 86999103

sfx9 41950102

sfx10 54020101 

================
COLLISIONLAYERS
================

Background
burner
Target
nomove
Player, Wall, pushable,swapwall,thefloor,thefloorx,cratefail,power
apit

pitanix
blockanix

stopcha
resetacti
nopow
nostep
hudwork
hudstart
step
con
noburn
spa
ani
arrow, arrow2, arrowx, arrowx2
winend
eend
end, endx

hudadd
hud



feelx

2left
2left2
2right
2right2

1left
1left2
1right
1right2

2up2
2up

1up2
1up

2down
1down

2leftremoval
2rightremoval
2leftremovalx
2rightremovalx
1leftremoval
1rightremoval
1leftremovalx
1rightremovalx

feel


======
RULES
======



[feel]->[]
[feelx]->[]
[theconfeel]->[]
[theconfeel2]->[]

[pitani4]->[]
[pitani3]->[pitani4]
[pitani2]->[pitani3]
[pitani]->[pitani2]

[blockani4]->[]
[blockani3]->[blockani4]
[blockani2]->[blockani3]
[blockani]->[blockani2]



[player stepright]->[right player]
[player stepleft]->[left player]
[player stepup]->[up player]
[player stepdown]->[down player]



[> crate2 noburn]->[> crate2 > noburn]

[> player |power1][hudadd]->[> player |] [hudadd powhud1] sfx6

[> player |power2][hudadd]->[> player |] [hudadd powhud2] sfx7

[> player |power3][hudadd]->[> player |] [hudadd powhud3] sfx8

[ >  Player | pushable  ] -> [  >  Player | > pushable ]

[> pushable | pushable]->[> pushable |> pushable]

rigid [ Moving cubes | cubes ] [con] -> [ Moving cubes | MOVING cubes ] [con]
 
([powhud1] [left player|no blocker] ->[powhud1][left player left stepleft stepleft]

[powhud1] [right player] ->[powhud1][right player right stepright stepright])

late left[hud hudadd|]->[hud|hudadd]


[hudwork]->[]

[powhud1|powhud1acti]->[powhud1 hudwork|powhud1acti]
[powhud1 hudstart]->[powhud1 hudwork hudstart]
([Moving player][powhud1|powhud1acti]->[Moving player][powhud1 hudwork|powhud1acti]
[Moving player][powhud1 hudstart]->[Moving player][powhud1 hudwork hudstart])




[> player|wall]->[ player resetacti|wall]
[> player|pushable|wall]->[ player resetacti|pushable|wall]
[> player|pushable|pushable|wall]->[ player resetacti|pushable|pushable|wall]
[> player|pushable|pushable|pushable|wall]->[ player resetacti|pushable|pushable|pushable|wall]
 
[> player|apit no step]->[| pitani apit] sfx9
[> player apit no step ]->[ pitani apit] sfx9

[> cubes|apit]->[| blockani apit] sfx10

[> power1|apit]->[power1 | apit]
  
 
 ([powhud1 hudwork]->[powhud1acti])
[step]->[]
 
right[right player|][powhud1 hudwork]->[right player| stepright] [powhud1acti]
left[left player|][powhud1 hudwork]->[left player| stepleft] [powhud1acti]
up[up player|][powhud1 hudwork]->[up player| stepup] [powhud1acti]
down[down player|][powhud1 hudwork]->[down player| stepdown] [powhud1acti]

[Moving player][powhud1|powhud1acti]->[Moving player][powhud1 hudwork|powhud1acti]
[Moving player][powhud1 hudstart]->[Moving player][powhud1 hudwork hudstart]




late [stopcha]->[]
late[power1] [target]->[power1][stopcha target] 

late[target no stopcha]->[burner1] sfx0

late[nopow]->[]
late[nostep]->[]

late[powhud1acti][resetacti]->[powhud1][resetacti]

late [powhud1][powhud1acti]->[powhud1][powhud1acti nopow]

late [step][powhud1acti]->[step][powhud1acti nostep]

late[resetacti]->[]

late [powhud1acti no nostep no nopow]->[powhud1]

late[powhud2 no con]->[powhud2 con]
 
late left[hudadd hud|]->[hud|hudadd]

late[player no spa]->[player spa]

late[spa no player][burner1 no ani ]->[ spa][burner2 ani]
late[spa no player][burner2 no ani]->[ spa][burner3 ani]
late[spa no player][burner3 no ani]->[spa][burner4 ani]
late[spa no player][burner4 no ani]->[spa][burner1 ani]

late[spa no player]->[]

late[ani]->[]
late[noburn no burner]->[]
late[noburn no crate2]->[]

(late[crate burner ]->[ crate2 burner noburn] sfx5

late [crate2 burner  no noburn]->[cratefail burner ] sfx4)



[ left Playerright] -> [ left playerleft]
[ right Playerleft] -> [ right playerright]

[endx] ->[thefloor] sfx2
[end | thefloor]-> [endx |thefloor]


late up [wall| ]-> [wall|overwall]
late up [crate2| ]-> [crate2|overcrate2]

late up [crate2|cubes][con]->[Crate2 2up2|2up cubes][con]
late down [crate2|cubes][con]->[Crate2 2down| cubes][con]
late right [crate2|cubes][con]->[Crate2 2right| cubes][con]
late up [crate2 2right|][con]->[Crate2 2right| 2right2][con]
late left [crate2|cubes][con]->[Crate2 2left| cubes][con]
late up [crate2 2left|][con]->[Crate2 2left| 2left2][con]
late left [ crate2 2up2|cubes][con]->[Crate2 2up2 2leftremovalx|cubes ][con]
late left [ crate2 2down|cubes][con]->[Crate2 2down 2leftremovalx|cubes ][con]
late right [ crate2 2up2 |cubes ][con]->[Crate2 2up2 2rightremovalx |cubes  ][con]
late right [ crate2  2down|cubes ][con]->[Crate2 2down 2rightremovalx|cubes ][con]
(late left [ crate2 2up2|cubes]->[Crate2 2up2 2leftremovalx|cubes 2rightremovalx]
late left [ crate2 2down|cubes]->[Crate2 2down 2leftremovalx|cubes 2rightremovalx]
late right [ crate2 2up2 |cubes ]->[Crate2 2up2 2rightremovalx |cubes  2leftremovalx]
late right [ crate2  2down|cubes ]->[Crate2 2down 2rightremovalx|cubes  2leftremovalx])
late down [2leftremovalx| no 2left][con]->[2leftremoval|][con]
late down [2rightremovalx| no 2right][con]->[2rightremoval|][con]

late up [theemx| ]-> [theemx|overcrate]

late up [crate|cubes][con]->[Crate 1up2|1up cubes][con]
late down [crate|cubes][con]->[Crate 1down| cubes][con]
late right [crate|cubes][con]->[Crate 1right| cubes][con]
late up [crate 1right|][con]->[Crate 1right| 1right2][con]
late left [crate|cubes][con]->[Crate 1left| cubes][con]
late up [crate 1left|][con]->[Crate 1left| 1left2][con]
late left [ crate 1up2|cubes][con]->[Crate 1up2 1leftremovalx|cubes ][con]
late left [ crate 1down|cubes][con]->[Crate 1down 1leftremovalx|cubes ][con]
late right [ crate 1up2 |cubes ][con]->[Crate 1up2 1rightremovalx |cubes  ][con]
late right [ crate  1down|cubes ][con]->[Crate 1down 1rightremovalx|cubes  ][con]
(late left [ crate 1up2|cubes]->[Crate 1up2 1leftremovalx|cubes 1rightremovalx]
late left [ crate 1down|cubes]->[Crate 1down 1leftremovalx|cubes 1rightremovalx]
late right [ crate 1up2 |cubes ]->[Crate 1up2 1rightremovalx |cubes  1leftremovalx]
late right [ crate  1down|cubes ]->[Crate 1down 1rightremovalx|cubes  1leftremovalx])
late down [1leftremovalx| no 1left][con]->[1leftremoval|][con]
late down [1rightremovalx| no 1right][con]->[1rightremoval|][con]

late up [cratefail| ]-> [cratefail|overcratefail]

late up [end| ]-> [end|overcrate]
late up [endx| ]-> [endx|overcrate]

late up [apit|apit]->[pitfull|apit]

late up [apit|no apit]->[pit|]



[]-> again 
(
[arrow]->[arrowx2]
[arrow2]->[arrowx]

[arrowx]->[arrow]
[arrowx2]->[arrow2])
==============
WINCONDITIONS
==============

(no power1)
all player on burner

some player
no powhud1acti

=======
LEVELS
=======

message Eat all the pellets AND end on the target
(Remove all green blocks)


message level 1 of 7
--------0
-;;;;;;;-
;;;;;;;;;
;;;...;;;
;;..O..;;
;;..P..;;
;;.....;;
;;#...#;;
;;;#1#;;;
;;;;.;;;;
-;;;;;;;-

message level 2 of 7
--------0
-;;;;;;;-
;;;;;;;;;
;;;###;;;
;;#.P.#;;
;;.O...;;
;;.1.1.;;
;;.....;;
;;;...;;;
;;;;;;;;;
-;;;;;;;-

message level 3 of 7
--------0
-;;;;;;;-
;;;;;;;;;
;;..P..;;
;;..O..;;
;;..1..;;
;;.....;;
;;..1..;;
;;.....;;
;;;;;;;;;
-;;;;;;;-

message level 4 of 7
--------0
-;;;;;;;-
;;;;;;;;;
;;.....;;
;;..P..;;
;;.1O1.;;
;;..1..;;
;#.....#;
;#..*..#;
;;#...#;;
-;;;;;;;-

message level 5 of 7
--------0
--#####--
###P1.###
#..*....#
#..1....#
#.O.....#
#.......#
#.1.....#
#.......#
###...###
--#####--

message level 6 of 7
--------0
-;######-
;;1.P..#-
;......##
;.....1.#
;.;.....#
;.1...*.#
;....O..#
;##....##
;;;....#-
--;#####-

message level 7 of 7
--------0
-######;-
;#....#;-
;#1.P.##;
;......1;
;.......;
;..;..*.;
;..1....;
;;;..O..;
;;;;...;;
-;;;;;;;-



(--------0
-#######-
##1.P..##
#.*.....#
;.....1.#
;.......#
;.;.....#
;.1.O...#
;.......#
;########
---------)

(--------0
-#######-
##.;P;.##
#..;1;..#
#.......#
#..1O1..#
#.......#
#..;.;..#
#..*.*..#
#...;...#
#########)

(--------0
-;;;;;;;-
;;#####;;
;##...##;
;#..P..#;
;#..O..#;
;#.1.1.#;
;#.....#;
;#..#..#;
;;#####;;
-;;;;;;;-)

(--------0
-;;;;;;;-
;;;;;;;;;
;;;###;;;
;;#.P.#;;
;#.O...#;
;#.111.#;
;;.....;;
;;.....;;
;;..#..;;
-;;;;;;;-)

(--------0
-#######-
##.....##
#.1...1.#
#.......#
#...1...#
#.......#
#...O...#
#...P...#
##.....##
-#######-)

(--------0
-;;;;;;;-
;;;;;;;;;
;;;;;;;;;
;;;...;;;
;;..1..;;
;;.1.1.;;
;;..P..;;
;;;..O#;;
;;;;;;;;;
-;;;;;;;-)



xxxxxxxxxxxxxx
-eeeeeeeeeeee-
eeeeeeeeeeeeee
eeeeeeeeeeeeee
wewewewwweweew
wewewetweewwew
weweweeweeweww
eweweewwweweew
eeeeeeeeeeeeee
eeeeeeeeeeeeee
-eeeeeeeeeeee-


