title Cliched River Puzzle
author Weeble
homepage www.puzzlescript.net

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

Grass
#559922 GREEN
11111
01111
11101
11111
10111


Player
Yellow
00.00
0...0
.....
0...0
00.00

Water1
#3333ff #5555ff #7777ff
00121
10100
12001
10010
01000

Water2
#3333ff #5555ff #7777ff
10000
00010
00121
01100
10001

Carrot
ORANGE #55cc00
11111
.000.
.000.
.000.
..0..

Fox
ORANGE WHITE BLACK
.2.2.
00000
12021
.111.
..2..

Rabbit
WHITE #ff88bb
00.00
.0.0.
.000.
.101.
.000.

EmptyBoat
BROWN DARKBROWN
.000.
01110
01110
01110
00000
Platform
GREY
.....
.....
.....
.....
.....

LeftB
BLUE
.....
.....
.....
.....
.....

RightB
RED
.....
.....
.....
.....
.....

Dude
BLACK
..0..
00000
..0..
.0.0.
0...0

Dock
YELLOW
.....
.....
.....
.....
.....

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

. = Grass and LeftB
, = Grass and RightB
~ = Water1 and LeftB
^ = Water1 and RightB
P = Player and LeftB
C = Carrot and Platform and LeftB
F = Fox and Platform and LeftB
R = Rabbit and Platform and LeftB
_ = EmptyBoat and LeftB and Water1
* = Platform and RightB
[ = Dude and Dock and LeftB
] = Dock and RightB
Water = Water1 or Water2
Background = Grass or Water1 or Water2
Object = Rabbit or Fox or Carrot
Bank = LeftB or RightB
=======
SOUNDS
=======

SFX0 81232704
SFX1 47027309
SFX2 92562507
SFX3 11245308

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

Background
EmptyBoat, Platform, Dock
LeftB, RightB
Carrot, Rabbit, Fox, Dude
Player

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

(Loading the boat)
[ action Player Object Platform ] [ EmptyBoat no Object ] -> [ Player Platform ] [ EmptyBoat Object ] sfx2

(Emptying the boat)
[ action Player Object EmptyBoat LeftB ] [ Platform no Object LeftB ] -> [ Player EmptyBoat LeftB ] [ Platform Object LeftB ] sfx2
[ action Player Object EmptyBoat RightB ] [ Platform no Object RightB ] -> [ Player EmptyBoat RightB ] [ Platform Object RightB ] sfx2

( Eating rules for stuff on the left bank )
late [ RightB Dude ] [ LeftB Rabbit ] [ LeftB Fox ] -> [ RightB Dude ] [ LeftB ] [ LeftB Fox ] sfx0 message Fox eats rabbit! Chomp!
late [ RightB Dude ] [ LeftB Carrot ] [ LeftB Rabbit ] -> [ RightB Dude ] [ LeftB ] [ LeftB Rabbit ] sfx1 message Rabbit eats carrot! Chomp!

( Same rules for stuff on the right bank )
late [ LeftB Dude ] [ RightB Rabbit ] [ RightB Fox ] -> [ LeftB Dude ] [ RightB ] [ RightB Fox ] sfx0 message Fox eats rabbit! Chomp!
late [ LeftB Dude ] [ RightB Carrot ] [ RightB Rabbit ] -> [ LeftB Dude ] [ RightB ] [ RightB Rabbit ] sfx1 message Rabbit eats carrot! Chomp!

( Animate the water )
[ Water ] -> [ random Water ]

( Row across the river with an object )
[ action Player Dude | EmptyBoat Object | ... | | Dock ] -> [ | | ... | EmptyBoat Object | Player Dude Dock ] sfx3

( Row across the river without an object )
[ action Player Dude | EmptyBoat no Object | ... | | Dock ] -> [ | | ... | EmptyBoat | Player Dude Dock ] sfx3

( Victory condition )
[ RightB Platform Rabbit ] [ RightB Platform Fox ] [ RightB Platform Carrot] -> win

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

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

.....~~~^^,,,,,
.....~~~^^,,,,,
...F.~~~^^,*,,,
..RP[_~~^^],*,,
...C.~~~~^,*,,,
.....~~~^^,,,,,
.....~~~^^,,,,,

