REM Level 2 Bens campaign

LEVEL_VERSION(1)

SET_GENERATE_SPEED(400)

MAX_CREATURES(PLAYER0,6)
START_MONEY(PLAYER0,2000)

ADD_CREATURE_TO_POOL(SPIDER,3)
ADD_CREATURE_TO_POOL(BUG,3)
ADD_CREATURE_TO_POOL(FLYING_TERROR,3)
ADD_CREATURE_TO_POOL(TAURUS,4)
ADD_CREATURE_TO_POOL(DARK_PRIEST,4)
ADD_CREATURE_TO_POOL(DARK_ELF,4)

CREATURE_AVAILABLE(PLAYER0,BUG,1,0)
CREATURE_AVAILABLE(PLAYER0,FLYING_TERROR,1,0)
CREATURE_AVAILABLE(PLAYER0,DARK_PRIEST,1,0)
CREATURE_AVAILABLE(PLAYER0,DARK_ELF,1,0)
CREATURE_AVAILABLE(PLAYER0,TAURUS,1,0)

	REM Room_Availability

		ROOM_AVAILABLE(PLAYER0,TREASURE,1,1)
		ROOM_AVAILABLE(PLAYER0,RESEARCH,1,1)
		ROOM_AVAILABLE(PLAYER0,TRAINING,1,0)
		ROOM_AVAILABLE(PLAYER0,WORKSHOP,3,0)
		ROOM_AVAILABLE(PLAYER0,BARRACKS,1,0)
		ROOM_AVAILABLE(PLAYER0,GARDEN,1,1)
		ROOM_AVAILABLE(PLAYER0,LAIR,1,1)
		ROOM_AVAILABLE(PLAYER0,BRIDGE,1,0)

	REM Spells
		
		MAGIC_AVAILABLE(PLAYER0,POWER_HAND,1,1)
		MAGIC_AVAILABLE(PLAYER0,POWER_IMP,1,1)
		MAGIC_AVAILABLE(PLAYER0,POWER_SLAP,1,1)
		MAGIC_AVAILABLE(PLAYER0,POWER_CALL_TO_ARMS,1,0)
		MAGIC_AVAILABLE(PLAYER0,POWER_SPEED,1,0)
		MAGIC_AVAILABLE(PLAYER0,POWER_SIGHT,1,0)

	REM  doors & traps

		DOOR_AVAILABLE(PLAYER0,STEEL,1,0)
		TRAP_AVAILABLE(PLAYER0,TURRET,1,0)
		TRAP_AVAILABLE(PLAYER0,CANNON,1,0)
REM Player_Good

CREATE_PARTY(ZERO)
	ADD_TO_PARTY(ZERO,THIEF,1,500,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ZERO,THIEF,1,500,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ZERO,THIEF,1,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ZERO,THIEF,1,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ZERO,THIEF,1,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ZERO,THIEF,1,300,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(ZERO1)
	ADD_TO_PARTY(ZERO1,THIEF,2,500,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ZERO1,THIEF,2,500,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ZERO1,THIEF,2,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ZERO1,THIEF,2,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ZERO1,THIEF,2,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ZERO1,THIEF,2,300,ATTACK_DUNGEON_HEART,0)


CREATE_PARTY(ONE)
REM First Entrance AP1 grp.
	ADD_TO_PARTY(ONE,THIEF,7,500,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ONE,THIEF,7,500,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ONE,ARCHER,7,500,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ONE,ARCHER,7,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ONE,ARCHER,7,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ONE,ARCHER,7,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(ONE,ARCHER,7,300,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(TWO)
REM	AP2 for SW gold deposit add twice with short time delay
	ADD_TO_PARTY(TWO,GIANT,10,400,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(TWO,GIANT,10,400,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(TWO,ARCHER,10,400,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(TWO,ARCHER,10,400,ATTACK_DUNGEON_HEART,0)


CREATE_PARTY(THREE)
REM	AP4 for all dwarves dead trigger
	ADD_TO_PARTY(THREE,GIANT,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(THREE,BARBARIAN,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(THREE,DWARFA,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(THREE,DWARFA,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(THREE,SAMURAI,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(THREE,SAMURAI,10,600,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(FOUR)
REM	AP6 for hero dungeon break-in pincer
	ADD_TO_PARTY(FOUR,MONK,10,500,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(FOUR,ARCHER,10,500,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(FOUR,ARCHER,10,500,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(FIVE)
REM AP7 for entrance 3
	ADD_TO_PARTY(FIVE,SAMURAI,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(FIVE,DWARFA,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(FIVE,DWARFA,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(FIVE,ARCHER,10,500,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(FIVE,ARCHER,10,500,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(SIX)
REM AP9 for SE gold trigger
	ADD_TO_PARTY(SIX,ARCHER,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SIX,WIZARD,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SIX,WIZARD,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SIX,GIANT,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SIX,GIANT,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SIX,SAMURAI,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SIX,SAMURAI,10,300,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(SEVEN)
REM AP14 for FLANKER GROUP
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(SEVEN,THIEF,10,300,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(EIGHT)
REM final knight party
	ADD_TO_PARTY(EIGHT,WIZARD,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(EIGHT,WIZARD,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(EIGHT,THIEF,10,600,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(EIGHT,THIEF,10,600,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(NINE)
	ADD_TO_PARTY(NINE,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(NINE,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(NINE,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(NINE,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(NINE,THIEF,10,300,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(NINE,THIEF,10,300,ATTACK_DUNGEON_HEART,0)

REM "Kill Marius, the Avatar and his Heart. Every Entrance you claim in this Realm give you 5 more creatures to attract to your dungeon. Tyraels power is limited in this Realm."
DISPLAY_OBJECTIVE(4, ALL_PLAYERS)
PLAY_MESSAGE(PLAYER0,SPEECH,"takecontrol.mp3")

SET_CREATURE_MAX_LEVEL(PLAYER0,KNIGHT,6)
SET_CREATURE_MAX_LEVEL(PLAYER0,THIEF,10)

SET_GAME_RULE(DisplayPortalLimit,1)

SET_GAME_RULE(ImpWorkExperience,254)

IF(PLAYER0, ENTRANCE == 9)
	MAX_CREATURES(PLAYER0,6)
ENDIF

IF(PLAYER0, ENTRANCE == 18)
	MAX_CREATURES(PLAYER0,12)
	CREATURE_AVAILABLE(PLAYER0,SPIDER,1,0)
ENDIF

IF_ACTION_POINT(10,PLAYER0)
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,TWO,14,1)
ENDIF

SET_TIMER(PLAYER0,TIMER0)

IF(PLAYER0,TIMER0 >= 2000)
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ZERO,-2,1)
ENDIF

IF(PLAYER0,TIMER0 >= 4000)
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ZERO1,-2,1)
ENDIF

IF(PLAYER0,TIMER0 >= 6000)
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ZERO1,-2,2)
  		PLAY_MESSAGE(PLAYER0,SPEECH,"lvlspe41.mp3")
ENDIF


IF_ACTION_POINT(3,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SPEECH,"lvlspe22.mp3")
	ADD_TUNNELLER_PARTY_TO_LEVEL(​PLAYER_GOOD,​ONE,1,​DUNGEON,?,?,?50)
ENDIF

IF_ACTION_POINT(12,PLAYER0)
	ADD_TUNNELLER_PARTY_TO_LEVEL(​PLAYER_GOOD,​TWO,2,​DUNGEON,?,?,?50)
	SET_TIMER(PLAYER_GOOD,TIMER0)
		IF(PLAYER_GOOD,TIMER0 >= 1200)
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,TWO,2,1)
		ENDIF
ENDIF

IF_ACTION_POINT(11,PLAYER0)
	ADD_TUNNELLER_PARTY_TO_LEVEL(​PLAYER_GOOD,​THREE,4,​DUNGEON,?,?,?50)
ENDIF

IF_ACTION_POINT(5,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SPEECH,"lvlspe02.mp3")
	ADD_TUNNELLER_PARTY_TO_LEVEL(​PLAYER_GOOD,SIX,6,​DUNGEON,?,?,?00)
	ADD_TUNNELLER_PARTY_TO_LEVEL(​PLAYER_GOOD,​SEVEN,14,​DUNGEON,?,?,?00)
ENDIF

IF_ACTION_POINT(15,PLAYER0)
  		PLAY_MESSAGE(PLAYER0,SPEECH,"lvlspe42.mp3")
		CHANGE_SLAB_TYPE(47,65,PRETTY_PATH)
		CHANGE_SLAB_TYPE(47,63,PRETTY_PATH)
		CHANGE_SLAB_TYPE(51,63,PRETTY_PATH)
		CHANGE_SLAB_TYPE(47,67,PRETTY_PATH)
		CHANGE_SLAB_TYPE(51,67,PRETTY_PATH)

ENDIF

IF_ACTION_POINT(17,PLAYER0)
  		PLAY_MESSAGE(PLAYER0,SPEECH,"silly032.mp3")
ENDIF


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

IF_ACTION_POINT(8,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SPEECH,"lvlspe26.mp3")
	ADD_TUNNELLER_PARTY_TO_LEVEL(​PLAYER_GOOD,​FIVE,7,​DUNGEON,?,?,?00)
ENDIF

IF_ACTION_POINT(13,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SPEECH,"lvlspe25.mp3")
	ADD_TUNNELLER_PARTY_TO_LEVEL(​PLAYER_GOOD,FIVE,9,​DUNGEON,?,?,?00)
	ADD_TUNNELLER_PARTY_TO_LEVEL(​PLAYER_GOOD,​EIGHT,-3,​DUNGEON,?,?,?00)
ENDIF

IF_ACTION_POINT(16,PLAYER0)
REM "You want to steal from the Lords gem, seems he doesn't want that at all."
DISPLAY_INFORMATION(5, ALL_PLAYERS)
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,NINE,14,1)
ENDIF

IF(PLAYER0,SPIDER == 1)
	PLAY_MESSAGE(PLAYER0,SPEECH,"lvlspe43.mp3")
ENDIF

IF(PLAYER0,KNIGHT == 0)
	LOSE_GAME
	PLAY_MESSAGE(PLAYER0,SPEECH,"argh.mp3")
REM "Tyrael is dead."
DISPLAY_OBJECTIVE(6, ALL_PLAYERS)
ENDIF
