LEVEL_VERSION(1)

SET_GENERATE_SPEED(240)

MAX_CREATURES(PLAYER0,30)
MAX_CREATURES(PLAYER1,30)
MAX_CREATURES(PLAYER2,30)
MAX_CREATURES(PLAYER3,30)

START_MONEY(PLAYER0,20000)
START_MONEY(PLAYER1,20000)
START_MONEY(PLAYER2,20000)
START_MONEY(PLAYER3,20000)

COMPUTER_PLAYER(PLAYER1,0)
COMPUTER_PLAYER(PLAYER2,0)
COMPUTER_PLAYER(PLAYER3,0)

ALLY_PLAYERS(PLAYER1,PLAYER2,1)
ALLY_PLAYERS(PLAYER0,PLAYER_GOOD,1)

ADD_CREATURE_TO_POOL(WIZARD,20)
ADD_CREATURE_TO_POOL(BARBARIAN,20)
ADD_CREATURE_TO_POOL(ARCHER,20)
ADD_CREATURE_TO_POOL(MONK,20)
ADD_CREATURE_TO_POOL(DWARFA,20)
ADD_CREATURE_TO_POOL(KNIGHT,20)
ADD_CREATURE_TO_POOL(AVATAR,20)
ADD_CREATURE_TO_POOL(TUNNELLER,20)
ADD_CREATURE_TO_POOL(WITCH,20)
ADD_CREATURE_TO_POOL(GIANT,20)
ADD_CREATURE_TO_POOL(FAIRY,20)
ADD_CREATURE_TO_POOL(THIEF,20)
ADD_CREATURE_TO_POOL(SAMURAI,20)
ADD_CREATURE_TO_POOL(IMP,20)
ADD_CREATURE_TO_POOL(HORNY,20)
ADD_CREATURE_TO_POOL(SKELETON,20)
ADD_CREATURE_TO_POOL(TROLL,20)
ADD_CREATURE_TO_POOL(DRAGON,20)
ADD_CREATURE_TO_POOL(DEMONSPAWN,20)
ADD_CREATURE_TO_POOL(FLY,20)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,20)
ADD_CREATURE_TO_POOL(SORCEROR,20)
ADD_CREATURE_TO_POOL(BILE_DEMON,20)
ADD_CREATURE_TO_POOL(BUG,20)
ADD_CREATURE_TO_POOL(VAMPIRE,20)
ADD_CREATURE_TO_POOL(SPIDER,20)
ADD_CREATURE_TO_POOL(HELL_HOUND,20)
ADD_CREATURE_TO_POOL(GHOST,20)
ADD_CREATURE_TO_POOL(TENTACLE,20)
ADD_CREATURE_TO_POOL(ORC,20)

CREATURE_AVAILABLE(PLAYER0,WIZARD,1,1)
CREATURE_AVAILABLE(PLAYER0,BARBARIAN,1,1)
CREATURE_AVAILABLE(PLAYER1,BARBARIAN,1,1)
CREATURE_AVAILABLE(PLAYER2,ARCHER,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,TROLL,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,DRAGON,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,FLY,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,DARK_MISTRESS,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,SORCEROR,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,BILE_DEMON,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,BUG,1,1)
CREATURE_AVAILABLE(PLAYER1,VAMPIRE,1,1)
CREATURE_AVAILABLE(PLAYER2,VAMPIRE,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,SPIDER,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,GHOST,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,HELL_HOUND,1,1)
CREATURE_AVAILABLE(ALL_PLAYERS,ORC,1,1)

ROOM_AVAILABLE(ALL_PLAYERS,GUARD_POST,1,1)
ROOM_AVAILABLE(PLAYER0,TREASURE,1,1)
ROOM_AVAILABLE(PLAYER1,TREASURE,1,1)
ROOM_AVAILABLE(PLAYER2,TREASURE,1,1)
ROOM_AVAILABLE(PLAYER3,TREASURE,1,1)
ROOM_AVAILABLE(PLAYER0,RESEARCH,1,1)
ROOM_AVAILABLE(PLAYER1,RESEARCH,1,1)
ROOM_AVAILABLE(PLAYER2,RESEARCH,1,1)
ROOM_AVAILABLE(PLAYER3,RESEARCH,1,1)
ROOM_AVAILABLE(PLAYER0,WORKSHOP,1,0)
ROOM_AVAILABLE(PLAYER1,WORKSHOP,1,0)
ROOM_AVAILABLE(PLAYER2,WORKSHOP,1,0)
ROOM_AVAILABLE(PLAYER3,WORKSHOP,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,GARDEN,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,LAIR,1,1)
ROOM_AVAILABLE(PLAYER0,GRAVEYARD,1,0)
ROOM_AVAILABLE(PLAYER1,GRAVEYARD,1,0)
ROOM_AVAILABLE(PLAYER2,GRAVEYARD,1,0)
ROOM_AVAILABLE(PLAYER3,GRAVEYARD,1,0)
ROOM_AVAILABLE(PLAYER0,PRISON,1,0)
ROOM_AVAILABLE(PLAYER1,PRISON,1,0)
ROOM_AVAILABLE(PLAYER2,PRISON,1,0)
ROOM_AVAILABLE(PLAYER3,PRISON,1,0)
ROOM_AVAILABLE(PLAYER0,TORTURE,1,0)
ROOM_AVAILABLE(PLAYER1,TORTURE,0,0)
ROOM_AVAILABLE(PLAYER2,TORTURE,1,0)
ROOM_AVAILABLE(PLAYER3,TORTURE,1,0)
ROOM_AVAILABLE(PLAYER0,TRAINING,1,0)
ROOM_AVAILABLE(PLAYER1,TRAINING,1,1)
ROOM_AVAILABLE(PLAYER2,TRAINING,1,1)
ROOM_AVAILABLE(PLAYER3,TRAINING,1,1)
ROOM_AVAILABLE(ALL_PLAYERS,SCAVENGER,0,0)
ROOM_AVAILABLE(ALL_PLAYERS,BARRACKS,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,TEMPLE,1,0)
ROOM_AVAILABLE(PLAYER0,BRIDGE,0,0)
ROOM_AVAILABLE(PLAYER2,BRIDGE,0,0)
ROOM_AVAILABLE(PLAYER1,BRIDGE,0,0)
ROOM_AVAILABLE(PLAYER3,BRIDGE,0,0)

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

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

IF(PLAYER0,TOTAL_CREATURES >= 4)
	QUICK_OBJECTIVE(1,"Once defeated Har, few of Har's minions have allied up with you due the several problems in north and east. First one is there is two rival keepers in north, Moritz and Keppensehal. Second one is an unknown keeper with power of Vampires. Third one is, they all know who defeated Har and they are going to defeat you. It is also rumoured the unknown keeper is between war with other two.",PLAYER0)
ENDIF

IF(PLAYER0,CREATURES_SCAVENGED_LOST >= 1)
	QUICK_INFORMATION(2,"Keeper, your vampire is lost. The trace is left and follows to east. It seems to be some kind of scavenging system! Keep an eye of it and protect your minions!",PLAYER3)
ENDIF

IF(PLAYER1,IMP >= 4)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER1,POWER_IMP,0,0)
ENDIF
IF(PLAYER1,IMP <= 3)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER1,POWER_IMP,1,1)
ENDIF

IF(PLAYER2,IMP >= 4)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER2,POWER_IMP,0,0)
ENDIF
IF(PLAYER2,IMP <= 3)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER2,POWER_IMP,1,1)
ENDIF

IF(PLAYER3,IMP >= 4)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER3,POWER_IMP,0,0)
ENDIF
IF(PLAYER3,IMP <= 3)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER3,POWER_IMP,1,1)
ENDIF

IF(PLAYER0,IMP >= 4)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER0,POWER_IMP,0,0)
ENDIF
IF(PLAYER0,IMP <= 3)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER0,POWER_IMP,1,1)
	QUICK_INFORMATION(7,"Keeper, in this land has magical restriction of imps. Limit is four for you.",PLAYER0)
ENDIF

IF_ACTION_POINT(1,PLAYER0)
	QUICK_INFORMATION(3,"This is used to be Har's north sector point defense",1)
ENDIF


IF_ACTION_POINT(2,PLAYER0)
	QUICK_INFORMATION(6,"This is used to be Har's east sector point defense",2)
ENDIF

IF(PLAYER_GOOD,BATTLES_LOST >= 11)
	QUICK_INFORMATION(4,"Keeper, the defenses of Har have failed. Prepare yourself..."PLAYER0)
ENDIF

IF(PLAYER_GOOD,BATTLES_LOST >= 13)
	QUICK_INFORMATION(5,"Keeper, Har's minions are defeated completely, you are now alone here."PLAYER0)
ENDIF

IF(PLAYER1,DUNGEON_DESTROYED == 1)
	IF(PLAYER2,DUNGEON_DESTROYED == 1)
		QUICK_OBJECTIVE(9,"Now when Moritz and Keppensehal are defeated, it is only you and rival keeper. Only one can be victorious.",PLAYER3)
	ENDIF
ENDIF

IF(PLAYER3,DUNGEON_DESTROYED == 1)
QUICK_OBJECTIVE(10,"It was definitely hard to finish it. Use the scavenger and reveal its power to you. Then show to all who rules the land of Plotsmlokker.",PLAYER1)
ENDIF

IF(PLAYER0,CREATURES_SCAVENGED_GAINED >= 1)
QUICK_INFORMATION(11,"It works Keeper! Your minions are increasing! Go, Defeat your enemies when you are ready!",PLAYER1)
ENDIF

IF(PLAYER1,DUNGEON_DESTROYED == 1)
	IF(PLAYER2,DUNGEON_DESTROYED == 1)
		IF(PLAYER3,DUNGEON_DESTROYED == 1)
			QUICK_OBJECTIVE(12,"You have conquered this land! There is no doubt for now who is the ruler of the land of Plotsmlokker. Keep going!",PLAYER0)
			WIN_GAME
		ENDIF
	ENDIF
ENDIF