REM ********************************************
REM
REM Script for Level Dead Hero
REM
REM ********************************************

SET_GENERATE_SPEED(550)
COMPUTER_PLAYER(PLAYER1,3)
START_MONEY(ALL_PLAYERS,40000)

MAX_CREATURES(PLAYER0,60)
MAX_CREATURES(PLAYER1,65)

ADD_CREATURE_TO_POOL(BILE_DEMON,30)
ADD_CREATURE_TO_POOL(TROLL,20)
ADD_CREATURE_TO_POOL(DRAGON,20)
ADD_CREATURE_TO_POOL(DEMONSPAWN,20)
ADD_CREATURE_TO_POOL(FLY,10)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,20)
ADD_CREATURE_TO_POOL(SORCEROR,20)
ADD_CREATURE_TO_POOL(BUG,20)
ADD_CREATURE_TO_POOL(HELL_HOUND,20)
ADD_CREATURE_TO_POOL(TENTACLE,10)
ADD_CREATURE_TO_POOL(ORC,20)

CREATURE_AVAILABLE(ALL_PLAYERS,BILE_DEMON,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,TROLL,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,DRAGON,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,DEMONSPAWN,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,DARK_MISTRESS,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,SORCEROR,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,BUG,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,HELL_HOUND,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,ORC,1,1)
CREATURE_AVAILABLE(PLAYER0,FLY,1,1)
CREATURE_AVAILABLE(PLAYER0,TENTACLE,1,1)

ROOM_AVAILABLE(ALL_PLAYERS,TREASURE,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,GARDEN,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,TRAINING,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,LAIR,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,RESEARCH,1,1)

ROOM_AVAILABLE(ALL_PLAYERS,PRISON,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,TORTURE,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,WORKSHOP,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,SCAVENGER,0,0)
ROOM_AVAILABLE(ALL_PLAYERS,TEMPLE,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,GRAVEYARD,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,BARRACKS,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,BRIDGE,1,0)
ROOM_AVAILABLE(PLAYER0,GUARD_POST,1,1)

MAGIC_AVAILABLE(ALL_PLAYERS,POWER_IMP,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_OBEY,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SIGHT,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CAVE_IN,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HEAL_CREATURE,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HOLD_AUDIENCE,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_LIGHTNING,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CHICKEN,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_DESTROY_WALLS,1,0)

DOOR_AVAILABLE(ALL_PLAYERS,WOOD,1,0)
DOOR_AVAILABLE(ALL_PLAYERS,BRACED,1,0)
DOOR_AVAILABLE(ALL_PLAYERS,STEEL,1,0)
DOOR_AVAILABLE(PLAYER0,MAGIC,1,1)

TRAP_AVAILABLE(ALL_PLAYERS,ALARM,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,POISON_GAS,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,LIGHTNING,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,WORD_OF_POWER,0,0)
TRAP_AVAILABLE(ALL_PLAYERS,LAVA,1,0)
TRAP_AVAILABLE(PLAYER0,BOULDER,1,0)

ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,GIANT,1,2,3,5000)
ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,THIEF,1,2,2,5000)
ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,KNIGHT,2,1,10,100000)
ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,ARCHER,2,2,3,1000)
ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,MONK,2,2,3,5000)
ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,BARBARIAN,3,4,1,5000)

CREATE_PARTY(HUNTERS)
    ADD_TO_PARTY(HUNTERS,BARBARIAN,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTERS,BARBARIAN,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTERS,BARBARIAN,5,5000,DEFEND_PARTY,0)
    ADD_TO_PARTY(HUNTERS,GIANT,5,5000,DEFEND_PARTY,0)
    ADD_TO_PARTY(HUNTERS,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTERS,WIZARD,6,5000,ATTACK_DUNGEON_HEART,0)

IF(PLAYER1,LAIR >= 9)
    SET_FLAG(PLAYER1,FLAG0,1)
ENDIF

IF(PLAYER1,FLAG0 == 1)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,HUNTERS,-4,DUNGEON_HEART,1,10,10000)
ENDIF

CREATE_PARTY(HUNTER)
    ADD_TO_PARTY(HUNTER,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTER,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTER,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTER,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTER,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTER,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)

IF(PLAYER1,TREASURE >= 9)
    SET_FLAG(PLAYER1,FLAG1,2)
ENDIF

IF(PLAYER1,FLAG1 == 1)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,HUNTER,-2,DUNGEON_HEART,1,10,10000)
ENDIF

CREATE_PARTY(HUNTER1)
    ADD_TO_PARTY(HUNTER1,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTER1,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTER1,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTER1,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTER1,GIANT,5,5000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(HUNTER1,KNIGHT,6,5000,ATTACK_DUNGEON_HEART,0)

IF(PLAYER1,ENTRANCE >= 1)
    SET_FLAG(PLAYER1,FLAG2,3)
ENDIF

IF(PLAYER1,FLAG2 == 1)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,HUNTER1,-3,DUNGEON_HEART,1,10,10000)
ENDIF

ADD_PARTY_TO_LEVEL(PLAYER_GOOD,HUNTERS,-1,2)
ADD_PARTY_TO_LEVEL(PLAYER_GOOD,HUNTER,-2,1)
ADD_PARTY_TO_LEVEL(PLAYER_GOOD,HUNTER1,-3,1)

IF(PLAYER0,ALL_DUNGEONS_DESTROYED == 1)
    WIN_GAME
ENDIF
