LEVEL_VERSION(1)
SET_GENERATE_SPEED(400)
START_MONEY(ALL_PLAYERS,12500)
MAX_CREATURES(ALL_PLAYERS,25)

SET_GAME_RULE(AlliesShareCta,1)
SET_GAME_RULE(AlliesShareDrop,1)
SET_GAME_RULE(AlliesShareVision,1)

QUICK_OBJECTIVE(1,"This is the last level, expect to get everything the Landlord has left get thrown at you... the beginning will be more chill,build up and take that time...")


ADD_CREATURE_TO_POOL(TROLL,30)
ADD_CREATURE_TO_POOL(SPIDER,30)
ADD_CREATURE_TO_POOL(HELL_HOUND,30)
ADD_CREATURE_TO_POOL(TENTACLE,30)
ADD_CREATURE_TO_POOL(SORCEROR,30)
ADD_CREATURE_TO_POOL(ORC,30)
ADD_CREATURE_TO_POOL(BILE_DEMON,30)
ADD_CREATURE_TO_POOL(DRAGON,30)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,30)
ADD_CREATURE_TO_POOL(DRUID,30)
ADD_CREATURE_TO_POOL(MAIDEN,30)

CREATURE_AVAILABLE(ALL_PLAYERS,TROLL,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,SPIDER,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,HELL_HOUND,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,TENTACLE,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,SORCEROR,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,ORC,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,BILE_DEMON,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,DRAGON,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,DARK_MISTRESS,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,DRUID,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,MAIDEN,1,0)

ROOM_AVAILABLE(ALL_PLAYERS,TREASURE,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,LAIR,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,GARDEN,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,TRAINING,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,RESEARCH,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,BRIDGE,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,GUARD_POST,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,WORKSHOP,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,TORTURE,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,BARRACKS,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,TEMPLE,1,0)

MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HAND,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SLAP,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_POSSESS,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_IMP,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SPEED,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_OBEY,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_LIGHTNING,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_PROTECT,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_DESTROY_WALLS,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_TIME_BOMB,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_REBOUND,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_FREEZE,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SLOW,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_FLIGHT,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_VISION,1,0)

TRAP_AVAILABLE(ALL_PLAYERS,LIGHTNING,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,WORD_OF_POWER,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,SENTRY,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,BALLISTA,1,0)

DOOR_AVAILABLE(ALL_PLAYERS,MAGIC,1,0)

CREATE_PARTY(Defense1)
    ADD_TO_PARTY(Defense1,AVATAR,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense1,AVATAR,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense1,AVATAR,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense1,AVATAR,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense1,AVATAR,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense1,AVATAR,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense1,AVATAR,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense1,AVATAR,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense1,AVATAR,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense1,AVATAR,10,2500,ATTACK_DUNGEON_HEART,0)
    


CREATE_PARTY(Defense2)
    ADD_TO_PARTY(Defense2,HORNY,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense2,HORNY,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense2,HORNY,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense2,HORNY,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense2,HORNY,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense2,HORNY,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense2,HORNY,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense2,HORNY,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense2,HORNY,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense2,HORNY,10,2500,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(Defense3)
    ADD_TO_PARTY(Defense3,ARCHER,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,ARCHER,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,ARCHER,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,ARCHER,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,ARCHER,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,SAMURAI,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,SAMURAI,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,SAMURAI,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,SAMURAI,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,SAMURAI,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,DWARFA,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense3,DWARFA,10,2500,ATTACK_DUNGEON_HEART,0)


CREATE_PARTY(Defense4)
    ADD_TO_PARTY(Defense4,WITCH,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,WITCH,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,WITCH,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,WITCH,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,WITCH,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,WIZARD,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,WIZARD,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,WIZARD,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,WIZARD,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,WIZARD,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,DWARFA,10,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(Defense4,DWARFA,10,2500,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(Heart)
    ADD_TO_PARTY(Heart,KNIGHT,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,KNIGHT,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,SAMURAI,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,SAMURAI,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,WITCH,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,WITCH,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,DWARFA,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,DWARFA,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,GIANT,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,GIANT,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,BARBARIAN,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,BARBARIAN,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,TIME_MAGE,10,1000,DEFEND_HEART,0)
    ADD_TO_PARTY(Heart,TIME_MAGE,10,1000,DEFEND_HEART,0)



IF_SLAB_TYPE(27,23,PRETTY_PATH)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Heart,1,1)
ENDIF




IF(PLAYER_GOOD,DUNGEON_DESTROYED == 1)
    IF_CONTROLS(PLAYER_GOOD,TOTAL_CREATURES == 0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Defense1,-1,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Defense2,-1,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Defense3,-1,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Defense4,-1,1)
        REVEAL_MAP_LOCATION(ALL_PLAYERS,-1,10)
        CHANGE_SLAB_TYPE(115,55,DIRT,NONE)
        CHANGE_SLAB_TYPE(115,67,DIRT,NONE)
        CHANGE_SLAB_TYPE(109,61,DIRT,NONE)
        CHANGE_SLAB_TYPE(121,61,DIRT,NONE)
        ZOOM_TO_LOCATION(PLAYER0,-1)
        ZOOM_TO_LOCATION(PLAYER1,-1)
        ZOOM_TO_LOCATION(PLAYER2,-1)
        ZOOM_TO_LOCATION(PLAYER3,-1)
        QUICK_INFORMATION(2,"Well, good luck.")
        SET_FLAG(PLAYER_GOOD,FLAG0,1)
    ENDIF
ENDIF

IF(PLAYER_GOOD,FLAG0 == 1)
    IF_CONTROLS(PLAYER_GOOD,TOTAL_CREATURES == 0)
        WIN_GAME
    ENDIF
ENDIF