1
0
vt100-games/LadderTP/LADICONS.PAS

245 lines
15 KiB
Plaintext
Raw Normal View History

{ Initialized constants for Ladder }
CONST
{
p - The place where the lad starts.
V - Der Dispenser. Der Rocks roll out of it to squash you flat.
* - Der Eaters. They eat the Der Rocks but oddly do not harm you in the slightest
= - Floor. You walk on it.
H - Ladder. You climb it.
| - Wall. You can't walk through it. You're not a ghost....yet.
. - Rubber Ball. It's very bouncy. This difference is, it bounces you.
$ - Treasure. The lad must get here to finish the level.
& - Gold Statue. Money!Money!Money!Money!Money!
^ - Fire. Turns you into extra crispy bacon.
- - Disposable Floor. Well, you can walk on it once.
}
levels : ARRAY[1..NumLevels] OF LevelType = (
(
Name : 'Easy Street';
InitialBonusTime : 35;
Rocks : 5;
Layout : (
' V $ ',
' H ',
' H H ',
' =========H================================================== ',
' H ',
' H ',
' H H H ',
'================H==========H================== ========H=====================',
' & H H | | ',
' H Easy Street ',
' H H ',
' =========H==========H========= ======================= ',
' H ',
' H ',
' H H ',
'======================== ====================== =========H============== ',
' H ',
' H ',
'* p H *',
'==============================================================================='
)
),
(
Name : 'Long Island';
InitialBonusTime : 45;
Rocks : 8;
Layout : (
' $ ',
' & H ',
' H |V V| H ',
'====H======================= ========================= ====================== ',
' H ',
' H ',
' H & | . . H ',
'========================== ====== =================== ===================H== ',
' H ',
' | H ',
' H | . . H ',
'====H===================== ====== ================ ====================== ',
' H ',
' H | ',
' H | . . H ',
'========================= ======== ============== ==================H== ',
' H ',
'============== | H ',
' Long Island | p * | * H ',
'==============================================================================='
)
),
(
Name : 'Ghost Town';
InitialBonusTime : 35;
Rocks : 5;
Layout : (
' V V V $ ',
' $$$ ',
' p H H $$$$$ H',
'==========H=== =H==============H',
' H H H',
' H & H H',
' ============== ==== = ====== = ==== =====H===== H',
' G ^^^ ^^^^^ ^^^^ ^^^^ ^^^ ^^^ $',
' h | ',
' o | H & | ',
' s ======================H============================== =========== ',
' t & H ',
' H ',
' | H H H ',
' T ==================H=================H===================H======= ',
' o H H ',
' w H ',
' n ^ H ',
'* ^^^ H *',
'==============================================================================='
)
),
(
Name : 'Tunnel Vision';
InitialBonusTime : 36;
Rocks : 5;
Layout : (
' V V ',
' ',
' H H | H ',
'=====H=====--======H========================== ===----====H=========== ',
' H H |&& H ',
' H H ================== H ',
' H H tunnel H H ',
' H =======---===----=================H= H H ',
' H | vision H H H ',
' H =========---& -----============H H H ',
' H H H | H H ',
' H H=========----===----================ H ==============',
' H & H ',
' H | H ',
'====---==== H | H ',
'| | ================---===---=================== H ',
'| === | H H p ',
'| $ | H ===H=======',
'|* $$$ *| * * * *H *H ',
'==============================================================================='
)
),
(
Name : 'Point of No Return';
InitialBonusTime : 35;
Rocks : 7;
Layout : (
' $ ',
' H V ',
' H ',
' HHHHHHHHHHHHH .HHHHHHHHHHHHHH H p ',
' & V H ==H==========',
' H H ',
' H H . H ',
'===H==============-----------============H==== H ',
' H H H ',
' H =====H============== ',
' H H H ',
' H &..^^^.....^..^ . ^^ H==--------- H ',
' H ============================H & H H ',
' H === === === H ---------=================H======',
' H H H ',
' H & H & H ',
' ==========-------------------------=======----------=================== ',
' ',
'^^^* ^^^^^^^^^^^^^^^^^^^^^^^^^* *^^^^^^^^^^*Point of No Return*^^^^',
'==============================================================================='
)
),
(
Name : 'Bug City';
InitialBonusTime : 37;
Rocks : 6;
Layout : (
' Bug City HHHHHHHH V ',
' HHH HHH ',
' H >mmmmmmmm ',
' H=============== ==================== H ',
' H |===== \ / V =====H==========',
' H \/ H ',
' H | $ H ',
' H H | H H ',
' H ====H======= p |&H H H ',
' H H ======================H ====== ',
' H H &| H H ',
' H H &| H H }{ =====H==== ',
'===H===& H =====================H H H ',
' H H H H ',
' H H & H ',
' ======H=== ======= H <> & H ',
' H========== ===== = ============',
' }i{ H ',
'* H *',
'==============================================================================='
)
),
(
Name : 'GangLand';
InitialBonusTime : 32;
Rocks : 6;
Layout : (
' =Gang Land= V ',
' == _ == . ',
' p H | [] |_| | & . H ',
'===========H | |_| | H === ===================H ',
' V H ============= H====== H ',
' H H & H ',
' H H | | H ',
' H H ^^^&&^^^ & ^ ^^^ H H | =============H ',
' H======H =======================H===========H===== & H ',
' H H H | &&& H ',
' H H H | &&&&& H ',
' H H H | =============H ',
' =====------================= H | $ $ ',
' | H | $$$ $$$ ',
'====------=== | H | $$$$$ $$$$$ ',
' | = | ============= ============ ',
' | $ ^ & ',
' |^^^^^^^^^^^^^^ $ ^ ====== ',
'* . & ^ H*^ ^ ^ ^^^^^^^^^^^^',
'==============================================================================='
)
)
);
{
A moving jump is UR/UR/R/R/DR/DR
or UL/UL/L/L/DL/DL
A standing jump is U/U/-/D/D
====================
----234-----23------
---1---5----14------
--0-----6---05------
====================
}
jumpPaths : Array[JUMPRIGHT..JUMPLEFT] OF ActionArrayType = (
(UPRIGHT, UPRIGHT, RIGHT, RIGHT, DOWNRIGHT, DOWNRIGHT),
(UP, UP, STOPPED, DOWN, DOWN, ACTIONEND),
(UPLEFT, UPLEFT, LEFT, LEFT, DOWNLEFT, DOWNLEFT)
);
dirs : ARRAY[STOPPED..JUMPLEFT] OF XYtype = (
(x: 0; y: 0), { STOPPED }
(x: 0; y:-1), { UP }
(x: 1; y:-1), { UPRIGHT }
(x: 1; y: 0), { RIGHT }
(x: 1; y: 1), { DOWNRIGHT }
(x: 0; y: 1), { DOWN }
(x:-1; y: 1), { DOWNLEFT }
(x:-1; y: 0), { LEFT }
(x:-1; y:-1), { UPLEFT }
(x: 0; y: 1), { FALLING }
(x: 0; y: 0), { JUMP }
(x: 0; y: 0), { JUMPRIGHT }
(x: 0; y: 0), { JUMPUP }
(x: 0; y: 0) { JUMPLEFT }
);
ReadmsWait : ARRAY [1..NumPlaySpeeds] OF INTEGER = (100, 50, 25, 13, 7);