title Sticky Candy Puzzle Saga
author Alan Hazelden
homepage www.draknek.org

run_rules_on_level_start

noaction

========
OBJECTS
========

Background
Black DarkGrey
00000
00000
00000
00000
00000


Wall
Pink #febfc6
10001
00011
00110
01100
11000

Player
Pink #febfc6
.000.
.111.
00100
.000.
.0.0.

Yellow
Yellow White Orange
.000.
01100
01000
00002
.022.

Red
Red Orange DarkRed
.000.
01100
01000
00002
.022.

Blue
LightBlue White #3468f7
.000.
01100
01000
00002
.022.

YellowTarget
Brown Yellow
00000
01110
01010
01110
00000

RedTarget
DarkBrown Red
00000
01110
01010
01110
00000

BlueTarget
Purple LightBlue
00000
01110
01010
01110
00000

Marker
White
.....
.....
.....
.....
.....

WallL
White
0....
0....
0....
0....
0....

WallR
White
....0
....0
....0
....0
....0

WallU
White
00000
.....
.....
.....
.....

WallD
White
.....
.....
.....
.....
00000

WallLR
White
0...0
0...0
0...0
0...0
0...0

WallUD
White
00000
.....
.....
.....
00000

JoinL
#febfc6
0....
.....
.....
.....
0....

JoinR
#febfc6
....0
.....
.....
.....
....0

JoinU
#febfc6
0...0
.....
.....
.....
.....

JoinD
#febfc6
.....
.....
.....
.....
0...0

JoinBoth
#febfc6
0...0
.....
.....
.....
0...0

Zero
Purple
.000.
.0.0.
.0.0.
.0.0.
.000.

One
Purple
.00..
..0..
..0..
..0..
.000.

Two
Purple
.000.
...0.
.000.
.0...
.000.

Three
Purple
.000.
...0.
.000.
...0.
.000.

Four
Purple
.0.0.
.0.0.
.000.
...0.
...0.

Five
Purple
.000.
.0...
.000.
...0.
.000.

Six
Purple
.000.
.0...
.000.
.0.0.
.000.

Seven
Purple
.000.
...0.
...0.
...0.
...0.

Eight
Purple
.000.
.0.0.
.000.
.0.0.
.000.

Nine
Purple
.000.
.0.0.
.000.
...0.
.000.



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

. = Background
# = Wall
P = Player
A = Red
B = Yellow
C = Blue
X = RedTarget
Y = YellowTarget
Z = BlueTarget

WallCoverLR = WallL or WallR or WallLR
WallCoverUD = WallU or WallD or WallUD

JoinCoverLR = JoinL or JoinR or JoinBoth
JoinCoverUD = JoinU or JoinD

Join = JoinCoverLR or JoinCoverUD

CoverLR = WallCoverLR or JoinCoverLR
CoverUD = WallCoverUD or JoinCoverUD

0 = Zero and Wall
1 = One and Wall
2 = Two and Wall
3 = Three and Wall
4 = Four and Wall
5 = Five and Wall
6 = Six and Wall
7 = Seven and Wall
8 = Eight and Wall
9 = Nine and Wall

Number = Zero or One or Two or Three or Four or Five or Six or Seven or Eight or Nine

Candy = Yellow or Red or Blue
Target = YellowTarget or RedTarget or BlueTarget


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

sfx1 6045907 (candies sticking)
sfx2 27189102 (can't move)
sfx3 27189102 (can't push)
Candy MOVE 48059907
Player MOVE 11429307
EndLevel 85763108
Restart 65287309
Undo 84906107

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

Background
Marker
Target
Player, Wall, Candy
CoverUD
CoverLR, Number

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

[ >  Player | Candy ] -> [  >  Player | > Candy  ]
[ moving Candy | stationary Candy ] -> [ moving Candy | moving Candy ]

(Prevent movement in a way that triggers the "can't move" sound)

[ > Candy | Wall ] [ > Player | > Candy ] -> [ Candy | Wall ] [ > Player | Candy ]
[ > Player | stationary Candy ] [ moving Candy ] -> [ > Player | Candy ] [ Candy ]

(Trigger the "candies sticking" sound)

[ > Candy | no Candy ] -> [ > Candy | Marker ]

[ Marker | stationary Candy ] -> sfx1

[ Marker ] -> []

(Can't move sounds)

[ > Player | Wall ] -> sfx2
[ > Player | stationary Candy ] -> sfx3

(Wall borders)

left [ Wall no WallCoverLR | no Wall ] -> [ Wall WallL | ]
right [ Wall no WallCoverLR | no Wall ] -> [ Wall WallR | ]
right [ Wall WallL | no Wall ] -> [ Wall WallLR | ]

up [ Wall no WallCoverUD | no Wall ] -> [ Wall WallU | ]
down [ Wall no WallCoverUD | no Wall ] -> [ Wall WallD | ]
down [ Wall WallU | no Wall ] -> [ Wall WallUD | ]

(Candy joins)

late [ Join ] -> []

late left [ Candy | Candy ] -> [ Candy JoinL | Candy ]
late right [ Candy no JoinL | Candy ] -> [ Candy JoinR | Candy ]
late right [ Candy JoinL | Candy ] -> [ Candy JoinBoth | Candy ]

late up [ Candy no JoinBoth | Candy ] -> [ Candy JoinU | Candy ]
late down [ Candy no JoinU no JoinBoth | Candy ] -> [ Candy JoinD | Candy ]
late down [ Candy JoinU | Candy ] -> [ Candy JoinBoth | Candy ]

==============
WINCONDITIONS
==============

All Yellow on YellowTarget
All Red on RedTarget
All Blue on BlueTarget

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

message Transport the sticky candies to the collection areas.

#######
##...##
#..b.y#
#pb#.y#
#..b.y#
##...##
1######

#########
##.....##
#..a.#.x#
#pa....x#
#..a.#.x#
##.....##
2########

message Don't let different candies stick together!

########
#p...yy#
#.b.ayy#
#..b.a.#
#.a.b..#
#xxa.b.#
#xx....#
3#######

###########
#....p....#
#..b.c.b..#
#...c.c...#
###.zzz.###
####b.b####
####yyy####
#####y#####
4##########

#########
#.a...###
#.a...###
#..c.axx#
#zz.p.xx#
#zzc.a..#
###...c.#
###...c.#
5########

###########
##.......##
#y.#.p.#.z#
#yc.b.c.bz#
##.......##
###..#..###
6##########

#########
#####..z#
#...b.zz#
#.b.bb.z#
#p.###..#
#y.cc.c.#
#yy.c...#
#y..#####
7########

#########
##......#
#x.c.#by#
#.b.p..y#
#z.a.#by#
##......#
8########

#########
#yy.c.x.#
#y.b..xx#
#.b.....#
#...#..b#
#.a...c.#
#.aa.c.z#
#p....zz#
9########

#########
#yy###zz#
#...x...#
#.##a##.#
#..b.b..#
#..#.#..#
#..c.c..#
##..p..##
10#######

###########
#####y#####
####yyy####
###.b.b.###
###a...c###
#z...p...x#
#za.b.b.cx#
###.....###
11#########

###########
####...A###
##......###
#..#A#..xx#
#pA...A.xx#
#..#A#..xx#
##......###
####...A###
12#########

#########
#..xxx..#
#..#a#..#
#..b.b..#
##.#p#.##
##.aya.##
##..y..##
13#######

###########
##..zzz..##
#..a.p.b..#
#yy#ccc#xx#
#..b...a..#
##...#...##
14#########

#############
#...#####...#
#....c.b....#
#yy#..p..#zz#
#.y.cc.bb.z.#
####.....####
15###########

#########
#...#...#
#.a.a.a.#
#...x...#
#z#.x.#y#
#zc.x.by#
#.c.p.b.#
###...###
16#######

###########
##......###
##.#..c...#
#...c#..zz#
#pc..#c#zz#
#...c#..zz#
##.#..c...#
##......###
17#########

###############
#...###z###...#
#....bzzzb....#
#...c.c.c.c...#
#####.yyy.#####
#####.#b#.#####
#####.....#####
######.p.######
18#############

#############
###x#...#z###
#.xxa.c.azz.#
#..c.....c..#
###..#a#..###
####..p..####
19###########

###########
###.....###
##c.a.a.b##
#.cyy.zzb.#
#..yy.zz..#
#a..c.b..a#
#..xc.bx..#
#..xxxxx..#
##a..a..a##
###...p.###
20#########

message Thanks for playing! :)


