LEVEL_VERSION(1)

SET_GENERATE_SPEED(500)

COMPUTER_PLAYER(PLAYER0,10)
COMPUTER_PLAYER(PLAYER2,6)

START_MONEY(PLAYER0,75000)
START_MONEY(PLAYER1,3000)
START_MONEY(PLAYER2,3000)

MAX_CREATURES(PLAYER0,35)
MAX_CREATURES(PLAYER1,22)
MAX_CREATURES(PLAYER2,22)

ADD_CREATURE_TO_POOL(HELL_HOUND,20)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,15)
ADD_CREATURE_TO_POOL(SORCEROR,30)
ADD_CREATURE_TO_POOL(TROLL,20)
ADD_CREATURE_TO_POOL(BILE_DEMON,20)
ADD_CREATURE_TO_POOL(DRAGON,20)

REM	Creature availability
CREATURE_AVAILABLE(PLAYER0,HELL_HOUND,1,0)
CREATURE_AVAILABLE(PLAYER0,DARK_MISTRESS,1,0)
CREATURE_AVAILABLE(PLAYER0,SORCEROR,1,0)
CREATURE_AVAILABLE(PLAYER0,TROLL,1,0)
CREATURE_AVAILABLE(PLAYER0,BILE_DEMON,1,0)
CREATURE_AVAILABLE(PLAYER0,DRAGON,1,0)

CREATURE_AVAILABLE(PLAYER1,HELL_HOUND,1,0)
CREATURE_AVAILABLE(PLAYER1,DARK_MISTRESS,1,0)
CREATURE_AVAILABLE(PLAYER1,SORCEROR,1,0)
CREATURE_AVAILABLE(PLAYER1,TROLL,1,0)

CREATURE_AVAILABLE(PLAYER2,HELL_HOUND,1,0)
CREATURE_AVAILABLE(PLAYER2,DARK_MISTRESS,1,0)
CREATURE_AVAILABLE(PLAYER2,SORCEROR,1,0)
CREATURE_AVAILABLE(PLAYER2,TROLL,1,0)

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

REM	Spells availability
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HAND,1,1)
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(PLAYER0,POWER_LIGHTNING,1,0)
MAGIC_AVAILABLE(PLAYER2,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_CHICKEN,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_DESTROY_WALLS,1,0)

REM	Doors and traps availability
DOOR_AVAILABLE(ALL_PLAYERS,BRACED,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,POISON_GAS,1,0)
DOOR_AVAILABLE(ALL_PLAYERS,STEEL,1,0)
DOOR_AVAILABLE(ALL_PLAYERS,MAGIC,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,LIGHTNING,1,0)

REM ****************************************************************************

QUICK_OBJECTIVE(1,"This realm has very rich gold seams. This makes the avarice Green Keeper changed his mind and wanted to take all of the treasures as his, so he decided to break the alliance with you. You don't really care about it, right? Just one more enemy to clear.",PLAYER1)

IF(PLAYER0,PRISON >= 1)
	SET_CREATURE_TENDENCIES(PLAYER0,IMPRISON,1)
ENDIF

IF(PLAYER2,PRISON >= 1)
	SET_CREATURE_TENDENCIES(PLAYER2,IMPRISON,1)
ENDIF

IF(PLAYER1,REWARDED[HORNY] >= 1)
  QUICK_INFORMATION(2, "You can only summon one horned reaper from your temple.", PLAYER1)
  REMOVE_SACRIFICE_RECIPE(TROLL,BILE_DEMON,DARK_MISTRESS)
ENDIF

IF(PLAYER1,SKELETONS_RAISED >= 10)
	SET_GAME_RULE(PrisonSkeletonChance,0)
	QUICK_INFORMATION(11, "You can't get more skeletons from prison.", PLAYER1)
ENDIF

IF(PLAYER1,GHOSTS_RAISED >= 10)
	SET_GAME_RULE(GhostConvertChance,0)
	QUICK_INFORMATION(12, "You can't get more ghosts from torture room.", PLAYER1)
ENDIF

IF(PLAYER1,CREATURES_CONVERTED >= 10)
    SET_GAME_RULE(TortureConvertChance,0)
	SET_GAME_RULE(TortureDeathChance,100)
	QUICK_INFORMATION(13, "You can't convert more creatures from torture room.", PLAYER1)
ENDIF

IF(PLAYER1,VAMPIRES_RAISED >= 3)
    SET_GAME_RULE(BodiesForVampire,255)
	QUICK_INFORMATION(14, "You can't get more vampires from graveyard.", PLAYER1)
ENDIF

IF(PLAYER0,DUNGEON_DESTROYED == 1)
	IF(PLAYER2,DUNGEON_DESTROYED == 1)
		QUICK_OBJECTIVE(3,"The heroes have set up a much stronger fortress in the north. You'd better get well-prepared before going in.",PLAYER1)
		SET_FLAG(PLAYER_GOOD,FLAG0,1)
	ENDIF
ENDIF

IF(PLAYER_GOOD,FLAG0 == 1)
	IF_CONTROLS(PLAYER_GOOD,WIZARD <= 0)
		ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,KNIGHT,-1,1,10,1000000)
		ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,GIANT,-1,14,10,1000)
		SET_TIMER(PLAYER0,TIMER2)
	ENDIF
ENDIF

IF(PLAYER0,TIMER2 >= 200)
	IF_CONTROLS(PLAYER_GOOD,KNIGHT <= 0)
		WIN_GAME
	ENDIF
ENDIF	
