REM --------------------------------------------------
REM --------------------------------------------------
REM STARTING GAME SETTINGS----------------------------
REM --------------------------------------------------
REM --------------------------------------------------

REM Timers
REM PLAYER0 TIMER1 - counts mass heal for player in battles
REM PLAYER_GOOD TIMER1 - Count tunellers spawn
REM PLAYER_GOOD TIMER2-4 - Counts harass
REM PLAYER_GOOD TIMER5 - Counts spider guards spawn
REM PLAYER_GOOD TIMER6 - Dragons spawn in Dragon Lake
REM PLAYER_GOOD TIMER7 - Counts adds spawn time
REM PLAYER2 TIMER1 - Counts adds spawn time
REM PLAYER2 TIMER2 - Counts power use time
REM PLAYER2 TIMER6 - weak heroes spam
REM PLAYER3 TIMER1 - Counts adds spawn time
REM PLAYER3 TIMER2 - Counts power use time
REM PLAYER3 TIMER6 - weak heroes spam


REM Hero Gates
REM
REM 1-6 - gates for harras, located in white blockposts
REM 7-13 - gates to spawn counterattack1
REM 14,15 - gates to spawn counterattack2
REM 
REM Harras will stop after player will take all white
REM barracks (make them less than 12 slabs total)
REM

REM Flags
REM PLAYER0 FLAG7 - Count ghosts sacrifices, empowering 
REM Hornies and Tentacles


LEVEL_VERSION(1)
SET_GENERATE_SPEED(200)
START_MONEY(ALL_PLAYERS,9500)


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



IF(PLAYER2, ENTRANCE < 9)
	QUICK_OBJECTIVE(4,"We have captured one of hero portals! They are for sure will push harder from the other!", PLAYER0)
	MAX_CREATURES(PLAYER3,55)
	CREATURE_ENTRANCE_LEVEL (PLAYER3,9)
	SET_GENERATE_SPEED(100)
	
ENDIF

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

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

CREATURE_ENTRANCE_LEVEL (PLAYER1,4)
CREATURE_ENTRANCE_LEVEL (PLAYER2,8)
CREATURE_ENTRANCE_LEVEL (PLAYER3,6)


IF(PLAYER0, SACRIFICED[IMP]>= 18)
	REMOVE_SACRIFICE_RECIPE(IMP)
ENDIF

REM ----------------------------------
REM Creatures that have no 
REM imprisonment by defoult
REM ----------------------------------
SET_CREATURE_PROPERTY(IMP,NO_CORPSE_ROTTING,1)
SET_CREATURE_PROPERTY(IMP,NO_IMPRISONMENT,1)

IF(PLAYER0,HELL_HOUND >=10)
	NEXT_COMMAND_REUSABLE
	SET_CREATURE_PROPERTY(HELL_HOUND,NO_IMPRISONMENT,1)
	ENDIF

IF(PLAYER0,HELL_HOUND < 10)
	NEXT_COMMAND_REUSABLE
	SET_CREATURE_PROPERTY(HELL_HOUND,NO_IMPRISONMENT,0)
ENDIF

SET_CREATURE_PROPERTY(THIEF,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(TUNNELLER,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(DWARFA,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(ARCHER,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(BARBARIAN,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(MONK,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(FAIRY,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(WITCH,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(WIZARD,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(GIANT,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(SAMURAI,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(KNIGHT,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(AVATAR,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(GHOST,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(HORNY,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(TIME_MAGE,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(BUG,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(FLY,NO_IMPRISONMENT,1)
SET_CREATURE_PROPERTY(SPIDER,NO_IMPRISONMENT,1)


REM ----------------------------------
REM PLAYER1 minions empowered while hes alive
REM ----------------------------------

SET_CREATURE_PROPERTY(BUG,SPECIAL_DIGGER,1)
SET_CREATURE_PROPERTY(SPIDER,ILLUMINATED,1)

SET_CREATURE_CONFIGURATION(SPIDER,AttackPreference,RANGED)
SET_CREATURE_CONFIGURATION(SPIDER,Health,1600)
SET_CREATURE_CONFIGURATION(FLY,AttackPreference,RANGED)
SET_CREATURE_CONFIGURATION(FLY,Health,450)
SET_CREATURE_CONFIGURATION(BUG,Health,700)
SET_CREATURE_CONFIGURATION(BUG,Strength,45)
SET_CREATURE_CONFIGURATION(BUG,PrimaryJobs,DIG)
SET_CREATURE_CONFIGURATION(BUG,SecondaryJobs,TRAIN)



SET_CREATURE_INSTANCE(FLY,6,SLOW,6)
SET_CREATURE_INSTANCE(FLY,3,HEAL,3)
SET_CREATURE_INSTANCE(FLY,2,DRAIN,2)
SET_CREATURE_INSTANCE(FLY,10,WORD_OF_POWER,10)

SET_CREATURE_INSTANCE(SPIDER,3,SPEED,3)
SET_CREATURE_INSTANCE(SPIDER,10,WORD_OF_POWER,10)
SET_CREATURE_INSTANCE(SPIDER,4,HEAL,4)
SET_CREATURE_INSTANCE(SPIDER,6,DRAIN,6)
SET_CREATURE_INSTANCE(SPIDER,9,REBOUND,9)


SET_CREATURE_INSTANCE(BUG,2,FIRST_PERSON_DIG,2)
SET_CREATURE_INSTANCE(BUG,3,SPEED,3)
SET_CREATURE_INSTANCE(BUG,5,HEAL,5)
SET_CREATURE_INSTANCE(BUG,4,ARMOUR,4)
SET_CREATURE_INSTANCE(BUG,10,TELEPORT,10)



REM ----------------------------------
REM Game rules settings
REM ----------------------------------

SET_GAME_RULE(TrainingRoomMaxLevel,7)
SET_GAME_RULE(GhostConvertChance,0)
SET_GAME_RULE(AlliesShareDrop,1)
SET_GAME_RULE(AlliesShareCta,1)
SET_GAME_RULE(AlliesShareVision,1)

IF(PLAYER0, VAMPIRE <10)
	NEXT_COMMAND_REUSABLE
	SET_GAME_RULE(BodiesForVampire,85)
ENDIF

IF(PLAYER0, VAMPIRE >=10)
	NEXT_COMMAND_REUSABLE
	SET_GAME_RULE(BodiesForVampire,850)
ENDIF

SET_CREATURE_CONFIGURATION(GHOST,Health,2600)

REM ----------------------------------
REM Avaliable creatures for players
REM ----------------------------------

ADD_CREATURE_TO_POOL(FLY,14)
ADD_CREATURE_TO_POOL(BUG,19)
ADD_CREATURE_TO_POOL(DEMONSPAWN,3)
ADD_CREATURE_TO_POOL(TROLL,18)
ADD_CREATURE_TO_POOL(SORCEROR,12)
ADD_CREATURE_TO_POOL(SKELETON,16)
ADD_CREATURE_TO_POOL(ORC,11)


ADD_CREATURE_TO_POOL(HELL_HOUND,12)
ADD_CREATURE_TO_POOL(THIEF,2)
ADD_CREATURE_TO_POOL(TUNNELLER,2)
ADD_CREATURE_TO_POOL(DWARFA,20)
ADD_CREATURE_TO_POOL(ARCHER,40)
ADD_CREATURE_TO_POOL(BARBARIAN,10)
ADD_CREATURE_TO_POOL(MONK,20)
ADD_CREATURE_TO_POOL(FAIRY,10)
ADD_CREATURE_TO_POOL(GIANT,30)
ADD_CREATURE_TO_POOL(KNIGHT,18)
ADD_CREATURE_TO_POOL(WIZARD,20)
ADD_CREATURE_TO_POOL(WITCH,20)



REM Starting pool of human player. 

CREATURE_AVAILABLE(PLAYER0,DEMONSPAWN,1,0)
CREATURE_AVAILABLE(PLAYER0,TROLL,1,0)
CREATURE_AVAILABLE(PLAYER0,SORCEROR,1,0)
CREATURE_AVAILABLE(PLAYER0,SKELETON,1,0)
CREATURE_AVAILABLE(PLAYER0,ORC,1,0)


REM Blue. Defensive. Buffs insects while alive.
REM Can become ally.


CREATURE_AVAILABLE(PLAYER1,FLY,1,1)
CREATURE_AVAILABLE(PLAYER1,BUG,1,1)


REM Green. Defensive. First line of defences.


CREATURE_AVAILABLE(PLAYER2,THIEF,1,1)
CREATURE_AVAILABLE(PLAYER2,TUNNELLER,1,1)
CREATURE_AVAILABLE(PLAYER2,BARBARIAN, 1,1)
CREATURE_AVAILABLE(PLAYER2,DWARFA,1,1)
CREATURE_AVAILABLE(PLAYER2,ARCHER,1,1)
CREATURE_AVAILABLE(PLAYER2,HELL_HOUND,1,1)
CREATURE_AVAILABLE(PLAYER2, GIANT, 1,1)


REM Yellow. Agressive. Second line of defences.


CREATURE_AVAILABLE(PLAYER3, MONK, 1,1)
CREATURE_AVAILABLE(PLAYER3, FAIRY, 1,1)
CREATURE_AVAILABLE(PLAYER3, WIZARD, 1,1)
CREATURE_AVAILABLE(PLAYER3, KNIGHT, 1,1)
CREATURE_AVAILABLE(PLAYER3, WITCH, 1,1)

REM White player is main boss and will 
REM have most powerfull forces

REM ----------------------------------
REM Rooms avaliability for players
REM ----------------------------------


REM Avaliable for all players


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)


REM Unavaliable for all players

ROOM_AVAILABLE(ALL_PLAYERS,TEMPLE,0,0)


REM Avaliable for research

ROOM_AVAILABLE(ALL_PLAYERS,GUARD_POST,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,WORKSHOP,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,PRISON,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,TORTURE,1,0)
ROOM_AVAILABLE(ALL_PLAYERS,BARRACKS,1,0)
ROOM_AVAILABLE(PLAYER2,GRAVEYARD,1,0)
ROOM_AVAILABLE(PLAYER3,GRAVEYARD,1,0)
ROOM_AVAILABLE(PLAYER3,SCAVENGER,1,0)
ROOM_AVAILABLE(PLAYER0,BRIDGE,1,0)
ROOM_AVAILABLE(PLAYER0,GRAVEYARD,1,0)
ROOM_AVAILABLE(PLAYER0,SCAVENGER,1,0)
ROOM_AVAILABLE(PLAYER1,BRIDGE,1,1)
ROOM_AVAILABLE(PLAYER2,BRIDGE,1,1)

IF(PLAYER2, TOTAL_CREATURES == 0)
	ROOM_AVAILABLE(PLAYER3, BRIDGE,1,1)
ENDIF

REM ----------------------------------
REM Spells aveliability
REM ----------------------------------

REM Player0 
MAGIC_AVAILABLE(PLAYER0,POWER_HAND,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_SLAP,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_POSSESS,1,1)

IF(PLAYER0,IMP<18)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER0,POWER_IMP,1,1)
ENDIF

IF(PLAYER0,IMP>=18)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER0,POWER_IMP,0,0)
ENDIF

MAGIC_AVAILABLE(PLAYER0,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_HOLD_AUDIENCE,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_SPEED,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_PROTECT,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CONCEAL,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_OBEY,1,0)




REM Player1
MAGIC_AVAILABLE(PLAYER1,POWER_HAND,1,1)


IF(PLAYER1,IMP<12)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER1,POWER_IMP,1,1)
ENDIF

IF(PLAYER1,IMP>=12)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER1,POWER_IMP,0,0)
ENDIF



MAGIC_AVAILABLE(PLAYER1,POWER_HEAL_CREATURE,1,1)
MAGIC_AVAILABLE(PLAYER1,POWER_CALL_TO_ARMS,1,1)
MAGIC_AVAILABLE(PLAYER1,POWER_SLAP,1,1)
MAGIC_AVAILABLE(PLAYER1,POWER_PROTECT,1,1)
MAGIC_AVAILABLE(PLAYER1,POWER_SPEED,1,1)
MAGIC_AVAILABLE(PLAYER1,POWER_OBEY,1,1)

REM Player2

MAGIC_AVAILABLE(PLAYER2,POWER_HAND,1,1)
MAGIC_AVAILABLE(PLAYER2,POWER_SLAP,1,1)

IF(PLAYER2,IMP<12)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER2,POWER_IMP,1,1)
ENDIF

IF(PLAYER2,IMP>=12)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER2,POWER_IMP,0,0)
ENDIF


MAGIC_AVAILABLE(PLAYER2,POWER_POSSESS,1,1)
MAGIC_AVAILABLE(PLAYER2,POWER_OBEY,1,1)
MAGIC_AVAILABLE(PLAYER2,POWER_CALL_TO_ARMS,1,1)
MAGIC_AVAILABLE(PLAYER2,POWER_HEAL_CREATURE,1,1)
MAGIC_AVAILABLE(PLAYER2,POWER_PROTECT,1,1)
MAGIC_AVAILABLE(PLAYER2,POWER_SPEED,1,1)

REM Player3

MAGIC_AVAILABLE(PLAYER3,POWER_HAND,1,1)
MAGIC_AVAILABLE(PLAYER3,POWER_SLAP,1,1)


IF(PLAYER3,IMP<12)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER3,POWER_IMP,1,1)
ENDIF

IF(PLAYER3,IMP>=12)
	NEXT_COMMAND_REUSABLE
	MAGIC_AVAILABLE(PLAYER3,POWER_IMP,0,0)
ENDIF


MAGIC_AVAILABLE(PLAYER3,POWER_POSSESS,1,1)
MAGIC_AVAILABLE(PLAYER3,POWER_OBEY,1,0)
MAGIC_AVAILABLE(PLAYER3,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(PLAYER3,POWER_HEAL_CREATURE,1,0)
MAGIC_AVAILABLE(PLAYER3,POWER_PROTECT,1,0)
MAGIC_AVAILABLE(PLAYER3,POWER_DESTROY_WALLS,1,0)
MAGIC_AVAILABLE(PLAYER3,POWER_SPEED,1,0)
MAGIC_AVAILABLE(PLAYER3,POWER_DISEASE,1,0)
MAGIC_AVAILABLE(PLAYER3,POWER_CHICKEN,1,0)
MAGIC_AVAILABLE(PLAYER3,POWER_LIGHTNING,1,0)

REM Traps and doors

REM Change LAVA trap into METEOR trap
SET_TRAP_CONFIGURATION(LAVA,Model,TRAP_PEACH)
SET_TRAP_CONFIGURATION(LAVA,PointerSprites,162)
SET_TRAP_CONFIGURATION(LAVA,Shots,30)
SET_TRAP_CONFIGURATION(LAVA,TimeBetweenShots,75)
SET_TRAP_CONFIGURATION(LAVA,TriggerType,3)
SET_TRAP_CONFIGURATION(LAVA,Hidden,0)
SET_TRAP_CONFIGURATION(LAVA,ActivationType,5)
SET_TRAP_CONFIGURATION(LAVA,EffectType,2)
SET_TRAP_CONFIGURATION(LAVA,SymbolSprites,525,404)
SET_TRAP_CONFIGURATION(LAVA,NameTextID,991)
SET_TRAP_CONFIGURATION(LAVA,TooltipTextID,991)
SET_TRAP_CONFIGURATION(LAVA,ManufactureRequired,80000)
SET_TRAP_CONFIGURATION(LAVA,SellingValue,1750)

REM Making lightning trap more powerful

TRAP_AVAILABLE(ALL_PLAYERS,POISON_GAS,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,LIGHTNING,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,WORD_OF_POWER,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,BOULDER,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,ALARM,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,LAVA,1,0)


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

REM Making doors usable
SET_DOOR_CONFIGURATION(WOOD,Health,4000)
SET_DOOR_CONFIGURATION(BRACED,Health,7500)
SET_DOOR_CONFIGURATION(STEEL,Health,17500)
SET_DOOR_CONFIGURATION(STEEL,ManufactureRequired,50000)
SET_DOOR_CONFIGURATION(STEEL,SellingValue,1000)
SET_DOOR_CONFIGURATION(MAGIC,Health,3500)
SET_DOOR_CONFIGURATION(MAGIC,ManufactureRequired,90000)
SET_DOOR_CONFIGURATION(MAGIC,SellingValue,2000)


REM --------------------------------------------------
REM --------------------------------------------------
REM LOGIC SECTIOM-------------------------------------
REM --------------------------------------------------
REM --------------------------------------------------



REM Pparties used

CREATE_PARTY(Scouts)
CREATE_PARTY(Harass_weak)
CREATE_PARTY(Harass_medium)
CREATE_PARTY(Harass_powerfull1)
CREATE_PARTY(Harass_powerfull2)
CREATE_PARTY(Counterattack1)
CREATE_PARTY(Counterattack2)
CREATE_PARTY(White_Temple)
CREATE_PARTY(Spider_Guard)
CREATE_PARTY(Raid_Boss)
CREATE_PARTY(Green_Adds)
CREATE_PARTY(Yellow_Adds)
CREATE_PARTY(White_Adds)
CREATE_PARTY(Protectors)
CREATE_PARTY(Protectors2)
CREATE_PARTY(Exterminators)

REM Parties setup

ADD_TO_PARTY(Scouts,ARCHER,5,500,ATTACK_ENEMIES,100)
ADD_TO_PARTY(Scouts,HELL_HOUND,4,500,ATTACK_ENEMIES,100)

ADD_TO_PARTY(Harass_weak,ARCHER,7,1200,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_weak,DWARFA,6,1200,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_weak,HELL_HOUND,6,600,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_weak,HELL_HOUND,5,600,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_weak,HELL_HOUND,5,600,ATTACK_DUNGEON_HEART,200)

ADD_TO_PARTY(Harass_medium,SAMURAI,7,1200,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_medium,MONK,8,700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_medium,BARBARIAN,7,700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_medium,GIANT,7,700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_medium,FAIRY,6,700,ATTACK_DUNGEON_HEART,200)

ADD_TO_PARTY(Harass_powerfull1,KNIGHT,8,2200,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_powerfull1,MONK,10,900,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_powerfull1,KNIGHT,7,900,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_powerfull1,SAMURAI,8,900,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_powerfull1,GIANT,10,900,ATTACK_DUNGEON_HEART,200)

ADD_TO_PARTY(Harass_powerfull2,WIZARD,9,2200,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_powerfull2,MONK,9,900,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_powerfull2,DWARFA,10,900,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_powerfull2,WITCH,7,900,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Harass_powerfull2,BARBARIAN,10,900,ATTACK_DUNGEON_HEART,200)

ADD_TO_PARTY(White_Temple,HORNY,9,7500,ATTACK_DUNGEON_HEART,0)
ADD_TO_PARTY(White_Temple,TENTACLE,9,900,ATTACK_DUNGEON_HEART,0)
ADD_TO_PARTY(White_Temple,TENTACLE,9,900,ATTACK_DUNGEON_HEART,0)
ADD_TO_PARTY(White_Temple,TENTACLE,9,900,ATTACK_DUNGEON_HEART,0)

ADD_TO_PARTY(Spider_Guard,GIANT,7,1000,ATTACK_DUNGEON_HEART,500)
ADD_TO_PARTY(Spider_Guard,DWARFA,7,200,ATTACK_DUNGEON_HEART,500)

ADD_TO_PARTY(Counterattack1,KNIGHT,8,1000,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Counterattack1,MONK,8,700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Counterattack1,MONK,8,700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Counterattack1,MONK,8,700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Counterattack1,MONK,8,700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Counterattack1,MONK,8,700,ATTACK_DUNGEON_HEART,200)

ADD_TO_PARTY(Counterattack2,KNIGHT,9,3000,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Counterattack2,ARCHER,9,1700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Counterattack2,SAMURAI,9,1700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Counterattack2,SAMURAI,9,1700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Counterattack2,HELL_HOUND,10,700,ATTACK_DUNGEON_HEART,200)
ADD_TO_PARTY(Counterattack2,HELL_HOUND,10,700,ATTACK_DUNGEON_HEART,200)

ADD_TO_PARTY(Raid_Boss,AVATAR,10,0,DEFEND_LOCATION,100)

ADD_TO_PARTY(Green_Adds,ARCHER,10,0,DEFEND_LOCATION,100)
ADD_TO_PARTY(Green_Adds,HELL_HOUND,10,0,DEFEND_LOCATION,100)
ADD_TO_PARTY(Green_Adds,DWARFA,10,0,DEFEND_LOCATION,100)

ADD_TO_PARTY(Yellow_Adds,WIZARD,10,0,DEFEND_LOCATION,100)
ADD_TO_PARTY(Yellow_Adds,FAIRY,10,0,DEFEND_LOCATION,100)
ADD_TO_PARTY(Yellow_Adds,MONK,10,0,DEFEND_LOCATION,100)

ADD_TO_PARTY(White_Adds,KNIGHT,10,0,DEFEND_LOCATION,100)
ADD_TO_PARTY(White_Adds,SAMURAI,10,0,DEFEND_LOCATION,100)
ADD_TO_PARTY(White_Adds,GIANT,10,0,DEFEND_LOCATION,100)

ADD_TO_PARTY(Protectors,KNIGHT,10,0,ATTACK_DUNGEON_HEART,500)
ADD_TO_PARTY(Protectors,KNIGHT,10,0,ATTACK_DUNGEON_HEART,500)
ADD_TO_PARTY(Protectors,DWARFA,10,0,ATTACK_DUNGEON_HEART,500)
ADD_TO_PARTY(Protectors,DWARFA,10,0,ATTACK_DUNGEON_HEART,500)
ADD_TO_PARTY(Protectors,ARCHER,10,0,ATTACK_DUNGEON_HEART,500)
ADD_TO_PARTY(Protectors,ARCHER,10,0,ATTACK_DUNGEON_HEART,500)

ADD_TO_PARTY(Protectors2,KNIGHT,10,10000,DEFEND_LOCATION,500)
ADD_TO_PARTY(Protectors2,KNIGHT,10,10000,DEFEND_LOCATION,500)
ADD_TO_PARTY(Protectors2,WIZARD,10,5000,DEFEND_LOCATION,500)
ADD_TO_PARTY(Protectors2,WIZARD,10,5000,DEFEND_LOCATION,500)
ADD_TO_PARTY(Protectors2,SAMURAI,10,8000,DEFEND_LOCATION,500)
ADD_TO_PARTY(Protectors2,SAMURAI,10,8000,DEFEND_LOCATION,500)

REM After 5 mins spawns 2 tunellers to make routs

SET_TIMER(PLAYER_GOOD,TIMER1)

IF(PLAYER_GOOD, TIMER1 > 3000)
	ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,Scouts,27,DUNGEON_HEART,0,4,800)
	ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,Scouts,27,DUNGEON_HEART,0,4,800)
	
ENDIF 



IF_ACTION_POINT(1,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_weak,-1,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_weak,-2,1)
	SET_TIMER(PLAYER_GOOD,TIMER2)
ENDIF
	
IF_ACTION_POINT(2,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_medium,-3,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_medium,-4,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Protectors,2,3)
	SET_TIMER(PLAYER_GOOD, TIMER3)
ENDIF
	
IF_ACTION_POINT(3,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_powerfull1,-5,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_powerfull2,-6,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Protectors2,3,1)
	SET_TIMER(PLAYER_GOOD, TIMER4)
ENDIF


REM While player white has at least 1 whole barracks 
REM harass parties will continue to spawn

IF(PLAYER_GOOD, BARRACKS >= 12)

	IF(PLAYER_GOOD,TIMER2 > 9000)
		NEXT_COMMAND_REUSABLE
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_weak,-1,3)
		NEXT_COMMAND_REUSABLE
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_weak,-2,3)
		NEXT_COMMAND_REUSABLE
		SET_TIMER(PLAYER_GOOD,TIMER2)
	ENDIF


	IF(PLAYER_GOOD,TIMER3 > 10000)
		NEXT_COMMAND_REUSABLE
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_medium,-3,3)
		NEXT_COMMAND_REUSABLE
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_medium,-4,3)
		NEXT_COMMAND_REUSABLE
		SET_TIMER(PLAYER_GOOD,TIMER3)
	ENDIF

	IF(PLAYER_GOOD,TIMER4 > 11000)
		NEXT_COMMAND_REUSABLE
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_powerfull1,-5,3)
		NEXT_COMMAND_REUSABLE
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Harass_powerfull2,-6,3)
		NEXT_COMMAND_REUSABLE
		SET_TIMER(PLAYER_GOOD,TIMER4)
	ENDIF

ENDIF

REM Spawn temple defenders of white temple

IF_ACTION_POINT(4,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, White_Temple,4,1)
ENDIF

IF_ACTION_POINT(5,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, White_Temple,5,1)
	
ENDIF

IF_ACTION_POINT(6,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, White_Temple,6,2)
	
ENDIF

IF_ACTION_POINT(7,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, White_Temple,7,2)
	
	
ENDIF

IF_ACTION_POINT(8,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, White_Temple,8,3)
	
ENDIF


IF_ACTION_POINT(10,PLAYER0)
	
	
	SET_TIMER(PLAYER_GOOD,TIMER5)
	
	IF(PLAYER_GOOD, TIMER5>=100)

		IF_SLAB_OWNER(2,66,PLAYER_GOOD)
			NEXT_COMMAND_REUSABLE
			ADD_PARTY_TO_LEVEL(PLAYER_GOOD,Spider_Guard,10,1)
			NEXT_COMMAND_REUSABLE
			RESET_ACTION_POINT(10)
			NEXT_COMMAND_REUSABLE
			SET_TIMER(PLAYER_GOOD,TIMER5)
		ENDIF
		
	ENDIF

ENDIF

IF_ACTION_POINT(24,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, White_Temple,24,4)
	
ENDIF

IF_ACTION_POINT(25,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Protectors,-16,2)
ENDIF

IF_ACTION_POINT(26,PLAYER0)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Protectors2,-12,2)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Protectors2,-13,2)
ENDIF

REM ----------------------------------
REM PLAYER0 power progression
REM ----------------------------------

REM Creatures unlock

IF(PLAYER0, BILE_DEMON >=1)
	CREATURE_AVAILABLE(PLAYER0,BILE_DEMON,1,1)
	ADD_CREATURE_TO_POOL(BILE_DEMON, 7)
	
ENDIF

IF(PLAYER0, DARK_MISTRESS >=1)
	CREATURE_AVAILABLE(PLAYER0,DARK_MISTRESS,1,1)
	ADD_CREATURE_TO_POOL(DARK_MISTRESS, 7)
	
ENDIF

IF(PLAYER0, DRAGON >=1)
	CREATURE_AVAILABLE(PLAYER0,DRAGON,1,1)
	ADD_CREATURE_TO_POOL(DRAGON, 7)
	
ENDIF

REM Empowerment via temple claiming

IF(PLAYER0, TEMPLE >= 18)
	
	CREATURE_ENTRANCE_LEVEL (PLAYER0,2)
	ADD_CREATURE_TO_POOL(HORNY,1)
	ADD_CREATURE_TO_POOL(TENTACLE,2)
	CREATURE_AVAILABLE(PLAYER0,HORNY,1,1)
	CREATURE_AVAILABLE(PLAYER0,TENTACLE,1,1)
ENDIF

IF(PLAYER0, TEMPLE >= 27)
	
	CREATURE_ENTRANCE_LEVEL (PLAYER0,3)
	ADD_CREATURE_TO_POOL(HORNY,2)
	ADD_CREATURE_TO_POOL(TENTACLE,4)
	
ENDIF

IF(PLAYER0, TEMPLE >= 45)
	
	ADD_CREATURE_TO_POOL(HORNY,3)
	ADD_CREATURE_TO_POOL(TENTACLE,6)
ENDIF

IF(PLAYER0, TEMPLE >= 63)
	
	ADD_CREATURE_TO_POOL(HORNY,4)
	ADD_CREATURE_TO_POOL(TENTACLE,8)
ENDIF

IF(PLAYER0, TEMPLE >= 90)
	PLAY_MESSAGE(PLAYER0,SPEECH,92)
	KILL_CREATURE(PLAYER0,IMP,ANYWHERE,99)
	ADD_CREATURE_TO_POOL(HORNY,5)
	ADD_CREATURE_TO_POOL(TENTACLE,10)
	CREATURE_ENTRANCE_LEVEL (PLAYER0,7)
	ROOM_AVAILABLE(PLAYER0, TEMPLE,1,1)
ENDIF

REM Empowering Horned Reapers and Tentacles via ghosts sacrifing

SET_SACRIFICE_RECIPE(CUSTOMREWARD,FLAG7,GHOST)



IF(PLAYER0,FLAG7 ==2)
	PLAY_MESSAGE(PLAYER0,SPEECH,65)
	SET_CREATURE_INSTANCE(HORNY,3,SIGHT,3)
	SET_CREATURE_INSTANCE(HORNY,4,ARMOUR,4)
ENDIF

IF(PLAYER0,FLAG7 ==3)
	PLAY_MESSAGE(PLAYER0,SPEECH,65)
	SET_CREATURE_INSTANCE(HORNY,6,INVISIBILITY,6)
	SET_CREATURE_INSTANCE(HORNY,7,SLOW,7)
ENDIF

IF(PLAYER0,FLAG7 ==4)
	PLAY_MESSAGE(PLAYER0,SPEECH,65)
	SET_CREATURE_INSTANCE(HORNY,8,FREEZE,8)
	SET_CREATURE_INSTANCE(TENTACLE,4,HEAL,4)
ENDIF

IF(PLAYER0,FLAG7 == 5)
	PLAY_MESSAGE(PLAYER0,SPEECH,65)
	SET_CREATURE_CONFIGURATION(HORNY,Strength,165)
	SET_CREATURE_INSTANCE(HORNY,10,TELEPORT,10)
	SET_CREATURE_INSTANCE(TENTACLE,9,SPEED,9)
	SET_CREATURE_INSTANCE(TENTACLE,10,TELEPORT,10)
ENDIF



IF(PLAYER0,FLAG7 == 6)
	PLAY_MESSAGE(PLAYER0,SPEECH,65)
	SET_CREATURE_PROPERTY(HORNY,IMMUNE_TO_BOULDER,1)
	SET_CREATURE_PROPERTY(HORNY,NEVER_CHICKENS,1)
	SET_CREATURE_PROPERTY(TENTACLE,NEVER_CHICKENS,1)
	SET_CREATURE_CONFIGURATION(TENTACLE,Strength,115)
	SET_CREATURE_CONFIGURATION(HORNY,Armour,120)
	SET_CREATURE_CONFIGURATION(HORNY,Luck,90)
ENDIF

IF(PLAYER0,FLAG7 == 7)
	PLAY_MESSAGE(PLAYER0,SPEECH,65)
	ADD_CREATURE_TO_POOL(HORNY,8)
ENDIF

IF(PLAYER0,FLAG7 == 9)
	PLAY_MESSAGE(PLAYER0,SPEECH,65)
	ADD_CREATURE_TO_POOL(DARK_MISTRESS,28)
	ADD_CREATURE_TO_POOL(DRAGON,28)
	MAX_CREATURES(PLAYER0,64)
ENDIF

REM Max creatures increase via portals claim

IF(PLAYER0,ENTRANCE ==18)
	MAX_CREATURES(PLAYER0,24)
ENDIF

IF(PLAYER0,ENTRANCE ==27)
	MAX_CREATURES(PLAYER0,32)
ENDIF

IF(PLAYER0,ENTRANCE ==36)
	MAX_CREATURES(PLAYER0,44)
	
ENDIF

IF(PLAYER0,ENTRANCE >=45)
	MAX_CREATURES(PLAYER0,55)
	
ENDIF



REM ----------------------------------
REM Relaetionships of Pl0 and Pl1
REM ----------------------------------

IF (PLAYER0, SPIDER >= 1)
	QUICK_OBJECTIVE(3,"That spider looks strange. We somehow can communicate with blue keeper through it, and it likes us now. We shall value this little buddy.", PLAYER0)
	NEXT_COMMAND_REUSABLE
	ALLY_PLAYERS(PLAYER0,PLAYER1,1)
ENDIF

REM If allied gives acces to bug, fly, heal spell
REM and heals all player creatures every 6 secs if
REM battle happening.

IF_ALLIED(PLAYER0, PLAYER1 == 1)

	IF (PLAYER1, DUNGEON_DESTROYED==0)

		MAGIC_AVAILABLE(PLAYER0,POWER_HEAL_CREATURE,1,1)
		CREATURE_AVAILABLE(PLAYER0,FLY,1,1)
		CREATURE_AVAILABLE(PLAYER0,BUG,1,1)
		
		SET_TIMER(PLAYER0, TIMER1)

		IF(PLAYER0, TIMER1 >= 120)
		
			IF (PLAYER0, ACTIVE_BATTLES >=1)
				NEXT_COMMAND_REUSABLE
				SET_FLAG(PLAYER0,SACRIFICED[ORC],1)
				NEXT_COMMAND_REUSABLE
				SET_FLAG(PLAYER0,SACRIFICED[SPIDER],1)
				NEXT_COMMAND_REUSABLE
				SET_TIMER(PLAYER0, TIMER1)
			ENDIF
									
		ENDIF
		
	ENDIF
ENDIF


IF (PLAYER0, SPIDER == 0)
	NEXT_COMMAND_REUSABLE
	ALLY_PLAYERS(PLAYER0, PLAYER1, 0)
ENDIF


IF(PLAYER1,SPIDER < 1)
	NEXT_COMMAND_REUSABLE
	ADD_CREATURE_TO_LEVEL(PLAYER1,SPIDER,PLAYER1,1,10,1200)
ENDIF


IF (PLAYER1, DUNGEON_DESTROYED==1)

	
	
	SET_CREATURE_PROPERTY(BUG,SPECIAL_DIGGER,0)
	SET_CREATURE_PROPERTY(BUG,ILLUMINATED,0)
	SET_CREATURE_PROPERTY(FLY,ILLUMINATED,0)
	SET_CREATURE_PROPERTY(SPIDER,ILLUMINATED,0)

	SET_CREATURE_CONFIGURATION(SPIDER,AttackPreference,MELEE)
	
	SET_CREATURE_CONFIGURATION(FLY,AttackPreference,MELEE)
	
	
	SET_CREATURE_CONFIGURATION(BUG,Strength,25)
	SET_CREATURE_CONFIGURATION(BUG,PrimaryJobs,NULL)
	SET_CREATURE_CONFIGURATION(BUG,SecondaryJobs,NULL)
	

	SET_CREATURE_INSTANCE(FLY,1,SWING_WEAPON_FIST,1)
	SET_CREATURE_INSTANCE(FLY,2,NULL,2)
	SET_CREATURE_INSTANCE(FLY,3,NULL,3)
	SET_CREATURE_INSTANCE(FLY,6,NULL,6)
	SET_CREATURE_INSTANCE(FLY,10,NULL,10)

	SET_CREATURE_INSTANCE(SPIDER,3,NULL,3)
	SET_CREATURE_INSTANCE(SPIDER,10,NULL,10)
	SET_CREATURE_INSTANCE(SPIDER,4,NULL,4)
	SET_CREATURE_INSTANCE(SPIDER,6,NULL,6)
	SET_CREATURE_INSTANCE(SPIDER,9,NULL,9)

	SET_CREATURE_INSTANCE(BUG,2,NULL,2)
	SET_CREATURE_INSTANCE(BUG,3,NULL,3)
	SET_CREATURE_INSTANCE(BUG,5,NULL,5)
	SET_CREATURE_INSTANCE(BUG,4,NULL,4)
	SET_CREATURE_INSTANCE(BUG,10,NULL,10)
ENDIF


REM-----------------------------------------

REM Adding some low lvl heroes

IF(PLAYER0,GAME_TURN >= 400)
	ADD_CREATURE_TO_LEVEL(PLAYER2,DWARFA,12,1,1,0)
	ADD_CREATURE_TO_LEVEL(PLAYER2,ARCHER,12,1,1,0)
	ADD_CREATURE_TO_LEVEL(PLAYER2,BARBARIAN,12,1,1,0)
	ADD_CREATURE_TO_LEVEL(PLAYER2,GIANT,12,1,1,0)
	ADD_CREATURE_TO_LEVEL(PLAYER3,KNIGHT,11,1,1,0)
	ADD_CREATURE_TO_LEVEL(PLAYER3,WIZARD,11,1,1,0)
	ADD_CREATURE_TO_LEVEL(PLAYER3,FAIRY,11,1,1,0)
ENDIF


IF(PLAYER0,GAME_TURN > 18000)
	CHANGE_SLAB_TYPE(65,80,PATH)
	CHANGE_SLAB_TYPE(66,80,PATH)
	CHANGE_SLAB_TYPE(65,81,PATH)
	CHANGE_SLAB_TYPE(66,81,PATH)
	CHANGE_SLAB_TYPE(67,80,PATH)
ENDIF

REM Neutral Dragon and weak heroes are spawning every 5 mins

SET_TIMER(PLAYER_GOOD, TIMER6)
SET_TIMER(PLAYER3, TIMER6)
SET_TIMER(PLAYER2, TIMER6)

IF(PLAYER_GOOD, TIMER6 >= 18000)
    IF(PLAYER0,DRAGONS <= 12)
        NEXT_COMMAND_REUSABLE
        ADD_CREATURE_TO_LEVEL(PLAYER_NEUTRAL,DRAGON,9,1,1,0)
        NEXT_COMMAND_REUSABLE
        SET_TIMER(PLAYER_GOOD, TIMER6)
    ENDIF
ENDIF

IF(PLAYER3, TIMER6 >= 6000)
    IF(PLAYER3, ENTRANCE >=9)
        IF(PLAYER3, GOOD_CREATURES < 40)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER3,KNIGHT,11,1,1,0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER3,WIZARD,11,1,1,0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER3,FAIRY,11,1,1,0)
            NEXT_COMMAND_REUSABLE
            SET_TIMER(PLAYER3, TIMER6)
        ENDIF
    ENDIF
ENDIF

IF(PLAYER2, TIMER6 >= 4000)
    IF(PLAYER2, ENTRANCE >=9)
        IF(PLAYER2, GOOD_CREATURES < 50)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER2,DWARFA,12,1,1,0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER2,ARCHER,12,1,1,0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER2,BARBARIAN,12,1,1,0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER2,GIANT,12,1,1,0)
            NEXT_COMMAND_REUSABLE
            SET_TIMER(PLAYER2, TIMER6)
        ENDIF
    ENDIF
ENDIF


REM First counter attack

IF(PLAYER2, TOTAL_AREA <= 350)
	QUICK_OBJECTIVE(1,"Ha! Order of warrior monks seems to be sending their troops to help. Well, more bodies for our Reapers to pile. They will be pleased with such a slaughter!",-9)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Counterattack1,-7,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Counterattack1,-8,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Counterattack1,-9,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Counterattack1,-10,4)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Counterattack1,-11,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Counterattack1,-12,1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Counterattack1,-13,1)
ENDIF

REM Second counter attack

IF(PLAYER3, TOTAL_AREA <= 270)
	QUICK_OBJECTIVE(2,"They are getting crushed! Yet they still cling to life. How sweet",-14)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Counterattack2,-14,4)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Counterattack2,-15,4)
ENDIF







REM --------------------------------------------------
REM --------------------------------------------------
REM RAID BOSS FIGHT-----------------------------------
REM --------------------------------------------------
REM --------------------------------------------------


REM Elite heroes stats setup

IF_ACTION_POINT(13,PLAYER0)
	SET_CREATURE_CONFIGURATION(AVATAR, Health, 10000)
	SET_CREATURE_CONFIGURATION(AVATAR, Strength, 250)
	SET_CREATURE_CONFIGURATION(AVATAR, Armour, 200)
	SET_CREATURE_CONFIGURATION(AVATAR, Luck, 100)
	
	SET_CREATURE_CONFIGURATION(KNIGHT, Health, 3500)
	SET_CREATURE_CONFIGURATION(KNIGHT, Strength, 190)
	
	SET_CREATURE_CONFIGURATION(ARCHER, Health, 1700)
	SET_CREATURE_CONFIGURATION(ARCHER, Strength, 100)
	
	SET_CREATURE_CONFIGURATION(HELL_HOUND, Health, 1900)
	
	SET_CREATURE_CONFIGURATION(DWARFA, Health, 4500)
	SET_CREATURE_CONFIGURATION(DWARFA, Strength, 110)
	
	SET_FLAG(PLAYER_GOOD, FLAG5,1)
ENDIF

IF(PLAYER_GOOD,FLAG5 ==1)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Protectors,-14,2)
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Protectors,-15,2)

ENDIF

REM After player enters Heart Room, and fight begins, 
REM opens and entrance to back library room, 
REM where is Satan and Armageddon spell

IF_ACTION_POINT(14,PLAYER0)

	QUICK_OBJECTIVE(5,"Satan himself knocks from the back door, willing to join the fight. He has a present for you. Go check behind Heart Room!",PLAYER0)
	CHANGE_SLAB_TYPE(59,9,PRETTY_PATH)
	CHANGE_CREATURE_OWNER(PLAYER_GOOD,HORNY,MOST_EXPERIENCED,PLAYER0)
	
	REM Money for spells
	ADD_GOLD_TO_PLAYER(PLAYER2, 800000)
	ADD_GOLD_TO_PLAYER(PLAYER3, 800000)
	MAX_CREATURES(PLAYER2,80)
	MAX_CREATURES(PLAYER3,80)
	
	REM Disable hand and CTA for computer players
	MAGIC_AVAILABLE(PLAYER2,POWER_HAND,0,0)
	MAGIC_AVAILABLE(PLAYER3,POWER_HAND,0,0)
	MAGIC_AVAILABLE(PLAYER2,POWER_CALL_TO_ARMS,0,0)
	MAGIC_AVAILABLE(PLAYER3,POWER_CALL_TO_ARMS,0,0)
	MAGIC_AVAILABLE(PLAYER2,POWER_IMP,0,0)
	MAGIC_AVAILABLE(PLAYER3,POWER_IMP,0,0)
	
	REM Add Avatars to computer players
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, Raid_Boss,-18,1)
	ADD_PARTY_TO_LEVEL(PLAYER2, Raid_Boss,-19,1)
	ADD_PARTY_TO_LEVEL(PLAYER3, Raid_Boss,-17,1)
	
	REM Add to bosses
	ADD_PARTY_TO_LEVEL(PLAYER_GOOD, White_Adds,-18,6)
	ADD_PARTY_TO_LEVEL(PLAYER2, Green_Adds,-19,6)
	ADD_PARTY_TO_LEVEL(PLAYER3, Yellow_Adds,-17,6)
	
	REM Steiing up combat timers
	SET_TIMER(PLAYER2,TIMER1)
	SET_TIMER(PLAYER3,TIMER1)
	SET_TIMER(PLAYER2,TIMER2)
	SET_TIMER(PLAYER3,TIMER2)
	SET_TIMER(PLAYER_GOOD,TIMER7)
	
	
ENDIF
	
IF(PLAYER_GOOD, AVATAR >=1)

	IF(PLAYER_GOOD, HEART_HEALTH <=15000)
		NEXT_COMMAND_REUSABLE
		ADD_HEART_HEALTH(PLAYER_GOOD,100,0)
	ENDIF
	
	IF(PLAYER2, HEART_HEALTH <=15000)
		NEXT_COMMAND_REUSABLE
		ADD_HEART_HEALTH(PLAYER2,100,0)
	ENDIF
	
	IF(PLAYER3, HEART_HEALTH <=15000)
		NEXT_COMMAND_REUSABLE
		ADD_HEART_HEALTH(PLAYER3,100,0)
	ENDIF
	

	IF(PLAYER2,TIMER1 >=1200)
		NEXT_COMMAND_REUSABLE
		ADD_PARTY_TO_LEVEL(PLAYER2, Green_Adds,-19,2)
		NEXT_COMMAND_REUSABLE
		SET_TIMER(PLAYER2,TIMER1)
	ENDIF

	IF(PLAYER3,TIMER1 >=1200)
		NEXT_COMMAND_REUSABLE
		ADD_PARTY_TO_LEVEL(PLAYER3, Yellow_Adds,-17,2)
		NEXT_COMMAND_REUSABLE
		SET_TIMER(PLAYER3,TIMER1)
	ENDIF

	IF(PLAYER_GOOD,TIMER7 >=1200)
		NEXT_COMMAND_REUSABLE
		ADD_PARTY_TO_LEVEL(PLAYER_GOOD, White_Adds,-18,3)
		NEXT_COMMAND_REUSABLE
		SET_TIMER(PLAYER_GOOD,TIMER7)
	ENDIF


	IF(PLAYER2, TIMER2 ==100)
		NEXT_COMMAND_REUSABLE
		USE_SPELL_ON_CREATURE(PLAYER0,ANY_CREATURE,AT_ACTION_POINT[21],SPELL_SLOW,9)
		NEXT_COMMAND_REUSABLE
		USE_SPELL_ON_CREATURE(PLAYER0,ANY_CREATURE,AT_ACTION_POINT[22],SPELL_SLOW,9)
		NEXT_COMMAND_REUSABLE
		USE_SPELL_ON_CREATURE(PLAYER0,ANY_CREATURE,AT_ACTION_POINT[23],SPELL_SLOW,9)
		NEXT_COMMAND_REUSABLE
		USE_POWER_ON_CREATURE(PLAYER_GOOD,AVATAR,ANYWHERE,PLAYER2,POWER_HEAL_CREATURE,9,1)
		NEXT_COMMAND_REUSABLE
		USE_POWER_ON_CREATURE(PLAYER2,AVATAR,ANYWHERE,PLAYER2,POWER_HEAL_CREATURE,9,1)
		NEXT_COMMAND_REUSABLE
		USE_POWER_ON_CREATURE(PLAYER3,AVATAR,ANYWHERE,PLAYER2,POWER_HEAL_CREATURE,9,1)
		NEXT_COMMAND_REUSABLE
		USE_POWER_ON_CREATURE(PLAYER_GOOD,AVATAR,ANYWHERE,PLAYER2,POWER_SPEED,9,1)
	ENDIF
	
	IF(PLAYER2, TIMER2 ==120)
		NEXT_COMMAND_REUSABLE
		USE_POWER_ON_CREATURE(PLAYER_GOOD,AVATAR,ANYWHERE,PLAYER2,POWER_HEAL_CREATURE,9,1)
	ENDIF
	
	IF(PLAYER2, TIMER2 ==140)
		NEXT_COMMAND_REUSABLE
		USE_POWER_ON_CREATURE(PLAYER_GOOD,KNIGHT,ANYWHERE,PLAYER2, POWER_HEAL_CREATURE,9,1)
		NEXT_COMMAND_REUSABLE
		USE_POWER_ON_CREATURE(PLAYER_GOOD,KNIGHT,ANYWHERE,PLAYER2, POWER_SPEED,9,1)
	ENDIF
	
	IF(PLAYER2, TIMER2 ==160)
		NEXT_COMMAND_REUSABLE
		USE_POWER_ON_CREATURE(PLAYER_GOOD,KNIGHT,ANYWHERE,PLAYER2, POWER_HEAL_CREATURE,9,1)
		NEXT_COMMAND_REUSABLE
		USE_POWER_ON_CREATURE(PLAYER_GOOD,KNIGHT,ANYWHERE,PLAYER2, POWER_SPEED,9,1)
		NEXT_COMMAND_REUSABLE
		SET_TIMER(PLAYER2,TIMER2)
	ENDIF
	
	


	
	IF(PLAYER3, TIMER2 ==200)
		NEXT_COMMAND_REUSABLE
		USE_POWER_AT_LOCATION(PLAYER3,15,POWER_LIGHTNING,9,1)
	ENDIF
	
	IF(PLAYER3, TIMER2 ==220)
		NEXT_COMMAND_REUSABLE
		USE_POWER_AT_LOCATION(PLAYER3,16,POWER_LIGHTNING,9,1)
	ENDIF
	
	IF(PLAYER3, TIMER2 ==240)
		NEXT_COMMAND_REUSABLE
		USE_POWER_AT_LOCATION(PLAYER3,17,POWER_LIGHTNING,9,1)
	ENDIF
	
	IF(PLAYER3, TIMER2 ==260)
		NEXT_COMMAND_REUSABLE
		USE_POWER_AT_LOCATION(PLAYER3,18,POWER_LIGHTNING,9,1)
	ENDIF
	
	IF(PLAYER3, TIMER2 ==280)
		NEXT_COMMAND_REUSABLE
		USE_POWER_AT_LOCATION(PLAYER3,19,POWER_CAVE_IN,9,1)
	ENDIF
	
	IF(PLAYER3, TIMER2 ==300)
		NEXT_COMMAND_REUSABLE
		USE_POWER_AT_LOCATION(PLAYER3,20,POWER_CAVE_IN,9,1)
		NEXT_COMMAND_REUSABLE
		SET_TIMER(PLAYER3,TIMER2)
	ENDIF

ENDIF



IF(PLAYER0,ALL_DUNGEONS_DESTROYED == 1)
	WIN_GAME
ENDIF
