LEVEL_VERSION(1)
SET_GENERATE_SPEED(400)
START_MONEY(PLAYER0,0)
START_MONEY(PLAYER1,100000)
START_MONEY(PLAYER2,100000)
START_MONEY(PLAYER3,100000)
START_MONEY(PLAYER4,100000)
START_MONEY(PLAYER_NEUTRAL,10000)
START_MONEY(PLAYER5,10000000)
MAX_CREATURES(ALL_PLAYERS,30)

COMPUTER_PLAYER(PLAYER1,0)
COMPUTER_PLAYER(PLAYER2,0)
COMPUTER_PLAYER(PLAYER3,0)
COMPUTER_PLAYER(PLAYER4,0)
COMPUTER_PLAYER(PLAYER5,ROAMING)
COMPUTER_PLAYER(PLAYER6,ROAMING)

ALLY_PLAYERS(PLAYER0,PLAYER6,3)
ALLY_PLAYERS(PLAYER1,PLAYER2,3)
ALLY_PLAYERS(PLAYER1,PLAYER3,3)
ALLY_PLAYERS(PLAYER1,PLAYER4,3)
ALLY_PLAYERS(PLAYER2,PLAYER3,3)
ALLY_PLAYERS(PLAYER2,PLAYER4,3)
ALLY_PLAYERS(PLAYER3,PLAYER4,3)

ALLY_PLAYERS(PLAYER1,PLAYER_GOOD,3)
ALLY_PLAYERS(PLAYER2,PLAYER_GOOD,3)
ALLY_PLAYERS(PLAYER3,PLAYER_GOOD,3)
ALLY_PLAYERS(PLAYER4,PLAYER_GOOD,3)

ALLY_PLAYERS(PLAYER1,PLAYER5,3)
ALLY_PLAYERS(PLAYER2,PLAYER5,3)
ALLY_PLAYERS(PLAYER3,PLAYER5,3)
ALLY_PLAYERS(PLAYER4,PLAYER5,3)

SET_PLAYER_COLOR(PLAYER1,BLACK)
SET_PLAYER_COLOR(PLAYER2,BLACK)
SET_PLAYER_COLOR(PLAYER3,BLACK)
SET_PLAYER_COLOR(PLAYER4,BLACK)
SET_PLAYER_COLOR(PLAYER_GOOD,BLACK)

MAGIC_AVAILABLE(PLAYER0,POWER_IMP,1,0)
MAGIC_AVAILABLE(PLAYER1,POWER_IMP,1,1)
MAGIC_AVAILABLE(PLAYER2,POWER_IMP,1,1)
MAGIC_AVAILABLE(PLAYER3,POWER_IMP,1,1)
MAGIC_AVAILABLE(PLAYER4,POWER_IMP,1,1)

MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HAND,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SLAP,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_POSSESS,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SIGHT,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_SPEED,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_OBEY,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CONCEAL,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HOLD_AUDIENCE,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CAVE_IN,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_HEAL_CREATURE,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_LIGHTNING,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_PROTECT,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CHICKEN,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_DISEASE,1,0)

QUICK_OBJECTIVE(1,"My liege, this bedrock embedded castle's sheer extent of protection exeed almost any other fortification we know about, but the mass grave uncovered by a troop of clueless tunnellers has created a problem of an entirely different scale. We expect to get overrun by more than 300 undead soldiers anytime soon and no end is in sight. A number of allied midas doors will hold them back to some extend but we are running out of time!",ALL_PLAYERS)

SET_COMPUTER_PROCESS(PLAYER1, "ATTACK PLAN 1", 1, 100, 15, 10, 0)
SET_COMPUTER_PROCESS(PLAYER2, "ATTACK PLAN 1", 1, 100, 15, 10, 0)
SET_COMPUTER_PROCESS(PLAYER3, "ATTACK PLAN 1", 1, 100, 15, 10, 0)
SET_COMPUTER_PROCESS(PLAYER4, "ATTACK PLAN 1", 1, 100, 15, 10, 0)
SET_COMPUTER_EVENT(PLAYER1,"EVENT ENEMY DOOR", 400, 1, 0, 0, 0)
SET_COMPUTER_EVENT(PLAYER2,"EVENT ENEMY DOOR", 400, 1, 0, 0, 0)
SET_COMPUTER_EVENT(PLAYER3,"EVENT ENEMY DOOR", 400, 1, 0, 0, 0)
SET_COMPUTER_EVENT(PLAYER4,"EVENT ENEMY DOOR", 400, 1, 0, 0, 0)
SET_COMPUTER_CHECKS(PLAYER1,"CHECK FOR QUICK ATTACK", 1000,100,1000,10,10000)
SET_COMPUTER_CHECKS(PLAYER2,"CHECK FOR QUICK ATTACK", 1000,100,1000,10,10000)
SET_COMPUTER_CHECKS(PLAYER3,"CHECK FOR QUICK ATTACK", 1000,100,1000,10,10000)
SET_COMPUTER_CHECKS(PLAYER4,"CHECK FOR QUICK ATTACK", 1000,100,1000,10,10000)

IF_SLAB_OWNER(64, 40, PLAYER1)
	CHANGE_SLAB_TYPE(63, 40, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(62, 40, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(61, 40, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(60, 40, BRIDGE_FRAME)
	CHANGE_SLAB_OWNER(63, 40, PLAYER1, MATCH)
ENDIF

IF_SLAB_OWNER(50, 31, PLAYER1)
	CHANGE_SLAB_TYPE(50, 32, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(50, 33, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(50, 34, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(50, 35, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(49, 35, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(48, 35, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(47, 35, BRIDGE_FRAME)
	CHANGE_SLAB_OWNER(50, 32, PLAYER1, MATCH)
ENDIF

IF_SLAB_OWNER(64, 42, PLAYER2)
	CHANGE_SLAB_TYPE(63, 42, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(62, 42, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(61, 42, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(60, 42, BRIDGE_FRAME)
	CHANGE_SLAB_OWNER(63, 42, PLAYER2, MATCH)
ENDIF

IF_SLAB_OWNER(50, 51, PLAYER2)
	CHANGE_SLAB_TYPE(50, 50, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(50, 49, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(50, 48, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(50, 47, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(49, 47, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(48, 47, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(47, 47, BRIDGE_FRAME)
	CHANGE_SLAB_OWNER(50, 50, PLAYER2, MATCH)
ENDIF

IF_SLAB_OWNER(45, 26, PLAYER3)
	CHANGE_SLAB_TYPE(45, 27, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 28, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 29, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 30, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 31, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 32, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 33, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 34, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 35, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 36, BRIDGE_FRAME)
	CHANGE_SLAB_OWNER(45, 27, PLAYER3, MATCH)
ENDIF

IF_SLAB_OWNER(45, 52, PLAYER4)
	CHANGE_SLAB_TYPE(45, 51, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 50, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 49, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 48, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 47, BRIDGE_FRAME)
	CHANGE_SLAB_TYPE(45, 46, BRIDGE_FRAME)
	CHANGE_SLAB_OWNER(45, 51, PLAYER4, MATCH)
ENDIF

IF(PLAYER0,BATTLES_WON>=50)
	QUICK_OBJECTIVE(10,"Second branch of midas doors takes significant damage, things are about to become uglier.",ALL_PLAYERS)
ENDIF

IF(PLAYER0,BATTLES_WON>=100)
	QUICK_OBJECTIVE(11,"Second branch of midas doors breached! Brace for impact.",ALL_PLAYERS)
	ADD_GOLD_TO_PLAYER(PLAYER5,-9999999)
	ALLY_PLAYERS(PLAYER1,PLAYER5,0)
	ALLY_PLAYERS(PLAYER2,PLAYER5,0)
	ALLY_PLAYERS(PLAYER3,PLAYER5,0)
	ALLY_PLAYERS(PLAYER4,PLAYER5,0)
ENDIF

IF(PLAYER0,BATTLES_WON>=200)
	CHANGE_SLAB_TYPE(63, 40, PATH)
	CHANGE_SLAB_TYPE(62, 40, PATH)
	CHANGE_SLAB_TYPE(61, 40, PATH)
	CHANGE_SLAB_TYPE(60, 40, PATH)
	CHANGE_SLAB_TYPE(50, 32, PATH)
	CHANGE_SLAB_TYPE(50, 33, PATH)
	CHANGE_SLAB_TYPE(50, 34, PATH)
	CHANGE_SLAB_TYPE(50, 35, PATH)
	CHANGE_SLAB_TYPE(49, 35, PATH)
	CHANGE_SLAB_TYPE(48, 35, PATH)
	CHANGE_SLAB_TYPE(47, 35, PATH)
	CHANGE_SLAB_TYPE(63, 42, PATH)
	CHANGE_SLAB_TYPE(62, 42, PATH)
	CHANGE_SLAB_TYPE(61, 42, PATH)
	CHANGE_SLAB_TYPE(60, 42, PATH)
	CHANGE_SLAB_TYPE(50, 50, PATH)
	CHANGE_SLAB_TYPE(50, 49, PATH)
	CHANGE_SLAB_TYPE(50, 48, PATH)
	CHANGE_SLAB_TYPE(50, 47, PATH)
	CHANGE_SLAB_TYPE(49, 47, PATH)
	CHANGE_SLAB_TYPE(48, 47, PATH)
	CHANGE_SLAB_TYPE(47, 47, PATH)
ENDIF

IF(PLAYER0,GAME_TURN >= 1500)
	SET_DOOR(UNLOCKED,67,45)
ENDIF

IF(PLAYER0,GAME_TURN >= 3000)
	SET_DOOR(UNLOCKED,67,29)
ENDIF

IF(PLAYER0,GAME_TURN >= 4500)
	SET_DOOR(UNLOCKED,68,64)
ENDIF

IF(PLAYER0,GAME_TURN >= 6000)
	SET_DOOR(UNLOCKED,58,24)
ENDIF

IF(PLAYER0,GAME_TURN >= 7500)
	SET_DOOR(UNLOCKED,54,78)
ENDIF

IF(PLAYER0,GAME_TURN >= 9000)
	SET_DOOR(UNLOCKED,80,32)
ENDIF

IF(PLAYER0,GAME_TURN >= 10500)
	SET_DOOR(UNLOCKED,35,7)
ENDIF

IF(PLAYER0,GAME_TURN >= 12000)
	SET_DOOR(UNLOCKED,36,76)
ENDIF

IF(PLAYER0,GAME_TURN >= 13500)
	SET_DOOR(UNLOCKED,64,69)
ENDIF

IF(PLAYER0,GAME_TURN >= 15000)
	SET_DOOR(UNLOCKED,72,42)
ENDIF

IF(PLAYER0,GAME_TURN >= 16500)
	SET_DOOR(UNLOCKED,41,8)
ENDIF

IF(PLAYER0,GAME_TURN >= 18000)
	SET_DOOR(UNLOCKED,7,77)
ENDIF

IF(PLAYER0,GAME_TURN >= 19500)
	SET_DOOR(UNLOCKED,35,3)
ENDIF

IF(PLAYER0,GAME_TURN >= 21000)
	SET_DOOR(UNLOCKED,81,12)
ENDIF

IF(PLAYER0,GAME_TURN >= 22500)
	SET_DOOR(UNLOCKED,36,9)
ENDIF

IF(PLAYER0,GAME_TURN >= 24000)
	SET_DOOR(UNLOCKED,43,81)
ENDIF

IF(PLAYER0,GAME_TURN >= 25500)
	SET_DOOR(UNLOCKED,78,37)
ENDIF

IF(PLAYER0,GAME_TURN >= 27000)
	SET_DOOR(UNLOCKED,73,49)
ENDIF

IF(PLAYER0,GAME_TURN >= 28500)
	SET_DOOR(UNLOCKED,59,71)
ENDIF

IF(PLAYER0,GAME_TURN >= 30000)
	SET_DOOR(UNLOCKED,41,11)
	SET_DOOR(UNLOCKED,59,71)
	SET_DOOR(UNLOCKED,37,17)
ENDIF

IF(PLAYER0,ALL_DUNGEONS_DESTROYED == 1)
	QUICK_OBJECTIVE(2,"This was no ordinary battle anymore, yet the fourth castle has not fallen. Your journey to take mastery of defence is almost complete now.",ALL_PLAYERS)
	WIN_GAME
ENDIF
