title Dang I'm Huge
author Guilherme Tows
homepage zarat.us

run_rules_on_level_start
noaction
youtube 7qGttcfFLBo
color_palette atari

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

Background .
BLACK

Trampled
DARKGRAY

Wall #
Red

Block O
Blue Black
.000.
01110
00010
00010
.000.

Block1 B
Blue Black
.0000
01111
00000
00000
00000

Block2
Blue Black
0000.
11110
00010
00010
00010

Block3
Blue Black
00000
00000
00000
00000
.0000

Block4
Blue Black
00010
00010
00010
00010
0000.

PlayerSmall @
Yellow Black
.000.
01010
00000
01110
.000.

Player1 P
Yellow Black
..000
.0000
00010
00010
00000

Player2 
Yellow Black
000..
0000.
01000
01000
00000

Player3 
Yellow Black
00000
00100
00011
.0000
..000

Player4 
Yellow Black
00000
00100
11000
0000.
000..

Target X
Purple
0...0
.0.0.
..0..
.0.0.
0...0

ZapSmall *
DarkGreen
.000.
00000
00000
00000
.000.

ZapSmallOff
DarkRed
.000.
00000
00000
00000
.000.

Zap1 Z
DarkGreen
..000
.0000
00000
00000
00000

Zap2
DarkGreen
000..
0000.
00000
00000
00000

Zap3
DarkGreen
00000
00000
00000
.0000
..000

Zap4
DarkGreen
00000
00000
00000
0000.
000..

Zap1Off
DarkRed
..000
.0000
00000
00000
00000

Zap2Off
DarkRed
000..
0000.
00000
00000
00000

Zap3Off
DarkRed
00000
00000
00000
.0000
..000

Zap4Off
DarkRed
00000
00000
00000
0000.
000..

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

Anything = PlayerSmall or Player1 or Player2 or Player3 or Player4 or Block or Block1 or Block2 or Block3 or Block4
Player = PlayerSmall or Player1 or Player2 or Player3 or Player4
PlayerBig = Player1 or Player2 or Player3 or Player4
Pushable = Block or Block1 or Block2 or Block3 or Block4
BlockBig = Block1 or Block2 or Block3 or Block4
Solid = Pushable or Wall
0 = Block and Target

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

Block MOVE 36772507
BlockBig MOVE 99321507

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

Background
Trampled
Target, ZapSmall, Zap1, Zap2, Zap3, Zap4, ZapSmallOff, Zap1Off, Zap2Off, Zap3Off, Zap4Off
PlayerSmall, Player1, Player2, Player3, Player4, Wall, Block, Block1, Block2, Block3, Block4

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

right [ Block1 | no Block2 ] -> [ Block1 | Block2 ] 
down  [ Block1 | no Block3 ] -> [ Block1 | Block3 ] 
down  [ Block2 | no Block4 ] -> [ Block2 | Block4 ] 

right [ Zap1 | no Zap2 ] -> [ Zap1 | Zap2 ] 
down  [ Zap1 | no Zap3 ] -> [ Zap1 | Zap3 ] 
down  [ Zap2 | no Zap4 ] -> [ Zap2 | Zap4 ] 

right [ Player1 | no Player2 ] -> [ Player1 | Player2 ] 
down  [ Player1 | no Player3 ] -> [ Player1 | Player3 ] 
down  [ Player2 | no Player4 ] -> [ Player2 | Player4 ] 

rigid [ >  PlayerBig | BlockBig ] -> [  >  PlayerBig | > BlockBig  ]     
+ rigid right [ Moving Block1 | Block2 ] -> [ Moving Block1 | MOVING Block2 ]
+ rigid down  [ Moving Block1 | Block3 ] -> [ Moving Block1 | MOVING Block3 ]
+ rigid left  [ Moving Block2 | Block1 ] -> [ Moving Block2 | MOVING Block1 ]
+ rigid down  [ Moving Block2 | Block4 ] -> [ Moving Block2 | MOVING Block4 ]
+ rigid right [ Moving Block3 | Block4 ] -> [ Moving Block3 | MOVING Block4 ]
+ rigid up    [ Moving Block3 | Block1 ] -> [ Moving Block3 | MOVING Block1 ]
+ rigid left  [ Moving Block4 | Block3 ] -> [ Moving Block4 | MOVING Block3 ]
+ rigid up    [ Moving Block4 | Block2 ] -> [ Moving Block4 | MOVING Block2 ]

[ >  PlayerBig | Stationary BlockBig ] -> [  PlayerBig | Stationary BlockBig  ]     

[ >  PlayerBig | Block | Block | no Solid ] -> [  > PlayerBig | > Block | > Block |  ]
[ >  Player | Block | no Solid  ] -> [  > Player | > Block |  ]

[ > Player | Stationary Solid ] -> [ Player | Solid ]

[ MOVING Player ] [ STATIONARY Player ] -> [ Player ] [ Player ]
[ STATIONARY Player ] [ MOVING Pushable ] -> [ Player ] [ Pushable ]

late [ Player1 Zap1 ] [ Player2 Zap2 ] [ Player3 Zap3 ] [ Player4 Zap4 ] [ ZapSmall ] -> [ Zap1Off ] [ Zap2Off ] [ Zap3Off ] [ Zap4Off ] [ PlayerSmall ZapSmallOff ] 

late [ Zap1 no Anything ] [ Zap2 no Anything ] [ Zap3 no Anything ] [ Zap4 no Anything ] [ PlayerSmall ZapSmall ] -> [ Player1 Zap1Off ] [ Player2 Zap2Off ] [ Player3 Zap3Off ] [ Player4 Zap4Off ] [ ZapSmallOff ]

late [ Block1 Zap1 ] [ Block2 Zap2 ] [ Block3 Zap3 ] [ Block4 Zap4 ] [ ZapSmall no Anything ] -> [ Zap1Off ] [ Zap2Off ] [ Zap3Off ] [ Zap4Off ] [ Block ZapSmallOff ] 

late [ Zap1 no Anything ] [ Zap2 no Anything ] [ Zap3 no Anything ] [ Zap4 no Anything ] [ Block ZapSmall ] -> [ Block1 Zap1Off ] [ Block2 Zap2Off ] [ Block3 Zap3Off ] [ Block4 Zap4Off ] [ ZapSmallOff ]

late [ ZapSmallOff no Anything ] [ Zap1Off no Anything ] [ Zap2Off no Anything ] [ Zap3Off no Anything ] [ Zap4Off no Anything ] -> [ ZapSmall ] [ Zap1 ] [ Zap2 ] [ Zap3 ] [ Zap4 ]

(late [ Player no Trampled ] -> [ Player Trampled ])
==============
WINCONDITIONS
==============

all Target on Pushable

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

message gotta get huge


############
#........p.#
#..........#
###.oob..###
###.oo...###
###......###
###......###
#xx......xx#
#xx......xx#
############

message huge huge huge

########
#....#*#
#....#.#
#....#.#
#....#@#
#...oo.#
###..#.#
###..#.#
###z.#.#
###..#x#
########

message a huge saved is a huge earned

############
#*.......o@#
#..........#
#xx....z...#
#xx........#
############

message pledge allegiance to the huge

##########..
#........#..
#@.o####.#..
###.##*#.###
#z.....b...#
#...o......#
######.#.###
######.#.#..
#x.......#..
##########..

message i am so huge it hurts

############
#.....b....#
#..........#
#..##.##o###
#...#.##.###
#...#.*..@x#
#.z.########
##.o#.......
##.x#.......
#####.......

message live by the huge die by the huge

#########
#...*..x#
#..######
##....o.#
##..#..@#
##......#
#####.o.#
#....o###
#z...o.##
#....o.##
#########

message the good the bad and the huge

###########
####*.x####
#####x#####
#..xx.xx..#
#..xx.xx..#
#...o.o...#
#.ooo.ooo.#
#...o.o...#
#z......p.#
#.........#
###########

message in huge we trust

####.....####.
#..#.....#..#.
#..#######..#.
#.......o0..##
#........#z..#
#..####..#...#
#....#...##..#
#..#.#.......#
#..#.0o......#
#..#.#####..##
#.@....b....#.
#...........#.
##....########
.#.........*x#
.#############

message my bigness is perfection
