
SET_GENERATE_SPEED(1300)

COMPUTER_PLAYER(PLAYER1,2)

START_MONEY(PLAYER0,10000)
START_MONEY(PLAYER1,200000)

MAX_CREATURES(PLAYER0,30)
MAX_CREATURES(PLAYER1,70)

DISPLAY_OBJECTIVE(100,PLAYER0)

CREATURE_AVAILABLE(PLAYER0,TROLL,1,1)
CREATURE_AVAILABLE(PLAYER0,VAMPIRE,1,1)
CREATURE_AVAILABLE(PLAYER0,BILE_DEMON,1,1)
CREATURE_AVAILABLE(PLAYER0,SORCEROR,1,1)
CREATURE_AVAILABLE(PLAYER0,DARK_MISTRESS,1,1)
CREATURE_AVAILABLE(PLAYER0,DEMONSPAWN,1,1)
CREATURE_AVAILABLE(PLAYER0,DRAGON,1,1)
CREATURE_AVAILABLE(PLAYER1,TROLL,1,1)
CREATURE_AVAILABLE(PLAYER1,VAMPIRE,1,1)
CREATURE_AVAILABLE(PLAYER1,BILE_DEMON,1,1)
CREATURE_AVAILABLE(PLAYER1,SORCEROR,1,1)
CREATURE_AVAILABLE(PLAYER1,DARK_MISTRESS,1,1)
CREATURE_AVAILABLE(PLAYER1,DEMONSPAWN,1,1)
CREATURE_AVAILABLE(PLAYER1,DRAGON,1,1)

ADD_CREATURE_TO_POOL(TROLL,40)
ADD_CREATURE_TO_POOL(VAMPIRE,8)
ADD_CREATURE_TO_POOL(BILE_DEMON,50)
ADD_CREATURE_TO_POOL(SORCEROR,50)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,40)
ADD_CREATURE_TO_POOL(DEMONSPAWN,40)
ADD_CREATURE_TO_POOL(DRAGON,50)

MAGIC_AVAILABLE(PLAYER1,POWER_CHICKEN,1,0)
MAGIC_AVAILABLE(PLAYER1,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(PLAYER1,POWER_PROTECT,1,0)
MAGIC_AVAILABLE(PLAYER1,POWER_DESTROY_WALLS,1,0)
MAGIC_AVAILABLE(PLAYER1,POWER_HAND,1,1)
MAGIC_AVAILABLE(PLAYER1,POWER_SLAP,1,1)
MAGIC_AVAILABLE(PLAYER1,POWER_CAVE_IN,1,0)
MAGIC_AVAILABLE(PLAYER1,POWER_LIGHTNING,1,0)
MAGIC_AVAILABLE(PLAYER1,POWER_CONCEAL,1,0)
MAGIC_AVAILABLE(PLAYER1,POWER_POSSESS,1,1)
MAGIC_AVAILABLE(PLAYER1,POWER_IMP,1,1)
MAGIC_AVAILABLE(PLAYER1,POWER_SIGHT,1,1)
MAGIC_AVAILABLE(PLAYER1,POWER_HEAL_CREATURE,1,0)
MAGIC_AVAILABLE(PLAYER1,POWER_SPEED,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_SPEED,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_PROTECT,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_DESTROY_WALLS,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_HAND,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_SLAP,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_CAVE_IN,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CONCEAL,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_POSSESS,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_IMP,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_HEAL_CREATURE,1,0)

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

TRAP_AVAILABLE(PLAYER0,ALARM,1,0)
TRAP_AVAILABLE(PLAYER0,POISON_GAS,1,0)
TRAP_AVAILABLE(PLAYER0,BOULDER,1,0)
TRAP_AVAILABLE(PLAYER1,ALARM,1,1)
TRAP_AVAILABLE(PLAYER1,POISON_GAS,1,1)
TRAP_AVAILABLE(PLAYER1,LIGHTNING,1,1)
TRAP_AVAILABLE(PLAYER1,BOULDER,1,1)

DOOR_AVAILABLE(PLAYER0,BRACED,1,0)
DOOR_AVAILABLE(PLAYER0,MAGIC,1,0)
DOOR_AVAILABLE(PLAYER0,WOOD,1,0)
DOOR_AVAILABLE(PLAYER1,BRACED,1,1)
DOOR_AVAILABLE(PLAYER1,MAGIC,1,1)
DOOR_AVAILABLE(PLAYER1,WOOD,1,1)

IF(PLAYER1,TOTAL_CREATURES > 22)
    ROOM_AVAILABLE(PLAYER0,BRIDGE,1,1)
    MAGIC_AVAILABLE(PLAYER0,POWER_SIGHT,1,0)
ENDIF

IF(PLAYER0,ALL_DUNGEONS_DESTROYED == 1)
    IF(PLAYER_GOOD,TOTAL_CREATURES < 1)
        WIN_GAME
    ENDIF
ENDIF

IF(PLAYER1,DUNGEON_DESTROYED == 1)
    ROOM_AVAILABLE(PLAYER0,BRIDGE,1,1)
    MAGIC_AVAILABLE(PLAYER0,POWER_SIGHT,1,1)
    DISPLAY_OBJECTIVE(79,PLAYER0)
ENDIF

CREATE_PARTY(TUNNEL)
    ADD_TO_PARTY(TUNNEL,TUNNELLER,3,500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(TUNNEL,KNIGHT,3,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(TUNNEL,MONK,3,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(TUNNEL,BARBARIAN,3,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(TUNNEL,WIZARD,3,500,ATTACK_ENEMIES,0)


IF(PLAYER0,TOTAL_CREATURES > 6)
    DISPLAY_OBJECTIVE(103,PLAYER0)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,TUNNEL,1,DUNGEON,1,2,1)
ENDIF

IF(PLAYER0,TOTAL_CREATURES > 12)
        ADD_TO_PARTY(TUNNEL,WITCH,7,500,ATTACK_ENEMIES,0)
        ADD_TO_PARTY(TUNNEL,MONK,7,500,ATTACK_ENEMIES,0)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,TUNNEL,1,DUNGEON,1,2,1)
ENDIF

IF(PLAYER0,TOTAL_CREATURES > 22)
        ADD_TO_PARTY(TUNNEL,WITCH,7,500,ATTACK_ENEMIES,0)
        ADD_TO_PARTY(TUNNEL,MONK,7,500,ATTACK_ENEMIES,0)
        ADD_TO_PARTY(TUNNEL,FAIRY,9,500,ATTACK_ENEMIES,0)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,TUNNEL,1,DUNGEON,1,2,1)
ENDIF

IF(PLAYER0,TOTAL_CREATURES > 30)
        ADD_TO_PARTY(TUNNEL,WITCH,7,500,ATTACK_ENEMIES,0)
        ADD_TO_PARTY(TUNNEL,WIZARD,7,500,ATTACK_ENEMIES,0)
        ADD_TO_PARTY(TUNNEL,FAIRY,9,500,ATTACK_ENEMIES,0)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,TUNNEL,1,DUNGEON,1,2,1)
ENDIF

CREATE_PARTY(ENDGAME)
    ADD_TO_PARTY(ENDGAME,AVATAR,8,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ENDGAME,KNIGHT,8,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ENDGAME,KNIGHT,8,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ENDGAME,SAMURAI,10,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ENDGAME,SAMURAI,10,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ENDGAME,WIZARD,10,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ENDGAME,ARCHER,10,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ENDGAME,ARCHER,10,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ENDGAME,WIZARD,10,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ENDGAME,FAIRY,10,500,ATTACK_ENEMIES,0)

IF(PLAYER_GOOD,ENTRANCE < 1)
    DISPLAY_OBJECTIVE(130,PLAYER0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ENDGAME,2,1)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,TUNNEL,2,1)
ENDIF
