REM ********************************************
REM
REM             Script for Level Brorci
REM
REM ********************************************

LEVEL_VERSION(1)

START_MONEY(PLAYER0,45000)

MAX_CREATURES(PLAYER0,45)

SET_GENERATE_SPEED(200)

SET_CREATURE_HEALTH(DARK_MISTRESS,2000)
SET_CREATURE_HEALTH(IMP,500)

DEAD_CREATURES_RETURN_TO_POOL(1)

ADD_CREATURE_TO_POOL(TENTACLE,20)
ADD_CREATURE_TO_POOL(BILE_DEMON,20)
ADD_CREATURE_TO_POOL(DRAGON,20)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,20)
ADD_CREATURE_TO_POOL(SORCEROR,20)
ADD_CREATURE_TO_POOL(BUG,20)
ADD_CREATURE_TO_POOL(ORC,20)

CREATURE_AVAILABLE(ALL_PLAYERS,TENTACLE,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,BILE_DEMON,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,DRAGON,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,ORC,1,1)

MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HOLD_AUDIENCE,1,0)

TRAP_AVAILABLE(ALL_PLAYERS,ALARM,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,POISON_GAS,1,0)
DOOR_AVAILABLE(ALL_PLAYERS,STEEL,1,0)
DOOR_AVAILABLE(ALL_PLAYERS,MAGIC,1,0)

CREATE_PARTY(SMALL)
	ADD_TO_PARTY(SMALL,DWARFA,3,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL,MONK,3,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL,FAIRY,4,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL,GIANT,3,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL,THIEF,4,100,ATTACK_ENEMIES,0)

CREATE_PARTY(SMALL2)
	ADD_TO_PARTY(SMALL2,MONK,3,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL2,SAMURAI,4,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL2,GIANT,4,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL2,FAIRY,4,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL2,WITCH,3,100,ATTACK_ENEMIES,0)

CREATE_PARTY(SMALL3)
	ADD_TO_PARTY(SMALL3,GIANT,3,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL3,WITCH,4,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL3,WIZARD,5,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL3,DWARFA,3,100,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SMALL3,BARBARIAN,4,100,ATTACK_ENEMIES,0)

CREATE_PARTY(MEDIUM)
	ADD_TO_PARTY(MEDIUM,MONK,7,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM,GIANT,8,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM,FAIRY,8,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM,SAMURAI,8,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM,WIZARD,8,500,ATTACK_ENEMIES,0)

CREATE_PARTY(MEDIUM2)
	ADD_TO_PARTY(MEDIUM2,SAMURAI,8,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM2,WITCH,9,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM2,WIZARD,9,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM2,BARBARIAN,9,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM2,ARCHER,9,500,ATTACK_ENEMIES,0)

CREATE_PARTY(MEDIUM3)
	ADD_TO_PARTY(MEDIUM3,WIZARD,10,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM3,SAMURAI,9,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM3,GIANT,9,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM3,BARBARIAN,10,500,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MEDIUM3,MONK,10,500,ATTACK_ENEMIES,0)

CREATE_PARTY(LARGE)
	ADD_TO_PARTY(LARGE,WIZARD,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE,SAMURAI,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE,DWARFA,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE,BARBARIAN,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE,FAIRY,10,1000,ATTACK_ENEMIES,0)

CREATE_PARTY(LARGE2)
	ADD_TO_PARTY(LARGE2,SAMURAI,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE2,WITCH,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE2,WIZARD,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE2,ARCHER,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE2,GIANT,10,1000,ATTACK_ENEMIES,0)

CREATE_PARTY(LARGE3)
	ADD_TO_PARTY(LARGE3,SAMURAI,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE3,BARBARIAN,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE3,MONK,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE3,FAIRY,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE3,GIANT,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(LARGE3,KNIGHT,10,1000,ATTACK_ENEMIES,0)

CREATE_PARTY(FINALE)
	ADD_TO_PARTY(FINALE,KNIGHT,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FINALE,WIZARD,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FINALE,KNIGHT,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FINALE,AVATAR,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FINALE,SAMURAI,10,1000,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(FINALE,GIANT,10,1000,ATTACK_ENEMIES,0)

CREATE_PARTY(MONK)
	ADD_TO_PARTY(MONK,MONK,10,0,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MONK,MONK,9,0,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MONK,MONK,8,0,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MONK,MONK,7,0,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MONK,MONK,6,0,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(MONK,MONK,5,0,ATTACK_ENEMIES,0)

CREATE_PARTY(SAMURAI)
	ADD_TO_PARTY(SAMURAI,9,0,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SAMURAI,8,0,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SAMURAI,7,0,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SAMURAI,6,0,ATTACK_ENEMIES,0)
	ADD_TO_PARTY(SAMURAI,10,0,ATTACK_ENEMIES,0)

SET_FLAG(PLAYER0,FLAG2,2)
SET_TIMER(PLAYER0,TIMER0)

IF_ACTION_POINT(18,PLAYER0)
	IF(PLAYER0,FLAG2<3)
		IF(PLAYER0,TIMER0>=1250)
			NEXT_COMMAND_REUSABLE
			ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,ARCHER,18,1,4,500)
			NEXT_COMMAND_REUSABLE
			SET_TIMER(PLAYER0,TIMER0)
		ENDIF
	ENDIF
ENDIF

QUICK_OBJECTIVE(1,"The Heroes have stripped you of your powers, you'll have to seek everything out. search for the Imp and you shall find him and a few other helpers. There are certain spells you can research and others you'd need to find. The Training room is shut off until you unlock the destroy walls spell. The Bridge is far away but is required to reach the major Dungeon. Careful for you explorations Keeper.",PLAYER0)

IF(PLAYER0,TREASURE>0)
	ROOM_AVAILABLE(PLAYER0,TREASURE,1,0)
ENDIF

IF(PLAYER0,LAIR>0)
	ROOM_AVAILABLE(PLAYER0,LAIR,1,0)
ENDIF

IF(PLAYER0,GARDEN>0)
	ROOM_AVAILABLE(PLAYER0,GARDEN,1,0)
ENDIF

IF(PLAYER0,TRAINING>0)
	ROOM_AVAILABLE(PLAYER0,TRAINING,1,0)
ENDIF

IF(PLAYER0,BRIDGE>0)
	ROOM_AVAILABLE(PLAYER0,BRIDGE,1,0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,MEDIUM3,-3,2)
	SET_FLAG(PLAYER0,FLAG2,4)
	QUICK_OBJECTIVE(2,"Well done Keeper, you've defeated the first and second Dungeons now head North to the final dungeon. This will be no easy task, the Samurai are vast in numbers.",PLAYER0)
ENDIF

IF(PLAYER0,RESEARCH>0)
	ROOM_AVAILABLE(PLAYER0,RESEARCH,1,0)
	ADD_CREATURE_TO_LEVEL(PLAYER0,IMP,PLAYER0,2,7,0)
ENDIF

IF(PLAYER0,BARRACKS>0)
	ROOM_AVAILABLE(PLAYER0,BARRACKS,1,0)
	MAGIC_AVAILABLE(PLAYER0,POWER_PROTECT,1,0)
ENDIF

IF(PLAYER0,TORTURE>0)
	ROOM_AVAILABLE(PLAYER0,TORTURE,1,0)
	MAGIC_AVAILABLE(PLAYER0,POWER_CONCEAL,1,0)
ENDIF

IF(PLAYER0,TEMPLE>0)
	ROOM_AVAILABLE(PLAYER0,TEMPLE,1,0)
	MAGIC_AVAILABLE(PLAYER0,POWER_HEAL_CREATURE,1,0)
ENDIF

IF(PLAYER0,WORKSHOP>0)
	MAGIC_AVAILABLE(PLAYER0,POWER_SPEED,1,0)
	IF(PLAYER_GOOD,WORKSHOP<1)
		ROOM_AVAILABLE(PLAYER0,WORKSHOP,1,0)
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SAMURAI,12,2)
		SET_FLAG(PLAYER0,FLAG3,3)
	ENDIF
ENDIF

IF(PLAYER0,FLAG3>1)
	IF(PLAYER0,GRAVEYARD>0)
		ROOM_AVAILABLE(PLAYER0,GRAVEYARD,1,0)
	ENDIF
ENDIF

IF(PLAYER0,GUARD_POST>0)
	ROOM_AVAILABLE(PLAYER0,GUARD_POST,1,0)
ENDIF

IF_ACTION_POINT(1,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL,1,2)
	ADD_CREATURE_TO_LEVEL(PLAYER0,HORNY,1,1,8,0)
ENDIF

IF_ACTION_POINT(2,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL,2,2)
ENDIF

IF_ACTION_POINT(3,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL2,3,2)
ENDIF

IF_ACTION_POINT(4,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL2,4,2)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,ARCHER,-1,4,8,0)
ENDIF

IF_ACTION_POINT(5,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL3,5,2)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL2,5,2)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL,5,2)
	ADD_CREATURE_TO_LEVEL(PLAYER0,HORNY,5,1,9,0)
ENDIF

IF_ACTION_POINT(6,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL3,6,2)
ENDIF

IF_ACTION_POINT(7,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL3,7,2)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL2,7,1)
	REVEAL_MAP_LOCATION(PLAYER0,10,11,11)
	IF_AVAILABLE(PLAYER0,DESTROY_WALLS==0)
		QUICK_INFORMATION(3,"That's the first Dungeon completed, but you still can't destroy walls!"
	ENDIF
ENDIF

IF_ACTION_POINT(8,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,MEDIUM2,8,2)
ENDIF

IF_ACTION_POINT(9,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,MEDIUM3,9,2)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SMALL,9,1)
ENDIF

IF_ACTION_POINT(10,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,MEDIUM,10,2)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,KNIGHT,-2,1,9,0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,MONK,3,2)
	ADD_PARTY_TO_lEVEL(PLAYER_GOOD,SAMURAI,3,2)
ENDIF

IF_ACTION_POINT(11,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,LARGE,11,2)
ENDIF

IF_ACTION_POINT(12,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,LARGE,12,2)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,MEDIUM2,12,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,LARGE2,-4,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,LARGE2,-5,1)
ENDIF

IF_ACTION_POINT(13,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,LARGE2,13,2)
ENDIF

IF_ACTION_POINT(14,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,LARGE2,14,2)
ENDIF

IF_ACTION_POINT(15,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,LARGE3,15,2)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,MEDIUM3,15,1)
ENDIF

IF_ACTION_POINT(16,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,LARGE3,16,2)
ENDIF

IF_ACTION_POINT(17,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,FINALE,17,1)
ENDIF

IF(PLAYER_GOOD,DUNGEON_DESTROYED==1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,FINALE,17,2)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,MONK,17,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SAMURAI,17,1)
	IF(PLAYER_GOOD,TOTAL_CREATURES==0)
		SET_FLAG(PLAYER0,FLAG1,3)
	ENDIF
ENDIF

IF(PLAYER0,FLAG1>2)
	IF(PLAYER0,ENTRANCE>9)
		IF(PLAYER0,FLAG2>2)
			WIN_GAME
		ENDIF
	ENDIF
ENDIF
