REM ********************************************
REM  Burdened Imps' Level Pack for KeeperFX
REM  Script for Level 221, Winterfrost Run
REM  Version 1.00
REM ********************************************

REM Basic stuff

SET_GENERATE_SPEED(400)
MAX_CREATURES(PLAYER0,25)
START_MONEY(PLAYER0,1000)
START_MONEY(PLAYER2,500000)
COMPUTER_PLAYER(PLAYER2,2)

SET_CREATURE_MAX_LEVEL(PLAYER0,THIEF,10)

ADD_CREATURE_TO_POOL(FLY,20)
ADD_CREATURE_TO_POOL(BUG,20)
ADD_CREATURE_TO_POOL(DEMONSPAWN,20)
ADD_CREATURE_TO_POOL(SPIDER,20)
ADD_CREATURE_TO_POOL(SORCEROR,20)
ADD_CREATURE_TO_POOL(TROLL,20)
ADD_CREATURE_TO_POOL(BILE_DEMON,20)
ADD_CREATURE_TO_POOL(ORC,20)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,20)
ADD_CREATURE_TO_POOL(DRAGON,20)
ADD_CREATURE_TO_POOL(HELL_HOUND,20)
ADD_CREATURE_TO_POOL(TENTACLE,20)
ADD_CREATURE_TO_POOL(SKELETON,20)
ADD_CREATURE_TO_POOL(GHOST,20)
ADD_CREATURE_TO_POOL(VAMPIRE,20)

CREATURE_AVAILABLE(PLAYER0,FLY,1,1)
CREATURE_AVAILABLE(PLAYER0,BUG,1,1)
CREATURE_AVAILABLE(PLAYER0,DEMONSPAWN,0,0)
CREATURE_AVAILABLE(PLAYER0,SPIDER,1,1)
CREATURE_AVAILABLE(PLAYER0,SORCEROR,1,1)
CREATURE_AVAILABLE(PLAYER0,TROLL,1,1)
CREATURE_AVAILABLE(PLAYER0,BILE_DEMON,1,1)
CREATURE_AVAILABLE(PLAYER0,ORC,1,1)
CREATURE_AVAILABLE(PLAYER0,DARK_MISTRESS,1,1)
CREATURE_AVAILABLE(PLAYER0,DRAGON,1,1)
CREATURE_AVAILABLE(PLAYER0,HELL_HOUND,1,1)
CREATURE_AVAILABLE(PLAYER0,TENTACLE,1,1)
CREATURE_AVAILABLE(PLAYER0,SKELETON,0,0)
CREATURE_AVAILABLE(PLAYER0,GHOST,0,0)
CREATURE_AVAILABLE(PLAYER0,VAMPIRE,0,0)

ROOM_AVAILABLE(PLAYER0,TREASURE,1,1)
ROOM_AVAILABLE(PLAYER0,LAIR,1,1)
ROOM_AVAILABLE(PLAYER0,GARDEN,1,1)
ROOM_AVAILABLE(PLAYER0,TRAINING,0,0)
ROOM_AVAILABLE(PLAYER0,RESEARCH,0,0)
ROOM_AVAILABLE(PLAYER0,WORKSHOP,0,0)
ROOM_AVAILABLE(PLAYER0,BARRACKS,0,0)
ROOM_AVAILABLE(PLAYER0,BRIDGE,0,0)
ROOM_AVAILABLE(PLAYER0,GUARD_POST,0,0)
ROOM_AVAILABLE(PLAYER0,PRISON,0,0)
ROOM_AVAILABLE(PLAYER0,TORTURE,0,0)
ROOM_AVAILABLE(PLAYER0,TEMPLE,0,0)
ROOM_AVAILABLE(PLAYER0,GRAVEYARD,0,0)
ROOM_AVAILABLE(PLAYER0,SCAVENGER,0,0)

TRAP_AVAILABLE(PLAYER0,ALARM,1,0)
TRAP_AVAILABLE(PLAYER0,POISON_GAS,1,0)
TRAP_AVAILABLE(PLAYER0,LIGHTNING,1,0)
TRAP_AVAILABLE(PLAYER0,LAVA,0,0)
TRAP_AVAILABLE(PLAYER0,BOULDER,0,0)
TRAP_AVAILABLE(PLAYER0,WORD_OF_POWER,1,0)
DOOR_AVAILABLE(PLAYER0,WOOD,0,0)
DOOR_AVAILABLE(PLAYER0,BRACED,0,0)
DOOR_AVAILABLE(PLAYER0,STEEL,1,0)
DOOR_AVAILABLE(PLAYER0,MAGIC,1,0)

MAGIC_AVAILABLE(PLAYER0,POWER_IMP,0,0)
MAGIC_AVAILABLE(PLAYER0,POWER_OBEY,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_SIGHT,0,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CAVE_IN,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HEAL_CREATURE,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_HOLD_AUDIENCE,0,0)
MAGIC_AVAILABLE(PLAYER0,POWER_LIGHTNING,0,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SPEED,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_PROTECT,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CONCEAL,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_DISEASE,0,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CHICKEN,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_DESTROY_WALLS,0,0)
MAGIC_AVAILABLE(PLAYER0,POWER_ARMAGEDDON,0,0)

IF(PLAYER0,TRAINING >= 1)
    ROOM_AVAILABLE(PLAYER0,TRAINING,1,1)
ENDIF
IF(PLAYER0,RESEARCH >= 1)
    ROOM_AVAILABLE(PLAYER0,RESEARCH,1,1)
ENDIF
IF(PLAYER0,BRIDGE >= 1)
    ROOM_AVAILABLE(PLAYER0,BRIDGE,1,1)
ENDIF
IF(PLAYER0,WORKSHOP >= 1)
    ROOM_AVAILABLE(PLAYER0,WORKSHOP,1,1)
ENDIF
IF(PLAYER0,BARRACKS >= 1)
    ROOM_AVAILABLE(PLAYER0,BARRACKS,1,1)
ENDIF
IF(PLAYER0,PRISON >= 1)
    ROOM_AVAILABLE(PLAYER0,PRISON,1,1)
ENDIF
IF(PLAYER0,TORTURE >= 1)
    ROOM_AVAILABLE(PLAYER0,TORTURE,1,1)
ENDIF
IF(PLAYER0,GRAVEYARD >= 1)
    ROOM_AVAILABLE(PLAYER0,GRAVEYARD,1,1)
ENDIF
IF(PLAYER0,SCAVENGER >= 1)
    ROOM_AVAILABLE(PLAYER0,SCAVENGER,1,1)
ENDIF
IF(PLAYER0,TEMPLE >= 1)
    ROOM_AVAILABLE(PLAYER0,TEMPLE,1,1)
ENDIF
IF(PLAYER0,SCAVENGER >= 1)
    ROOM_AVAILABLE(PLAYER0,SCAVENGER,1,1)
ENDIF
IF(PLAYER0,GUARD_POST >= 1)
    ROOM_AVAILABLE(PLAYER0,GUARD_POST,1,1)
ENDIF

REM ----------------------- Hero groups

CREATE_PARTY(BOSS)
    ADD_TO_PARTY(BOSS,KNIGHT,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS,VAMPIRE,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS,VAMPIRE,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS,MONK,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS,MONK,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS,SKELETON,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS,SKELETON,10,0,ATTACK_ENEMIES,0)

CREATE_PARTY(BOSS_ASSIST)
    ADD_TO_PARTY(BOSS_ASSIST,SKELETON,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS_ASSIST,SKELETON,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS_ASSIST,SKELETON,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS_ASSIST,SKELETON,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS_ASSIST,SKELETON,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS_ASSIST,GHOST,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(BOSS_ASSIST,GHOST,10,0,ATTACK_ENEMIES,0)

CREATE_PARTY(HALLWAY_ONE)
    ADD_TO_PARTY(HALLWAY_ONE,THIEF,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_ONE,THIEF,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_ONE,ARCHER,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_ONE,ARCHER,7,400,ATTACK_ENEMIES,0)

CREATE_PARTY(HALLWAY_TWO)
    ADD_TO_PARTY(HALLWAY_TWO,BARBARIAN,8,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_TWO,THIEF,8,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_TWO,THIEF,8,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_TWO,ARCHER,8,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_TWO,ARCHER,8,400,ATTACK_ENEMIES,0)

CREATE_PARTY(HALLWAY_THREE)
    ADD_TO_PARTY(HALLWAY_THREE,WIZARD,9,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_THREE,BARBARIAN,9,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_THREE,BARBARIAN,9,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_THREE,BARBARIAN,9,400,ATTACK_ENEMIES,0)

CREATE_PARTY(HALLWAY_FOUR)
    ADD_TO_PARTY(HALLWAY_FOUR,WIZARD,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_FOUR,FAIRY,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_FOUR,WITCH,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_FOUR,MONK,10,800,ATTACK_ENEMIES,0)

CREATE_PARTY(HALLWAY_FIVE)
    ADD_TO_PARTY(HALLWAY_FIVE,THIEF,10,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_FIVE,MONK,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_FIVE,MONK,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_FIVE,SAMURAI,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_FIVE,ARCHER,10,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_FIVE,ARCHER,10,400,ATTACK_ENEMIES,0)

CREATE_PARTY(HALLWAY_SIX)
    ADD_TO_PARTY(HALLWAY_SIX,THIEF,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_SIX,THIEF,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_SIX,DWARFA,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(HALLWAY_SIX,DWARFA,7,400,ATTACK_ENEMIES,0)

CREATE_PARTY(PRISON_HALL)
    ADD_TO_PARTY(PRISON_HALL,WIZARD,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(PRISON_HALL,WIZARD,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(PRISON_HALL,BARBARIAN,10,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(PRISON_HALL,BARBARIAN,10,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(PRISON_HALL,SAMURAI,10,800,ATTACK_ENEMIES,0)

CREATE_PARTY(PRISON)
    ADD_TO_PARTY(PRISON,WIZARD,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(PRISON,WITCH,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(PRISON,SAMURAI,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(PRISON,SAMURAI,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(PRISON,SAMURAI,10,800,ATTACK_ENEMIES,0)

CREATE_PARTY(DIRT_ONE)
    ADD_TO_PARTY(DIRT_ONE,DWARFA,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DIRT_ONE,DWARFA,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DIRT_ONE,DWARFA,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DIRT_ONE,DWARFA,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DIRT_ONE,DWARFA,7,400,ATTACK_ENEMIES,0)

CREATE_PARTY(DIRT_TWO)
    ADD_TO_PARTY(DIRT_TWO,DWARFA,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DIRT_TWO,DWARFA,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DIRT_TWO,DWARFA,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DIRT_TWO,DWARFA,7,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DIRT_TWO,DWARFA,7,400,ATTACK_ENEMIES,0)

CREATE_PARTY(ATTACK_ONE)
    ADD_TO_PARTY(ATTACK_ONE,THIEF,8,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_ONE,THIEF,8,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_ONE,ARCHER,8,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_ONE,ARCHER,8,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_ONE,ARCHER,8,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_ONE,GIANT,8,800,ATTACK_ENEMIES,0)

CREATE_PARTY(ATTACK_TWO)
    ADD_TO_PARTY(ATTACK_TWO,BARBARIAN,9,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_TWO,BARBARIAN,9,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_TWO,SAMURAI,9,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_TWO,WIZARD,9,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_TWO,ARCHER,9,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_TWO,ARCHER,9,400,ATTACK_ENEMIES,0)

CREATE_PARTY(ATTACK_THREE)
    ADD_TO_PARTY(ATTACK_THREE,WIZARD,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_THREE,WITCH,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_THREE,ARCHER,10,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_THREE,ARCHER,10,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_THREE,BARBARIAN,10,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_THREE,BARBARIAN,10,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_THREE,GIANT,10,400,ATTACK_ENEMIES,0)

CREATE_PARTY(ATTACK_FOUR)
    ADD_TO_PARTY(ATTACK_FOUR,VAMPIRE,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_FOUR,SKELETON,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_FOUR,SKELETON,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_FOUR,SKELETON,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_FOUR,SKELETON,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_FOUR,GHOST,10,0,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ATTACK_FOUR,GHOST,10,0,ATTACK_ENEMIES,0)

REM ----------------------- Win/Lose conditions/Objectives

DISPLAY_OBJECTIVE(20,ALL_PLAYERS)
REM QUICK_OBJECTIVE(0,"An epic battle raged here, resulting in the defeat of a keeper. The heroes are healing their wounds and have not yet destroyed the keeper's dungeon. This is the perfect time to take his place and display the power of a real Keeper. Find your way into the dungeon and find the last remaining portal. But be wary, Keeper! You lack resources and minions. The death of a single creature could mean instant failure!",PLAYER0)

IF(PLAYER0,DUNGEON_DESTROYED == 1)
    LOSE_GAME
ENDIF

REM IF(PLAYER0,IMP==0)
REM IF(PLAYER0,TOTAL_CREATURES==0)
REM IF(PLAYER0,MONEY<750)
REM IF_AVAILABLE(PLAYER0,POWER_IMP==0)
REM DISPLAY_OBJECTIVE(21,ALL_PLAYERS)
REM QUICK_OBJECTIVE(5,"Without servants or gold it will be impossible to go on, Keeper. You have failed miserably.",PLAYER0)
REM LOSE_GAME
REM ENDIF
REM ENDIF
REM ENDIF
REM ENDIF

SET_FLAG(PLAYER0,FLAG1,0)
SET_FLAG(PLAYER0,FLAG2,2)
SET_FLAG(PLAYER0,FLAG3,2)

IF(PLAYER0,DEMONSPAWN == 0)
    IF(PLAYER0,FLAG1 == 0)
        DISPLAY_OBJECTIVE(22,ALL_PLAYERS)
        REM QUICK_OBJECTIVE(2,"This creature was vital to your success, Keeper! You have failed.",PLAYER0)
        LOSE_GAME
    ENDIF
ENDIF

IF(PLAYER0,SKELETON == 1)
    SET_FLAG(PLAYER0,FLAG1,1)
    SET_FLAG(PLAYER0,FLAG2,0)
    DISPLAY_INFORMATION(23,ALL_PLAYERS)
    REM QUICK_INFORMATION(14,"A skeleton. Use his abilities wisely, Keeper. He might prove to be quite useful.")
ENDIF

IF(PLAYER0,SKELETON == 0)
    IF(PLAYER0,FLAG2 == 0)
        DISPLAY_OBJECTIVE(24,ALL_PLAYERS)
        REM QUICK_OBJECTIVE(3,"This creature was vital to your success, Keeper! You have failed.",PLAYER0)
        LOSE_GAME
    ENDIF
ENDIF

IF(PLAYER0,FLY == 1)
    SET_FLAG(PLAYER0,FLAG2,1)
    SET_FLAG(PLAYER0,FLAG3,0)
    DISPLAY_INFORMATION(25,ALL_PLAYERS)
    REM QUICK_INFORMATION(7,"Speed and wings will prove to be useful. Be sure that it does not perish before it carries out its task.")
ENDIF

IF(PLAYER0,FLY == 0)
    IF(PLAYER0,FLAG3 == 0)
        DISPLAY_OBJECTIVE(26,ALL_PLAYERS)
        REM QUICK_OBJECTIVE(4,"This creature was vital to your success, Keeper! You have failed.",PLAYER0)
        LOSE_GAME
    ENDIF
ENDIF

IF(PLAYER0,IMP > 0)
    SET_FLAG(PLAYER0,FLAG3,1)
    MAGIC_AVAILABLE(PLAYER0,POWER_IMP,1,1)
    DISPLAY_OBJECTIVE(27,ALL_PLAYERS)
REM QUICK_OBJECTIVE(1,"Several cowardly imps have managed to hide during the slaughter and pledge their allegiance to you. Furthermore, they have restored your ability to summon them. It is time to dig out the portal and build up your forces. Be sure to be well prepared when you start your attack on the heroes' fortress.",PLAYER0)
ENDIF


IF(PLAYER_GOOD,DUNGEON_DESTROYED == 1)
    IF(PLAYER_GOOD,KNIGHT == 0)
        DISPLAY_OBJECTIVE(28,ALL_PLAYERS)
REM QUICK_OBJECTIVE(6,"The lord of the land lies defeated in his stinking pool of corrupted undead minions and his dungeon heart is shattered like the bones of the skeletons that protected it. Excellent work, Keeper.",PLAYER0)
        WIN_GAME
    ENDIF
ENDIF

IF_ACTION_POINT(12,PLAYER0)
    DISPLAY_INFORMATION(29,ALL_PLAYERS)
REM QUICK_INFORMATION(8,"There doesn't seem to be a library available. There is another Keeper who can provide what you seek. Find him in the south-west and steal his magic. This Keeper is old and weak and lost his portal during a fight. He should not be a threat to you.")
ENDIF

IF_ACTION_POINT(16,PLAYER0)
    DISPLAY_INFORMATION(30,ALL_PLAYERS)
REM QUICK_INFORMATION(9,"This hallway reeks of death and decay. While the smell is very soothing it does not belong here. These so-called heroes might have had outside help to overthrow their enemies. Proceed with caution, Keeper.")
ENDIF

REM Spawns

IF_ACTION_POINT(2,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,BOSS,2,1)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,BOSS_ASSIST,2,3)
ENDIF

IF_ACTION_POINT(3,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,HALLWAY_ONE,3,1)
ENDIF

IF_ACTION_POINT(4,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,HALLWAY_TWO,4,1)
ENDIF

IF_ACTION_POINT(5,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,HALLWAY_THREE,5,1)
ENDIF

IF_ACTION_POINT(6,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,HALLWAY_FOUR,6,1)
ENDIF

IF_ACTION_POINT(7,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,PRISON_HALL,7,1)
ENDIF

IF_ACTION_POINT(8,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,PRISON,8,1)
ENDIF

IF_ACTION_POINT(9,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,DIRT_ONE,9,1)
ENDIF

IF_ACTION_POINT(10,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,DIRT_TWO,10,1)
ENDIF

IF_ACTION_POINT(11,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,HALLWAY_FIVE,11,1)
ENDIF

IF_ACTION_POINT(15,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,HALLWAY_SIX,15,1)
ENDIF

IF_ACTION_POINT(13,PLAYER0)
    SET_TIMER(PLAYER0,TIMER0)
ENDIF

IF(PLAYER0,TIMER0 >= 10000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ATTACK_ONE,-1,1)
    DISPLAY_INFORMATION(31,ALL_PLAYERS)
    REM QUICK_INFORMATION(10,"In case you were taking a nap, a band of fully rested heroes are on their way to meet you, Keeper.")
ENDIF

IF(PLAYER0,TIMER0 >= 20000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ATTACK_TWO,-2,1)
    DISPLAY_INFORMATION(32,ALL_PLAYERS)
    REM QUICK_INFORMATION(11,"More heroes are on their way. Be ready.")
ENDIF

IF(PLAYER0,TIMER0 >= 35000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ATTACK_THREE,-1,1)
    DISPLAY_INFORMATION(33,ALL_PLAYERS)
    REM QUICK_INFORMATION(12,"Another feeble attempt has been launched to remove you from this land. Just that you know.")
ENDIF

IF(PLAYER0,TIMER0 >= 45000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ATTACK_THREE,-1,1)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ATTACK_FOUR,-2,1)
    DISPLAY_INFORMATION(34,ALL_PLAYERS)
    REM QUICK_INFORMATION(13,"Heroes are becoming scarce. A final desperate attack has been launched to reclaim this dungeon. I see undead among them. What treachery is this?")
ENDIF

IF_ACTION_POINT(17,PLAYER0)
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,GHOST,17,2,10,0)
ENDIF

IF_ACTION_POINT(14,PLAYER0)
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,TENTACLE,14,6,10,0)
ENDIF
