Created
June 30, 2016 10:35
-
-
Save anonymous/8fb902707458aca31a4579d25c7213c4 to your computer and use it in GitHub Desktop.
title
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Play this game by pasting the script in http://www.puzzlescript.net/editor.html |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
title Various rocks | |
(verbose_logging) | |
======== | |
OBJECTS | |
======== | |
Background | |
Orange | |
PlayerUp | |
LightBrown White LightGrey Brown | |
..2.. | |
..0.. | |
.111. | |
.111. | |
.1.1. | |
PlayerDown | |
LightBrown White LightGrey Brown | |
..0.. | |
.111. | |
.011. | |
.121. | |
..2.. | |
PlayerLeft | |
LightBrown White LightGrey Brown | |
..... | |
...0. | |
22111 | |
..311 | |
..1.1 | |
PlayerRight | |
LightBrown White LightGrey Brown | |
..... | |
.0... | |
11122 | |
113.. | |
1.1.. | |
PlayerDead | |
LightBrown White LightGrey Brown | |
..... | |
..... | |
..... | |
.131. | |
01122 | |
EnemyUp | |
LightBrown Black LightGrey Brown | |
..2.. | |
..0.. | |
.111. | |
.111. | |
.1.1. | |
EnemyDown | |
LightBrown Black LightGrey Brown | |
..0.. | |
.111. | |
.011. | |
.121. | |
..2.. | |
EnemyLeft | |
LightBrown Black LightGrey Brown | |
..... | |
...0. | |
22111 | |
..311 | |
..1.1 | |
EnemyRight | |
LightBrown Black LightGrey Brown | |
..... | |
.0... | |
11122 | |
113.. | |
1.1.. | |
EnemyDead | |
LightBrown Black LightGrey Brown | |
..... | |
..... | |
..... | |
.131. | |
01122 | |
Wall | |
DarkBrown | |
CornerUpLeft | |
DarkBrown | |
0000. | |
000.. | |
00... | |
0.... | |
..... | |
CornerUpRight | |
DarkBrown | |
.0000 | |
..000 | |
...00 | |
....0 | |
..... | |
CornerDownLeft | |
DarkBrown | |
..... | |
0.... | |
00... | |
000.. | |
0000. | |
CornerDownRight | |
DarkBrown | |
..... | |
....0 | |
...00 | |
..000 | |
.0000 | |
TrailVertical | |
DarkRed | |
..0.. | |
..0.. | |
..0.. | |
..0.. | |
..0.. | |
TrailHorizontal | |
DarkRed | |
..... | |
..... | |
00000 | |
..... | |
..... | |
BloodSplatUp | |
Red | |
...0. | |
.0..0 | |
..0.. | |
.0... | |
..0.. | |
BloodSplatDown | |
Red | |
..0.. | |
...0. | |
..0.. | |
0...0 | |
.0... | |
BloodSplatLeft | |
Red | |
.0... | |
0.... | |
..0.0 | |
...0. | |
.0... | |
BloodSplatRight | |
Red | |
...0. | |
.0... | |
0.0.. | |
....0 | |
...0. | |
======= | |
LEGEND | |
======= | |
CharacterUp = PlayerUp or EnemyUp | |
CharacterDown = PlayerDown or EnemyDown | |
CharacterLeft = PlayerLeft or EnemyLeft | |
CharacterRight = PlayerRight or EnemyRight | |
CharacterDead = PlayerDead or EnemyDead | |
Player = PlayerUp or PlayerDown or PlayerLeft or PlayerRight | |
Enemy = EnemyUp or EnemyDown or EnemyLeft or EnemyRight | |
Character = CharacterUp or CharacterDown or CharacterLeft or CharacterRight | |
Trail = TrailVertical or TrailHorizontal | |
BloodSplat = BloodSplatUp or BloodSplatDown or BloodSplatLeft or BloodSplatRight | |
Corner = CornerUpLeft or CornerUpRight or CornerDownLeft or CornerDownRight | |
CornerUp = CornerUpLeft or CornerUpRight | |
CornerDown = CornerDownLeft or CornerDownRight | |
CornerLeft = CornerUpLeft or CornerDownLeft | |
CornerRight = CornerUpRight or CornerDownRight | |
CornerNotUpLeft = CornerUpRight or CornerDownLeft or CornerDownRight | |
CornerNotUpRight = CornerUpLeft or CornerDownLeft or CornerDownRight | |
CornerNotDownLeft = CornerUpLeft or CornerUpRight or CornerDownRight | |
CornerNotDownRight = CornerUpLeft or CornerUpRight or CornerDownLeft | |
Moveable = Corner | |
CornerObstacle = Wall or Enemy or EnemyDead | |
. = Background | |
@ = PlayerRight | |
▒ = Wall | |
◸ = CornerUpLeft | |
◹ = CornerUpRight | |
◺ = CornerDownLeft | |
◿ = CornerDownRight | |
↑ = EnemyUp | |
↓ = EnemyDown | |
← = EnemyLeft | |
→ = EnemyRight | |
======= | |
SOUNDS | |
======= | |
SFX0 56708708 (50086104) | |
SFX1 27898908 (54953108) | |
================ | |
COLLISIONLAYERS | |
================ | |
Background | |
BloodSplat | |
TrailVertical | |
TrailHorizontal | |
Player PlayerDead Enemy EnemyDead Wall | |
CornerUpLeft, CornerUpRight | |
CornerDownLeft, CornerDownRight | |
====== | |
RULES | |
====== | |
[ Trail ] -> [] | |
(( Test for enemy line-of-sight ) | |
[ stationary Player Background ] -> [ stationary Player action Background ] | |
[ action Background | stationary Background no Wall no Corner no Enemy ] -> [ action Background | > Background ] | |
[ > Background | stationary Background no Wall no Corner no Enemy ] -> [ > Background | > Background ] | |
up [ EnemyUp | < Background ] -> [ action EnemyUp | < Background ] | |
down [ EnemyDown | < Background ] -> [ action EnemyDown | < Background ] | |
left [ EnemyLeft | < Background ] -> [ action EnemyLeft | < Background ] | |
right [ EnemyRight | < Background ] -> [ action EnemyRight | < Background ] | |
up [ EnemyUp | action Background ] -> [ action EnemyUp | action Background ] | |
down [ EnemyDown | action Background ] -> [ action EnemyDown | action Background ] | |
left [ EnemyLeft | action Background ] -> [ action EnemyLeft | action Background ] | |
right [ EnemyRight | action Background ] -> [ action EnemyRight | action Background ] | |
[ moving Background ] -> [ Background ]) | |
( Mark all enemies ) | |
[ stationary Player ] [ Background Enemy ] -> [ stationary Player ] [ action Background Enemy ] | |
startloop | |
random [ action Background Enemy ] -> [ action Background action Enemy ] | |
( Shoot ) | |
up [ action CharacterUp | no CornerDown no Wall ] -> [ CharacterUp | up TrailVertical ] | |
down [ action CharacterDown | no CornerUp no Wall ] -> [ CharacterDown | down TrailVertical ] | |
left [ action CharacterLeft | no CornerRight no Wall ] -> [ CharacterLeft | left TrailHorizontal ] | |
right [ action CharacterRight | no CornerLeft no Wall ] -> [ CharacterRight | right TrailHorizontal ] | |
( Create blood splat ) | |
up [ up TrailVertical Character | ] -> [ up TrailVertical Character | BloodSplatUp ] | |
+ down [ down TrailVertical Character | ] -> [ down TrailVertical Character | BloodSplatDown ] | |
+ left [ left TrailHorizontal Character | ] -> [ left TrailHorizontal Character | BloodSplatLeft ] | |
+ right [ right TrailHorizontal Character | ] -> [ right TrailHorizontal Character | BloodSplatRight ] | |
( Player dies when hit ) | |
+ [ moving Trail Player ] -> [ stationary Trail action PlayerDead ] SFX1 | |
( Enemy dies when hit ) | |
+ [ moving Trail Enemy ] -> [ stationary Trail action EnemyDead ] SFX1 | |
( Bullets bounce off corners ) | |
+ [ up TrailVertical CornerUpLeft ] -> [ CornerUpLeft TrailVertical right TrailHorizontal ] | |
+ [ up TrailVertical CornerUpRight ] -> [ CornerUpRight TrailVertical left TrailHorizontal ] | |
+ [ down TrailVertical CornerDownLeft ] -> [ CornerDownLeft TrailVertical right TrailHorizontal ] | |
+ [ down TrailVertical CornerDownRight ] -> [ CornerDownRight TrailVertical left TrailHorizontal ] | |
+ [ left TrailHorizontal CornerUpLeft ] -> [ CornerUpLeft TrailHorizontal down TrailVertical ] | |
+ [ left TrailHorizontal CornerDownLeft ] -> [ CornerDownLeft TrailHorizontal up TrailVertical ] | |
+ [ right TrailHorizontal CornerUpRight ] -> [ CornerUpRight TrailHorizontal down TrailVertical ] | |
+ [ right TrailHorizontal CornerDownRight ] -> [ CornerDownRight TrailHorizontal up TrailVertical ] | |
( Bullets move straight ) | |
+ up [ up TrailVertical | no CornerDown no Wall ] -> [ TrailVertical | up TrailVertical ] | |
+ down [ down TrailVertical | no CornerUp no Wall ] -> [ TrailVertical | down TrailVertical ] | |
+ left [ left TrailHorizontal | no CornerRight no Wall ] -> [ TrailHorizontal | left TrailHorizontal ] | |
+ right [ right TrailHorizontal | no CornerLeft no Wall ] -> [ TrailHorizontal | right TrailHorizontal ] | |
( Don't actually move trails ) | |
[ orthogonal Trail ] -> [ stationary Trail ] | |
( Keep trail when an character has died ) | |
[ action CharacterDead ] [ stationary Trail ] -> [ action CharacterDead ] [ action Trail ] | |
[ action CharacterDead ] -> [ CharacterDead ] | |
( Remove if enemy didn't shoot a character ) | |
[ action Background Enemy ] [ stationary Trail ] -> [ action Background Enemy ] [] | |
( Stop enemy refiring ) | |
[ action Background Enemy ] -> [ stationary Background stationary Enemy ] | |
endloop | |
( Clear trail next update ) | |
[ Trail ] -> again SFX0 | |
( Player pushes corners ) | |
[ > Player | Corner ] -> [ > Player | > Corner ] | |
( Stop things moving into the edge ) | |
[ Background > Moveable ] -> [ > Background > Moveable ] | |
[ > Background | ] -> [ Background | ] | |
[ > Background > Moveable ] -> [ Background Moveable ] | |
startloop | |
( Corners push not-opposite corners ) | |
[ > CornerUpLeft | CornerNotDownRight ] -> [ > CornerUpLeft | > CornerNotDownRight ] | |
[ > CornerUpRight | CornerNotDownLeft ] -> [ > CornerUpRight | > CornerNotDownLeft ] | |
[ > CornerDownLeft | CornerNotUpRight ] -> [ > CornerDownLeft | > CornerNotUpRight ] | |
[ > CornerDownRight | CornerNotUpLeft ] -> [ > CornerDownRight | > CornerNotUpLeft ] | |
( Corners push opposite corners from wrong directions ) | |
up [ > CornerUpLeft | CornerDownRight ] -> [ > CornerUpLeft | > CornerDownRight ] | |
left [ > CornerUpLeft | CornerDownRight ] -> [ > CornerUpLeft | > CornerDownRight ] | |
up [ > CornerUpRight | CornerDownLeft ] -> [ > CornerUpRight | > CornerDownLeft ] | |
right [ > CornerUpRight | CornerDownLeft ] -> [ > CornerUpRight | > CornerDownLeft ] | |
down [ > CornerDownLeft | CornerUpRight ] -> [ > CornerDownLeft | > CornerUpRight ] | |
left [ > CornerDownLeft | CornerUpRight ] -> [ > CornerDownLeft | > CornerUpRight ] | |
down [ > CornerDownRight | CornerUpLeft ] -> [ > CornerDownRight | > CornerUpLeft ] | |
right [ > CornerDownRight | CornerUpLeft ] -> [ > CornerDownRight | > CornerUpLeft ] | |
endloop | |
( Corners can't move through corner obstacles ) | |
[ > Corner | stationary CornerObstacle ] -> [ action Corner | CornerObstacle ] | |
( Cancel movement ) | |
[ action Moveable ] [ Moveable ] -> [ action Moveable ] [ action Moveable ] | |
[ action Moveable ] -> [ Moveable ] | |
( Rotate player to face movement ) | |
[ up Player ] -> [ up PlayerUp ] again | |
[ down Player ] -> [ down PlayerDown ] again | |
[ left Player ] -> [ left PlayerLeft ] again | |
[ right Player ] -> [ right PlayerRight ] again | |
( Stop player ) | |
[ > Player | stationary Moveable ] -> [ Player | Moveable ] | |
============== | |
WINCONDITIONS | |
============== | |
(No Trail | |
No Enemy | |
Some EnemyDead) | |
======= | |
LEVELS | |
======= | |
◸...◹ | |
..... | |
..@▒. | |
..... | |
◺...◿ | |
....... | |
..▒▒▒.. | |
..◹▒◸.. | |
..←▒@.. | |
..◿▒◺.. | |
..▒▒▒.. | |
....... |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment