LEVEL_VERSION(1)
SET_GENERATE_SPEED(200)
START_MONEY(ALL_PLAYERS,15000)
MAX_CREATURES(ALL_PLAYERS,45)



IF(PLAYER0,ALL_DUNGEONS_DESTROYED == 1)
	WIN_GAME
ENDIF

IF(PLAYER1,ALL_DUNGEONS_DESTROYED == 1)
	WIN_GAME
ENDIF

IF(PLAYER2,ALL_DUNGEONS_DESTROYED == 1)
	WIN_GAME
ENDIF

IF(PLAYER3,ALL_DUNGEONS_DESTROYED == 1)
	WIN_GAME
ENDIF




IF(PLAYER0,GAME_TURN >= 12000)
    CREATURE_ENTRANCE_LEVEL(PLAYER0,2)
    CREATURE_ENTRANCE_LEVEL(PLAYER1,2)
    CREATURE_ENTRANCE_LEVEL(PLAYER2,2)
    CREATURE_ENTRANCE_LEVEL(PLAYER3,2)
ENDIF

IF(PLAYER0,GAME_TURN >= 24000)
    CREATURE_ENTRANCE_LEVEL(PLAYER0,3)
    CREATURE_ENTRANCE_LEVEL(PLAYER1,3)
    CREATURE_ENTRANCE_LEVEL(PLAYER2,3)
    CREATURE_ENTRANCE_LEVEL(PLAYER3,3)
ENDIF

IF(PLAYER0,GAME_TURN >= 30000)
    CREATURE_ENTRANCE_LEVEL(PLAYER0,4)
    CREATURE_ENTRANCE_LEVEL(PLAYER1,4)
    CREATURE_ENTRANCE_LEVEL(PLAYER2,4)
    CREATURE_ENTRANCE_LEVEL(PLAYER3,4)
ENDIF

IF(PLAYER0,GAME_TURN >= 36000)
    CREATURE_ENTRANCE_LEVEL(PLAYER0,5)
    CREATURE_ENTRANCE_LEVEL(PLAYER1,5)
    CREATURE_ENTRANCE_LEVEL(PLAYER2,5)
    CREATURE_ENTRANCE_LEVEL(PLAYER3,5)
ENDIF

IF(PLAYER0,GAME_TURN >= 42000)
    CREATURE_ENTRANCE_LEVEL(PLAYER0,6)
    CREATURE_ENTRANCE_LEVEL(PLAYER1,6)
    CREATURE_ENTRANCE_LEVEL(PLAYER2,6)
    CREATURE_ENTRANCE_LEVEL(PLAYER3,6)
ENDIF



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



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



SET_GAME_RULE(AlliesShareCta,1)
SET_GAME_RULE(AlliesShareDrop,1)
SET_GAME_RULE(AlliesShareVision,1)


ADD_CREATURE_TO_POOL(FLY,20)
ADD_CREATURE_TO_POOL(BUG,20)
ADD_CREATURE_TO_POOL(DEMONSPAWN,20)
ADD_CREATURE_TO_POOL(TROLL,20)
ADD_CREATURE_TO_POOL(SPIDER,20)
ADD_CREATURE_TO_POOL(HELL_HOUND,20)
ADD_CREATURE_TO_POOL(TENTACLE,20)
ADD_CREATURE_TO_POOL(SORCEROR,40)
ADD_CREATURE_TO_POOL(ORC,20)
ADD_CREATURE_TO_POOL(BILE_DEMON,20)
ADD_CREATURE_TO_POOL(DRAGON,20)
ADD_CREATURE_TO_POOL(THIEF,80)
ADD_CREATURE_TO_POOL(DWARFA,40)
ADD_CREATURE_TO_POOL(ARCHER,40)
ADD_CREATURE_TO_POOL(MONK,20)
ADD_CREATURE_TO_POOL(WIZARD,40)
ADD_CREATURE_TO_POOL(BARBARIAN,40)
ADD_CREATURE_TO_POOL(KNIGHT,40)
ADD_CREATURE_TO_POOL(FAIRY,40)

CREATURE_AVAILABLE(ALL_PLAYERS,SORCEROR,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,THIEF,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,DWARFA,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,ARCHER,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,MONK,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,BARBARIAN,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,KNIGHT,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,FAIRY,1,0)



IF(PLAYER0,KNIGHT >= 1)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,KNIGHT,0,0)
ENDIF
IF(PLAYER0,KNIGHT <= 0)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,KNIGHT,1,0)
ENDIF

IF(PLAYER1,KNIGHT >= 1)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,KNIGHT,0,0)
ENDIF
IF(PLAYER1,KNIGHT <= 0)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,KNIGHT,1,0)
ENDIF

IF(PLAYER2,KNIGHT >= 1)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,KNIGHT,0,0)
ENDIF
IF(PLAYER2,KNIGHT <= 0)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,KNIGHT,1,0)
ENDIF

IF(PLAYER3,KNIGHT >= 1)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,KNIGHT,0,0)
ENDIF
IF(PLAYER3,KNIGHT <= 0)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,KNIGHT,1,0)
ENDIF







IF(PLAYER0,FAIRY >= 2)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,FAIRY,0,0)
ENDIF
IF(PLAYER0,FAIRY <= 1)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,FAIRY,1,0)
ENDIF

IF(PLAYER1,FAIRY >= 2)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,FAIRY,0,0)
ENDIF
IF(PLAYER1,FAIRY <= 1)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,FAIRY,1,0)
ENDIF

IF(PLAYER2,FAIRY >= 2)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,FAIRY,0,0)
ENDIF
IF(PLAYER2,FAIRY <= 1)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,FAIRY,1,0)
ENDIF

IF(PLAYER3,FAIRY >= 2)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,FAIRY,0,0)
ENDIF
IF(PLAYER3,FAIRY <= 1)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,FAIRY,1,0)
ENDIF



IF(PLAYER0,ARCHER >= 10)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,ARCHER,0,0)
ENDIF
IF(PLAYER0,ARCHER <= 9)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,ARCHER,1,0)
ENDIF

IF(PLAYER1,ARCHER >= 10)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,ARCHER,0,0)
ENDIF
IF(PLAYER1,ARCHER <= 9)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,ARCHER,1,0)
ENDIF

IF(PLAYER2,ARCHER >= 10)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,ARCHER,0,0)
ENDIF
IF(PLAYER2,ARCHER <= 9)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,ARCHER,1,0)
ENDIF

IF(PLAYER3,ARCHER >= 10)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,ARCHER,0,0)
ENDIF
IF(PLAYER3,ARCHER <= 9)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,ARCHER,1,0)
ENDIF




IF(PLAYER0,THIEF >= 10)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,THIEF,0,0)
ENDIF
IF(PLAYER0,THIEF <= 9)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,THIEF,1,0)
ENDIF

IF(PLAYER1,THIEF >= 10)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,THIEF,0,0)
ENDIF
IF(PLAYER1,THIEF <= 9)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,THIEF,1,0)
ENDIF

IF(PLAYER2,THIEF >= 10)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,THIEF,0,0)
ENDIF
IF(PLAYER2,THIEF <= 9)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,THIEF,1,0)
ENDIF

IF(PLAYER3,THIEF >= 10)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,THIEF,0,0)
ENDIF
IF(PLAYER3,THIEF <= 9)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,THIEF,1,0)
ENDIF







IF(PLAYER0,DWARFA >= 5)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,DWARFA,0,0)
ENDIF
IF(PLAYER0,DWARFA <= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,DWARFA,1,0)
ENDIF

IF(PLAYER1,DWARFA >= 5)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,DWARFA,0,0)
ENDIF
IF(PLAYER1,DWARFA <= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,DWARFA,1,0)
ENDIF

IF(PLAYER2,DWARFA >= 5)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,DWARFA,0,0)
ENDIF
IF(PLAYER2,DWARFA <= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,DWARFA,1,0)
ENDIF

IF(PLAYER3,DWARFA >= 5)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,DWARFA,0,0)
ENDIF
IF(PLAYER3,DWARFA <= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,DWARFA,1,0)
ENDIF





IF(PLAYER0,SORCEROR >= 5)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,SORCEROR,0,0)
ENDIF
IF(PLAYER0,SORCEROR <= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,SORCEROR,1,0)
ENDIF

IF(PLAYER1,SORCEROR >= 5)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,SORCEROR,0,0)
ENDIF
IF(PLAYER1,SORCEROR <= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,SORCEROR,1,0)
ENDIF

IF(PLAYER2,SORCEROR >= 5)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,SORCEROR,0,0)
ENDIF
IF(PLAYER2,SORCEROR <= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,SORCEROR,1,0)
ENDIF

IF(PLAYER3,SORCEROR >= 5)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,SORCEROR,0,0)
ENDIF
IF(PLAYER3,SORCEROR <= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,SORCEROR,1,0)
ENDIF





IF(PLAYER0,MONK >= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,MONK,0,0)
ENDIF
IF(PLAYER0,MONK <= 3)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,MONK,1,0)
ENDIF

IF(PLAYER1,MONK >= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,MONK,0,0)
ENDIF
IF(PLAYER1,MONK <= 3)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,MONK,1,0)
ENDIF

IF(PLAYER2,MONK >= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,MONK,0,0)
ENDIF
IF(PLAYER2,MONK <= 3)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,MONK,1,0)
ENDIF

IF(PLAYER3,MONK >= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,MONK,0,0)
ENDIF
IF(PLAYER3,MONK <= 3)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,MONK,1,0)
ENDIF






IF(PLAYER0,BARBARIAN >= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,BARBARIAN,0,0)
ENDIF
IF(PLAYER0,BARBARIAN <= 3)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER0,BARBARIAN,1,0)
ENDIF

IF(PLAYER1,BARBARIAN >= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,BARBARIAN,0,0)
ENDIF
IF(PLAYER1,BARBARIAN <= 3)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER1,BARBARIAN,1,0)
ENDIF

IF(PLAYER2,BARBARIAN >= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,BARBARIAN,0,0)
ENDIF
IF(PLAYER2,BARBARIAN <= 3)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER2,BARBARIAN,1,0)
ENDIF

IF(PLAYER3,BARBARIAN >= 4)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,BARBARIAN,0,0)
ENDIF
IF(PLAYER3,BARBARIAN <= 3)
 NEXT_COMMAND_REUSABLE
 CREATURE_AVAILABLE(PLAYER3,BARBARIAN,1,0)
ENDIF

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,BRIDGE,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,GUARD_POST,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,WORKSHOP,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,TEMPLE,1,0)

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_IMP,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SIGHT,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,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_HEAL_CREATURE,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_PROTECT,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_CHICKEN,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_ARMAGEDDON,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_DESTROY_WALLS,1,0)

TRAP_AVAILABLE(ALL_PLAYERS,POISON_GAS,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,LIGHTNING,1,0)

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