REM PLAY Level 3

REM         ALLYED

SET_GENERATE_SPEED(500)

MAX_CREATURES(PLAYER0,45)
MAX_CREATURES(PLAYER1,45)

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

SET_CREATURE_MAX_LEVEL(ALL_PLAYERS,DEMONSPAWN,10)
SET_CREATURE_MAX_LEVEL(ALL_PLAYERS,THIEF,10)

COMPUTER_PLAYER(PLAYER1,0)
ALLY_PLAYERS(PLAYER0,PLAYER1)

SET_CREATURE_STRENGTH(KNIGHT,100)
SET_CREATURE_HEALTH(KNIGHT,3000)
SET_CREATURE_ARMOUR(KNIGHT,200)
SET_CREATURE_FEAR(KNIGHT,0)

ADD_CREATURE_TO_POOL(FLY,20)
ADD_CREATURE_TO_POOL(BUG,30)
ADD_CREATURE_TO_POOL(SPIDER,6)
ADD_CREATURE_TO_POOL(DEMONSPAWN,25)
ADD_CREATURE_TO_POOL(SORCEROR,25)
ADD_CREATURE_TO_POOL(BILE_DEMON,40)
ADD_CREATURE_TO_POOL(DRAGON,35)
ADD_CREATURE_TO_POOL(TROLL,25)
ADD_CREATURE_TO_POOL(ORC,25)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,15)
ADD_CREATURE_TO_POOL(SKELETON,25)
ADD_CREATURE_TO_POOL(GHOST,12)
ADD_CREATURE_TO_POOL(HELL_HOUND,15)
ADD_CREATURE_TO_POOL(VAMPIRE,25)
ADD_CREATURE_TO_POOL(TENTACLE,10)
ADD_CREATURE_TO_POOL(HORNY,1)



REM         ALL PLAYERS
REM         Creature_Availability

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

REM Room_Availability

		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,WORKSHOP,1,0)
		ROOM_AVAILABLE(ALL_PLAYERS,BARRACKS,1,0)
		ROOM_AVAILABLE(ALL_PLAYERS,GUARD_POST,1,0)
		ROOM_AVAILABLE(ALL_PLAYERS,BRIDGE,1,0)
		ROOM_AVAILABLE(ALL_PLAYERS,PRISON,1,0)
		ROOM_AVAILABLE(ALL_PLAYERS,TORTURE,1,0)
		ROOM_AVAILABLE(ALL_PLAYERS,SCAVENGER,1,0)
		ROOM_AVAILABLE(ALL_PLAYERS,TEMPLE,1,0)
		ROOM_AVAILABLE(ALL_PLAYERS,GRAVEYARD,1,0)


	REM Spells

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

	REM  doors & traps

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


IF(PLAYER0,DUNGEON_DESTROYED == 1)
	LOSE_GAME
ENDIF

IF(PLAYER_GOOD,DUNGEON_DESTROYED == 1)
	IF(PLAYER_GOOD, TOTAL_CREATURES == 0)
	        WIN_GAME
        ENDIF
ENDIF


REM                 CREATURE  GOLD
REM                        LEVEL    OBJECTIVE

CREATE_PARTY(ONE)
	ADD_TO_PARTY(ONE,ARCHER,7,1500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(ONE,ARCHER,7,1500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(ONE,ARCHER,7,1500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(ONE,FAIRY,8,1500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(ONE,FAIRY,8,1500,ATTACK_ENEMIES,0)
        ADD_TO_PARTY(ONE,WIZARD,8,1500,ATTACK_ENEMIES,0)

CREATE_PARTY(TWO)
	ADD_TO_PARTY(TWO,FAIRY,8,1600,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(TWO,THIEF,10,500,STEAL_GOLD,0)
	ADD_TO_PARTY(TWO,THIEF,10,500,STEAL_GOLD,0)
	ADD_TO_PARTY(TWO,THIEF,10,500,STEAL_GOLD,0)
	ADD_TO_PARTY(TWO,THIEF,10,500,STEAL_GOLD,0)
        ADD_TO_PARTY(TWO,FAIRY,9,2000,ATTACK_ENEMIES,0)

CREATE_PARTY(THREE)
	ADD_TO_PARTY(THREE,FAIRY,9,1500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(THREE,GIANT,9,1400,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(THREE,ARCHER,9,1600,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(THREE,THIEF,10,600,STEAL_GOLD,0)
	ADD_TO_PARTY(THREE,THIEF,10,600,STEAL_GOLD,0)
	ADD_TO_PARTY(THREE,THIEF,10,600,STEAL_GOLD,0)

CREATE_PARTY(FOUR)
	ADD_TO_PARTY(FOUR,KNIGHT,10,4600,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FOUR,AVATAR,10,4500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FOUR,AVATAR,10,4400,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FOUR,ARCHER,10,3600,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FOUR,FAIRY,10,3400,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FOUR,FAIRY,10,3400,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FOUR,FAIRY,10,3400,ATTACK_ENEMIES,0)

CREATE_PARTY(FIVE)
        ADD_TO_PARTY(FIVE,HORNY,6,200,ATTACK_ENEMIES,0)
        ADD_TO_PARTY(FIVE,DRAGON,8,200,ATTACK_ENEMIES,0)
        ADD_TO_PARTY(FIVE,BILE_DEMON,8,200,ATTACK_ENEMIES,0)

IF_ACTION_POINT(5,PLAYER0)
	ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,1,DUNGEON_HEART,0,3,700)
        ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,TWO,1,DUNGEON_HEART,0,2,800)
	ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,6,DUNGEON_HEART,0,4,700)
        ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,6,DUNGEON_HEART,0,5,700)

ENDIF

IF_ACTION_POINT(4,PLAYER0)
	ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,1,ACTION_POINT,4,6,500)
        ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,THREE,1,DUNGEON_HEART,0,9,1500)
ENDIF

IF_ACTION_POINT(3,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,FOUR,2,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,2,2)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,THREE,2,1)
        ADD_PARTY_TO_LEVEL(PLAYER0,FIVE,5,1)
ENDIF
