LEVEL_VERSION(1)
SET_GENERATE_SPEED(400)
START_MONEY(ALL_PLAYERS,5000)
MAX_CREATURES(ALL_PLAYERS,15)

SET_GAME_RULE(ImpWorkExperience, 300)
SET_PLAYER_COLOR(PLAYER0, WHITE)
SET_PLAYER_COLOR(PLAYER_GOOD, RED)

ADD_CREATURE_TO_POOL(DWARFA,7)
ADD_CREATURE_TO_POOL(ARCHER,7)
ADD_CREATURE_TO_POOL(BARBARIAN,7)

CREATURE_AVAILABLE(ALL_PLAYERS,DWARFA,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,ARCHER,1,0)
CREATURE_AVAILABLE(ALL_PLAYERS,BARBARIAN,1,0)

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)

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_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HEAL_CREATURE,1,0)

SET_CREATURE_MAX_LEVEL(PLAYER0,DWARFA,4)
SET_CREATURE_MAX_LEVEL(PLAYER0,ARCHER,4)
SET_CREATURE_MAX_LEVEL(PLAYER0,BARBARIAN,4)
SET_CREATURE_MAX_LEVEL(PLAYER0,DRUID,4)

REM Has portal
SET_FLAG(PLAYER_GOOD, FLAG0, 1)
REM < 6 giants
SET_FLAG(PLAYER_GOOD, FLAG1, 1)
REM < 6 wizards
SET_FLAG(PLAYER_GOOD, FLAG2, 1)
REM < 6 archers
SET_FLAG(PLAYER_GOOD, FLAG3, 1)


REM Begin timer for mission
SET_TIMER(PLAYER0, TIMER0)
SET_TIMER(PLAYER0, TIMER1)

REM QUICK_OBJECTIVE(1, "The king's dear friend has been abducted and imprisoned, you have been tasked with rescuing him. However, the scoundrels have noticed your presence and will reinforce given the time.", 5)
DISPLAY_OBJECTIVE(21, 5)

IF(PLAYER_GOOD, ENTRANCE == 0)
	SET_FLAG(PLAYER_GOOD, FLAG0, 0)
ENDIF

IF(PLAYER_GOOD, GIANT >= 6)
	SET_FLAG(PLAYER_GOOD, FLAG1, 0)
ENDIF

IF(PLAYER_GOOD, WIZARD >= 6)
	SET_FLAG(PLAYER_GOOD, FLAG2, 0)
ENDIF

IF(PLAYER_GOOD, ARCHER >= 6)
	SET_FLAG(PLAYER_GOOD, FLAG3, 0)
ENDIF

REM Every idk minutes, spawn some heroes
IF(PLAYER0, TIMER1 >= 3000)
	IF(PLAYER_GOOD, FLAG0 == 1)
		IF(PLAYER_GOOD, FLAG1 == 1)
			NEXT_COMMAND_REUSABLE
			ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, GIANT, 1, 1, 3, 250)
		ENDIF
		IF(PLAYER_GOOD, FLAG1 == 1)
			NEXT_COMMAND_REUSABLE
			ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, WIZARD, 2, 1, 3, 250)
		ENDIF
		IF(PLAYER_GOOD, FLAG1 == 1)
			NEXT_COMMAND_REUSABLE
			ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, ARCHER, 3, 1, 3, 250)
		ENDIF
	ENDIF
	NEXT_COMMAND_REUSABLE
	SET_TIMER(PLAYER0,TIMER1)
ENDIF

IF_ACTION_POINT(4,PLAYER0)
	REM QUICK_INFORMATION(2, "This lost druid will serve us well to mitigate our lack of fairies and wizards here.")
	DISPLAY_INFORMATION(22)
ENDIF

IF(PLAYER0, GUARD_POST == 1)
	NEXT_COMMAND_REUSABLE
    ROOM_AVAILABLE(PLAYER0,GUARD_POST,0,0)
ENDIF

IF(PLAYER0,GUARD_POST < 1)
    NEXT_COMMAND_REUSABLE
    ROOM_AVAILABLE(PLAYER0,GUARD_POST,1,1)
ENDIF

IF(PLAYER0, DWARFA >= 1)
	REM QUICK_INFORMATION(3, "Well done, you rescued some wayward dwarfs, unfortunately they lost all their blueprints, somehow.")
	DISPLAY_INFORMATION(23)
ENDIF

IF(PLAYER0, THIEF >= 1)
	WIN_GAME
ENDIF




