LEVEL_VERSION(1)
SET_GENERATE_SPEED(400)
START_MONEY(ALL_PLAYERS,2500)
MAX_CREATURES(ALL_PLAYERS,25)
SET_TIMER(PLAYER0,TIMER0)
SET_TIMER(PLAYER0,TIMER1)
SET_TIMER(PLAYER0,TIMER2)
SET_TIMER(PLAYER0,TIMER3)
SET_TIMER(PLAYER0,TIMER4)
SET_TIMER(PLAYER0,TIMER5)


SET_GAME_RULE(PrisonSkeletonChance,100)
SET_GAME_RULE(ImpWorkExperience,500)
SET_CREATURE_INSTANCE(GHOST2,4,SPEED,4)
SET_CREATURE_INSTANCE(GHOST2,8,DRAIN,8)
SET_CREATURE_INSTANCE(GHOST2,5,NULL,1)
SET_CREATURE_PROPERTY(PRIESTESS,HUMANOID_SKELETON,1)
SET_CREATURE_PROPERTY(NECROMANCER,HUMANOID_SKELETON,1)
SET_CREATURE_PROPERTY(FLYING_TERROR,HUMANOID_SKELETON,1)
SET_CREATURE_CONFIGURATION(SPIDKIN,TrainingValue,4)
SET_CREATURE_CONFIGURATION(VAMPIRE,TrainingValue,5)
SET_CREATURE_CONFIGURATION(SKELETON,TrainingValue,5)
SET_CREATURE_CONFIGURATION(HELL_HOUND,TrainingValue,5)

REM "Welcome Keeper. Be sure to take care of your Imp or you will lose. Exploration is highly advised! Play in possession since your hand is frozen... saving is recommended. HAVE FUN!"
DISPLAY_OBJECTIVE(52)


MAGIC_AVAILABLE(ALL_PLAYERS,POWER_HAND,0,0)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_SLAP,1,1)
MAGIC_AVAILABLE(ALL_PLAYERS,POWER_POSSESS,1,1)

REM WHITE HEART

IF_ACTION_POINT(19,PLAYER0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,HORNY,PLAYER_GOOD,2,10,0)
	PLAY_MESSAGE(PLAYER0,SPEECH,92)
ENDIF


REM SOUNDS


IF_ACTION_POINT(1,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,345)
ENDIF

IF_ACTION_POINT(3,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,346)
	REM "Behind this door lies danger and treasure. Choose wisely the path to success ... or to death."
	DISPLAY_INFORMATION(53)
ENDIF

IF_ACTION_POINT(5,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,446)
ENDIF

IF_ACTION_POINT(6,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,1030)
ENDIF

IF_ACTION_POINT(7,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SPEECH,99)
	PLAY_MESSAGE(PLAYER0,SPEECH,100)
ENDIF

IF_ACTION_POINT(23,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,810)
ENDIF

IF_ACTION_POINT(10,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,1025)
ENDIF

IF_ACTION_POINT(11,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SPEECH,117)
	IF(PLAYER0,TOTAL_CREATURES <= 1)
		REM "There must be some creatures around for you... I can feel it..."
		DISPLAY_INFORMATION(54)
	ENDIF
ENDIF

IF_ACTION_POINT(12,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SPEECH,94)
ENDIF

IF_ACTION_POINT(13,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,969)
ENDIF

IF_ACTION_POINT(14,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,345)
ENDIF

IF_ACTION_POINT(22,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SPEECH,96)
ENDIF

IF_ACTION_POINT(16,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SPEECH,91)
ENDIF


IF_ACTION_POINT(17,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,1024)
ENDIF


IF_ACTION_POINT(18,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,468)
ENDIF

IF_ACTION_POINT(21,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,468)
ENDIF

IF_ACTION_POINT(20,PLAYER0)
	PLAY_MESSAGE(PLAYER0,SOUND,469)
	REM "You are getting close..."
	DISPLAY_INFORMATION(55)
ENDIF

REM JUMPSCARE


IF_ACTION_POINT(2,PLAYER0)
	REM "Be careful near those lightning storms... they might hurt."
	DISPLAY_MESSAGE(56,IMP)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,GHOST2,3,1,7,0)
ENDIF

IF_ACTION_POINT(2,PLAYER_GOOD)
	NEXT_COMMAND_REUSABLE
	KILL_CREATURE(PLAYER_GOOD,GHOST2,ANYWHERE,1)
	NEXT_COMMAND_REUSABLE
	RESET_ACTION_POINT(2,PLAYER_GOOD)
ENDIF

IF_ACTION_POINT(8,PLAYER0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,HORNY,7,1,10,0)
	PLAY_MESSAGE(PLAYER0,SOUND,959)
ENDIF

IF_ACTION_POINT(8,PLAYER_GOOD)
	NEXT_COMMAND_REUSABLE
	KILL_CREATURE(PLAYER_GOOD,HORNY,ANYWHERE,1)
	NEXT_COMMAND_REUSABLE
	RESET_ACTION_POINT(8,PLAYER_GOOD)
ENDIF

IF_ACTION_POINT(10,PLAYER0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,HORNY,11,1,10,0)
	PLAY_MESSAGE(PLAYER0,SOUND,969)
ENDIF

IF_ACTION_POINT(10,PLAYER_GOOD)
	NEXT_COMMAND_REUSABLE
	KILL_CREATURE(PLAYER_GOOD,HORNY,ANYWHERE,1)
	NEXT_COMMAND_REUSABLE
	RESET_ACTION_POINT(10,PLAYER_GOOD)
ENDIF


IF_ACTION_POINT(13,PLAYER0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,GHOST2,14,1,7,0)
	PLAY_MESSAGE(PLAYER0,SOUND,907)
ENDIF

IF_ACTION_POINT(13,PLAYER_GOOD)
	NEXT_COMMAND_REUSABLE
	KILL_CREATURE(PLAYER_GOOD,GHOST2,ANYWHERE,1)
	NEXT_COMMAND_REUSABLE
	RESET_ACTION_POINT(13,PLAYER_GOOD)
ENDIF

REM LIGHTNING STORM


IF(PLAYER0,TIMER0 >= 600)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER1,24,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER2,26,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER3,32,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER4,39,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER5,40,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER6,37,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	SET_TIMER(PLAYER0,TIMER0)
ENDIF

IF(PLAYER0,TIMER1 >= 350)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER1,25,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER2,28,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER3,34,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER4,33,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER5,36,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER6,38,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER_GOOD,41,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	SET_TIMER(PLAYER0,TIMER1)
ENDIF

IF(PLAYER0,TIMER2 >= 400)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER1,30,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER2,29,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER3,25,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER4,33,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER5,37,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER6,38,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	SET_TIMER(PLAYER0,TIMER2)
ENDIF


IF(PLAYER0,TIMER3 >= 750)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER1,44,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER2,45,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER3,31,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER4,34,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER5,39,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER6,42,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER_GOOD,41,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	SET_TIMER(PLAYER0,TIMER3)
ENDIF


IF(PLAYER0,TIMER4 >= 500)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER1,43,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER2,45,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER3,31,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER4,35,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER5,27,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER6,28,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	SET_TIMER(PLAYER0,TIMER4)
ENDIF


IF(PLAYER0,TIMER5 >= 500)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER1,25,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER2,33,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER3,34,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER4,44,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER5,27,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	USE_POWER_AT_LOCATION(PLAYER6,31,POWER_LIGHTNING,9,1)
	NEXT_COMMAND_REUSABLE
	SET_TIMER(PLAYER0,TIMER5)
ENDIF

REM "This box will only work if you have one creature or fewer."
SET_BOX_TOOLTIP_ID(1,57)

IF(PLAYER0,BOX1_ACTIVATED == 1)
	IF(PLAYER0,TOTAL_CREATURES <= 1)
		REVEAL_MAP_RECT(PLAYER0,200,193,24,24)
	ENDIF
	IF(PLAYER0,TOTAL_CREATURES >= 2)
		PLAY_MESSAGE(PLAYER0,SOUND,96)
	ENDIF
ENDIF


REM ROOMS

IF(PLAYER0,TOTAL_CREATURES >= 1)
	ROOM_AVAILABLE(PLAYER0,LAIR,1,1)
	ROOM_AVAILABLE(PLAYER0,GARDEN,1,1)
	ROOM_AVAILABLE(PLAYER0,TRAINING,1,1)
	MAGIC_AVAILABLE(PLAYER0,POWER_HAND,1,1)
	REM "Looks like your Hand got unfrozen..."
	DISPLAY_INFORMATION(58)
ENDIF

REM IMP KILL
IF(PLAYER0,FLAG0 == 0)
	IF_ACTION_POINT(4,PLAYER0)
		KILL_CREATURE(PLAYER0,IMP,LEAST_EXPERIENCED,1)
		PLAY_MESSAGE(PLAYER0,SOUND,89)
		REM "Well you just walked into the lords trap... better luck next time."
		DISPLAY_INFORMATION(59)
	ENDIF
ENDIF

REM IMPS


IF_ACTION_POINT(15,PLAYER0)
	SET_FLAG(PLAYER0,FLAG0,1)
	MAGIC_AVAILABLE(PLAYER0,POWER_IMP,1,1)
	REM "You found ancient imprisoned Imps and freed them... they brought the wisdom to call upon more Imps for your needs Sire!"
	DISPLAY_INFORMATION(60)
	PLAY_MESSAGE(PLAYER0,SPEECH,95)
	SET_CREATURE_HEALTH(IMP,350)
ENDIF


IF(PLAYER0,FLAG0 == 0)
	IF(PLAYER0,IMP == 0)
		LOSE_GAME
	ENDIF
ENDIF


IF(PLAYER0,ALL_DUNGEONS_DESTROYED == 1)
	WIN_GAME
	REM "Well done you managed to win this realm. I Hope you enjoyed and got a bit spooked in the process."
	DISPLAY_OBJECTIVE(61)
ENDIF
