title The packing crate
author Rosden Shadow [Mark Signorelli]
homepage rosden.itch.io

noaction
run_rules_on_level_Start

background_color #231F26

text_color #E5C17E

again_interval 0.1
========
OBJECTS
========

Background
#4D2E37 #231F26 (#E57ED5 #CC5285)
11111
10101
11111
10101
11111
(
00101
01110
11011
01111
10110)
(
11101
00101
11111
10100
10111)


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

Target
white #231F26
.....
.000.
.0.0.
.000.
.....

Wall
#E5C17E #CC7A52  #B32D2D #73342E
21110
12110
21221
23232
32323

overwall
#E5C17E #CC7A52  #B32D2D #73342E
.....
.....
.....
10010
21101


Playerright
#D9FFDC #7EE58D #B32D2D #73342E
.000.
11202
11313
11110
.1.1.

playerleft
#D9FFDC #7EE58D #B32D2D #73342E
.000.
20211
31311
01111
.1.1.

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

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

pack
#E5C17E #CC7A52 #736053 #423D39
21110
21110
21110
22221
33333

overpack
#E5C17E #CC7A52 #736053 #423D39
.....
.....
.....
.....
10000

packspa
TRANSPARENT

packx
#FFFFFF #CCCCCC #999999 #666666
21110
21110
21110
22221
33333

overpackx
#FFFFFF #CCCCCC #999999 #666666
.....
.....
.....
.....
10000

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



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

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

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

thefloor
#231F26
00000
00000
00000
00000
00000

thefloorx
#231F26
00000
00000
00000
00000
00000

eend
#231F26
00000
00000
00000
00000
00000
(
checkempty
black
.....
.....
.....
.....
.....

checkblock
black
.....
.....
.....
.....
.....
)

start
TRANSPARENT

hudu
white
..0..
.000.
.0.0.
.....
.....

hudd
white
.0.0.
.000.
..0..
.....
.....

hudr
white
.00..
..00.
.00..
.....
.....

hudl
white
..00.
.00..
..00.
.....
.....

pr
TRANSPARENT
pu
TRANSPARENT
pd
TRANSPARENT
pl
TRANSPARENT

diehud
TRANSPARENT

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

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

pit1
black #736053 (#E57ED5 #CC5285)
10101
01010
00000
00000
00000

overpitpack
black #E5C17E #CC7A52 #736053
01210
32121
32212
23221
32332

pit2
black #4F5B46 (#E57ED5 #CC5285)
10101
01010
00000
00000
00000

overpitcrate
black #7EE58D #5C8466 #4F5B46
01210
32121
32212
23221
32332



button
#D9FFF8 #AAE0F2 #7EA1E5 #5C6684
.100.
.210.
.221.
.332.
.....

bbut
TRANSPARENT

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

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

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

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

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

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

winend
#E5C17E #DB7F55 #B32D2D
1000.
21100
21110
22110
.2221


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

. = Background
# = Wall
P = Playerright
* = Crate
@ = pack
' =pit1

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

s=start and thefloor

b= button

feel=overwall or overcrate or overpack or overpackx
pushable=crate or cloner or swapcrate  or switcrate or switcrate2 or pack or packx
win=crate or wall


theemx= crate 
player=playerright or playerleft

blocker = wall or crate  or nomove or player or arrow or pack or packx

apit=pit or pitfull or pit1 or pit2

blockerx = apit or blocker

arrowk = arrow or arrow2 or arrowx or arrowx2

hud = hudu or hudd or hudr or hudl



thep= pr or pu or pd or pl
=======
SOUNDS
=======

pushable MOVE 36772507

EndLevel 74089700

player MOVE 68988304
sfx0 52836103
sfx1 45427502

sfx2 29503700
sfx3 81951902

sfx4 64099104
sfx5 53085909

sfx6 43438502

sfx7 29267106
================
COLLISIONLAYERS
================

Background
Target
nomove

bbut
button
packspa
overpitcrate,overpitpack
Player, Wall, pushable,swapwall,thefloor,thefloorx,apit

start

thep

hud
diehud
arrow, arrow2, arrowx, arrowx2
winend
eend
end, endx
feel


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

[feel]->[]

([ >  Player no eend | crate | no blocker ] -> [  >  Player | > crate |  > crate])
[> player | pushable]->[ player | > pushable]

[> pushable|apit]->[> pushable|apit] sfx8

[< player | pack]->[< player | < pack]

[pack no packspa]->[pack packspa]


late[button no player]->[button bbut]

late[ bbut player]->[player] sfx7


([> pack | apit]->[|overpitpack] sfx6)
[> crate | apit]->[|overpitcrate] sfx6

[> crate|Target]->[> crate|target] sfx2

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

(up[start|no hud][down crate|pack]->[start|hudu][|pack])
down[down crate|pack]->[pu|pack] sfx4
up[up crate|pack]->[pd|pack] sfx4
left[left crate|pack]->[pr|pack] sfx4
right[right crate|pack]->[pl|pack] sfx4

down[down pack|crate]->[down pack|pd] sfx4
up[up pack|crate]->[up pack|pu] sfx4
left[left pack|crate]->[left pack|pl] sfx4
right[right pack|crate]->[right pack|pr] sfx4

late left[hud|no hud] [pu] ->[ hud| hudu][]
late left[hud|no hud] [pr] ->[ hud| hudr][]
late left[hud|no hud] [pl] ->[ hud| hudl][]
late left[hud|no hud] [pd] ->[ hud| hudd][]

late up[start|no hud] [pu] ->[ start| hudu][]
late up[start|no hud] [pr] ->[ start| hudr][]
late up[start|no hud] [pl] ->[ start| hudl][]
late up[start|no hud] [pd] ->[ start| hudd][]

late[thep]->[]

late left[hud|no hud]->[hud diehud|no hud]

Late right[pack|no blocker] [hudr diehud] [player button]->[pack|crate] [] [player button] sfx5
Late left[pack|no blocker] [hudl diehud] [player button]->[pack|crate] [] [player button] sfx5
Late up[pack|no blocker] [hudu diehud] [player button]->[pack|crate] [] [player button] sfx5
Late down[pack|no blocker] [hudd diehud] [player button]->[pack|crate] [] [player button] sfx5

Late right[no blocker| pack| blocker] [hudr diehud] [player button]->[pack|crate|blocker] [] [player button] sfx5
Late left[no blocker| pack| blocker] [hudl diehud] [player button]->[pack|crate|blocker] [] [player button] sfx5
Late up[no blocker| pack| blocker] [hudu diehud] [player button]->[pack|crate|blocker] [] [player button] sfx5
Late down[no blocker| pack| blocker] [hudd diehud] [player button]->[pack|crate|blocker] [] [player button] sfx5

late [diehud]->[]

late[packspa no pack no blocker no button]->[pitfull]
late[packspa no pack ]->[]


late[apit overpitpack]->[apit]
late[apit overpitcrate]->[apit]

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

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

late up [pack| ]-> [pack|overpack]

(late up [crate2| ]-> [crate2|overcrate2])

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

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

late up [apit|no apit]->[pit|]
late up [apit|overpitcrate]->[pit1|overpitcrate]
late up [apit|overpitcrate]->[pit2|overpitcrate]

([action player eend|]->[action player eend |crate Target])



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

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

all Target on pack


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

message Get the crate to the target

message level 1 of 7
---------
-#######s
##.....##
#.P...b.#
#.......#
#..'*'..#
#.#.@.#.#
##..'..##
-#..O..#-
-##...##-
--#####--

message level 2 of 7
---------
-#######s
##..'..##
#..'O'..#
#..'''..#
#.......#
#.*.P.@.#
#.......#
#...b...#
##.....##
-#######-

message level 3 of 7
---------
--#####-s
--#'O'#--
###...###
#...#...#
#...P...#
#..*.@..#
#..*....#
#...b...#
##.....##
-#######-

message level 4 of 7
---------
########s
#...O...#
#.''.''.#
#.#'''#.#
#..'''..#
#.*'''*.#
#.P.@...#
#.......#
##..b..##
-#######-

message level 5 of 7
---------
-#######s
##'''''##
#'''O'''#
#.'#'#'.#
#..'.'..#
#.b.#.P.#
#...@...#
#..*.*..#
##.....##
-#######-

message level 6 of 7
---------
-#######s
##'.'.'##
#.'.O.'.#
#..'''..#
#...'...#
#.b...P.#
#....@..#
#..*....#
##.....##
-#######-

message level 7 of 7
---------
-#######s
##'''''##
#'''O'''#
#'''#'''#
#..'''..#
#...*...#
#..*@*..#
#...P...#
##..b..##
-#######-


(---------
########s
#'''O#.#-
#'''##.#-
#..'''.#-
#..'''.##
#......b#
#..***..#
#.p.@...#
##.....##
-#######-)
(---------
-#######s
##'''''##
#'''O'''#
#'''#'''#
#'''''''#
#.......#
#b..@..P#
#..***..#
##.....##
-#######-)
(---------
-#######s
##.....##
#''.O.''#
#..###..#
#.......#
#.P.*.b.#
#..#@#..#
#...*...#
##.....##
-#######-)


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


