REM Level 3 Bens campaign

LEVEL_VERSION(1)

SET_GENERATE_SPEED(500)


REM ***** Set the computer players going   *****

REM		Player		Player Type

COMPUTER_PLAYER(PLAYER1,	0)

REM ***** Set the maximum number of        *****
REM ***** creatures each player can have   *****

REM		Player		Number of creatures

MAX_CREATURES(	PLAYER0,	20)
MAX_CREATURES(	PLAYER1,	25)


REM ***** Set the amount of gold each      *****
REM ***** player starts with               *****

REM		Player		Amount of gold

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




REM **********       SET MAGIC        **********
REM **********     AND CREATURES      **********

REM ***** Setup the creature pool          *****

REM			Creature Name	Number of creatures

ADD_CREATURE_TO_POOL(	SORCEROR,	30)
ADD_CREATURE_TO_POOL(	DRAGON,		20)
ADD_CREATURE_TO_POOL(	TROLL,		10)
ADD_CREATURE_TO_POOL(	ORC,		10)
ADD_CREATURE_TO_POOL(	HELL_HOUND,	10)
ADD_CREATURE_TO_POOL(	BILE_DEMON,	20)
ADD_CREATURE_TO_POOL(	TAURUS,	20)
ADD_CREATURE_TO_POOL(	DARK_PRIEST,	20)
ADD_CREATURE_TO_POOL(	BLONDE,	4)
ADD_CREATURE_TO_POOL(	MAIDEN,	10)

REM ***** Enable each player to recieve    *****
REM ***** creatures from pool              *****

REM			Player		Creatures	Can be available	Is now available


CREATURE_AVAILABLE(	ALL_PLAYERS,	SORCEROR,	1,			0)
CREATURE_AVAILABLE(	ALL_PLAYERS,	DRAGON,		1,			0)
CREATURE_AVAILABLE(	ALL_PLAYERS,	TROLL,		1,			0)
CREATURE_AVAILABLE(	ALL_PLAYERS,	ORC,		1,			0)
CREATURE_AVAILABLE(	ALL_PLAYERS,	HELL_HOUND,	1,			0)
CREATURE_AVAILABLE(	ALL_PLAYERS,	BILE_DEMON,	1,			0)
CREATURE_AVAILABLE(	ALL_PLAYERS,	TAURUS,	1,			0)
CREATURE_AVAILABLE(	ALL_PLAYERS,	DARK_PRIEST,	1,			0)
CREATURE_AVAILABLE(	PLAYER0,	BLONDE,	1,			0)
CREATURE_AVAILABLE(	PLAYER0,	MAIDEN,	1,			0)

REM ***** Set the rooms available to each  *****
REM ***** player                           *****

REM			Player		Room type	Can be available	Is available

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

REM ***** Set the doors available to each  *****
REM ***** player                           *****

REM			Player		Door type		Can be available	Is available

TRAP_AVAILABLE(		ALL_PLAYERS,	CANNON,			1,			0)
DOOR_AVAILABLE(		ALL_PLAYERS,	BRACED,			1,			0)
DOOR_AVAILABLE(		ALL_PLAYERS,	STEEL,			1,			0)
DOOR_AVAILABLE(		ALL_PLAYERS,	MAGIC,			1,			0)


REM ***** Set the traps available to each  *****
REM ***** player                           *****



REM ***** Set the spells available to each *****
REM ***** player                           *****

REM			Player		Spell type		Can be available	Is available

MAGIC_AVAILABLE(	ALL_PLAYERS,	POWER_IMP,		1,			1)
MAGIC_AVAILABLE(	ALL_PLAYERS,	POWER_OBEY,		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(PLAYER0,POWER_SIGHT,1,0)

ALLY_PLAYERS(PLAYER1,PLAYER_GOOD,3)

SET_FLAG(	PLAYER0,	FLAG0,		0)

SET_TIMER(	PLAYER0,	TIMER0)


REM ***** Create any parties               *****

REM		Party Name

CREATE_PARTY(	PARTY1)
CREATE_PARTY(	PARTY2)
CREATE_PARTY(	PARTY3)
CREATE_PARTY(	PARTY4)


REM		Party Name	Creature Name	Experience 	Amount of Gold	Objective		Countdown

ADD_TO_PARTY(	PARTY1,		ARCHER,		9,		200,		ATTACK_DUNGEON_HEART,	0)
ADD_TO_PARTY(	PARTY1,		ARCHER,		10,		200,		ATTACK_DUNGEON_HEART,	0)
ADD_TO_PARTY(	PARTY1,		DWARFA,		8,		400,		ATTACK_DUNGEON_HEART,	0)
ADD_TO_PARTY(	PARTY1,		DWARFA,		10,		400,		ATTACK_DUNGEON_HEART,	0)
ADD_TO_PARTY(	PARTY1,		WITCH,		8,		700,		ATTACK_DUNGEON_HEART,	0)
ADD_TO_PARTY(	PARTY1,		WITCH,		8,		700,		ATTACK_DUNGEON_HEART,	0)

ADD_TO_PARTY(	PARTY2,		ARCHER,		8,		400,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY2,		ARCHER,		8,		400,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY2,		BARBARIAN,	9,		200,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY2,		MONK,		7,		600,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY2,		MONK,		9,		600,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY2,		SAMURAI,	8,		500,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY2,		SAMURAI,	8,		500,		ATTACK_ENEMIES,		0)

ADD_TO_PARTY(	PARTY3,		ARCHER,		10,		600,		ATTACK_DUNGEON_HEART,		0)
ADD_TO_PARTY(	PARTY3,		ARCHER,		10,		600,		ATTACK_DUNGEON_HEART,		0)
ADD_TO_PARTY(	PARTY3,		ARCHER,		10,		600,		ATTACK_DUNGEON_HEART,		0)
ADD_TO_PARTY(	PARTY3,		ARCHER,		10,		600,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY3,		GIANT,		10,		200,		DEFEND_PARTY,		0)
ADD_TO_PARTY(	PARTY3,		GIANT,		10,		200,		DEFEND_PARTY,		0)
ADD_TO_PARTY(	PARTY3,		WIZARD,		10,		600,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY3,		WIZARD,		10,		500,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY3,		WIZARD,		10,		500,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY3,		MONK,		10,		600,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY3,		SAMURAI,	10,		500,		ATTACK_ENEMIES,		0)
ADD_TO_PARTY(	PARTY3,		SAMURAI,	10,		500,		ATTACK_ENEMIES,		0)

SET_GAME_RULE(ImpWorkExperience,254)
ALLY_PLAYERS(PLAYER1,PLAYER_GOOD,3)
SET_CREATURE_INSTANCE(KNIGHT,4,NULL,1)
SET_CREATURE_INSTANCE(TROLL,7,NULL,1)
SET_CREATURE_INSTANCE(TROLL,10,NULL,1)
SET_CREATURE_PROPERTY(AVATAR,NO_IMPRISONMENT,1)
SET_CREATURE_MAX_LEVEL(ALL_PLAYERS,THIEF,10)

IF(PLAYER0,TOTAL_CREATURES >= 30)
	SET_GAME_RULE(TortureConvertChance,25)
	REM "Your Torture Room has suddenly a very bad chance to convert, something is broken and can't be fixed again."
	DISPLAY_OBJECTIVE(7)
ENDIF

IF_ACTION_POINT(4,PLAYER0)
	SET_FLAG(PLAYER0,FLAG0,1)
ENDIF

IF(PLAYER0,TIMER0 >= 25000)
	IF(PLAYER0,FLAG0	==	1)
                ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,PARTY1,-1,DUNGEON,0,2,600)
	ENDIF
ENDIF

IF_ACTION_POINT(1,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,	PARTY2,	1,1)
	CHANGE_SLAB_TYPE(73,21,PATH)
	PLAY_MESSAGE(PLAYER0,SOUND,116)
	REM "You opened the gate to the portal."
	DISPLAY_INFORMATION(8)
ENDIF

IF_ACTION_POINT(2,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,	PARTY2,	2,1)
	CHANGE_SLAB_TYPE(34,59,PATH)
	CHANGE_SLAB_TYPE(35,59,PATH)

ENDIF

IF_ACTION_POINT(5,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,	PARTY2,	2,1)
ENDIF

IF_ACTION_POINT(10,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SPEECH,"dirt.mp3")
		REM "To see the area tyrael is talking about you need to click on the eye symbol."
		DISPLAY_INFORMATION(9,10)
ENDIF

IF_ACTION_POINT(11,PLAYER0)
	REVEAL_MAP_LOCATION(PLAYER0,1,20)
	PLAY_MESSAGE(PLAYER0,SOUND,116)
ENDIF

IF(PLAYER0,TROLL == 1)
	PLAY_MESSAGE(PLAYER0,SPEECH,"troll.mp3")
	REM "We need to find a way to reach the Fountain of Youth; it seems too well protected. Perhaps we can hide in some way to get there.."
	DISPLAY_OBJECTIVE(10,1)
ENDIF

REM "Vanquish the pathetic heroes and then proceed to conquer the rival Keeper to gain dominance over this land."
DISPLAY_OBJECTIVE(11)

REM "In this Realm is a hidden Spell, his powerful might returns every Arrow. do you think we can reach the Entrance?"
DISPLAY_INFORMATION(12)

IF(PLAYER_GOOD,DUNGEON_DESTROYED==1)
	PLAY_MESSAGE(PLAYER0,SPEECH,"silly027.mp3")
	ADD_PARTY_TO_LEVEL(	PLAYER_GOOD,				PARTY3,		-1,				1)
	ADD_PARTY_TO_LEVEL(	PLAYER_GOOD,				PARTY4,		2,				1)
	COMPUTER_PLAYER(PLAYER1,	0)
	ROOM_AVAILABLE(	PLAYER1,BRIDGE,1,1)
	REM "The corpses of the good lie strewn around you. Now go, and conquer your rival on this land. Dominion awaits ..."
	DISPLAY_OBJECTIVE(13)

ENDIF

IF(	PLAYER1,	DUNGEON_DESTROYED	==		1)
	IF(PLAYER_GOOD,DUNGEON_DESTROYED==1)
		REM "You're very bad, Keeper! as bad as you can be."
		DISPLAY_OBJECTIVE(14)
		WIN_GAME
	ENDIF
ENDIF

IF(PLAYER0,KNIGHT == 0)
	PLAY_MESSAGE(PLAYER0,SPEECH,"argh.mp3")
	LOSE_GAME
ENDIF



