LEVEL_VERSION(1)

SET_GENERATE_SPEED(650)

START_MONEY(PLAYER0, 36000)
START_MONEY(PLAYER1, 60000)

MAX_CREATURES(PLAYER0, 21)
MAX_CREATURES(PLAYER1, 40)

COMPUTER_PLAYER(PLAYER1,10)

CREATURE_ENTRANCE_LEVEL(PLAYER1,6)

ALLY_PLAYERS(PLAYER1, PLAYER_GOOD,1)

SET_CREATURE_HEALTH(KNIGHT,2500)

ADD_CREATURE_TO_POOL(DRAGON, 5)
ADD_CREATURE_TO_POOL(BILE_DEMON, 5)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,3)
ADD_CREATURE_TO_POOL(ORC, 2)
ADD_CREATURE_TO_POOL(TROLL, 2)

ADD_CREATURE_TO_POOL(GIANT, 6)
ADD_CREATURE_TO_POOL(BARBARIAN, 6)
ADD_CREATURE_TO_POOL(WIZARD, 5)
ADD_CREATURE_TO_POOL(DWARFA, 4)
ADD_CREATURE_TO_POOL(MONK, 3)
ADD_CREATURE_TO_POOL(FAIRY, 3)
ADD_CREATURE_TO_POOL(SAMURAI, 4)

CREATURE_AVAILABLE(PLAYER0, DRAGON, 1, 10)
CREATURE_AVAILABLE(PLAYER0, BILE_DEMON, 1, 0)
CREATURE_AVAILABLE(PLAYER0, DARK_MISTRESS, 1, 0)
CREATURE_AVAILABLE(PLAYER0, ORC ,1,0)
CREATURE_AVAILABLE(PLAYER0, TROLL ,1,0)
CREATURE_AVAILABLE(PLAYER0, VAMPIRE ,1,10)
CREATURE_AVAILABLE(PLAYER0, HORNY ,1,10)

CREATURE_AVAILABLE(PLAYER1, GIANT ,1,10)
CREATURE_AVAILABLE(PLAYER1, BARBARIAN ,1,10)
CREATURE_AVAILABLE(PLAYER1, WIZARD ,1,10)
CREATURE_AVAILABLE(PLAYER1, DWARFA ,1,10)
CREATURE_AVAILABLE(PLAYER1, MONK ,1,10)
CREATURE_AVAILABLE(PLAYER1, FAIRY ,1,10)
CREATURE_AVAILABLE(PLAYER1, SAMURAI ,1,10)

    SET_CREATURE_FEAR_STRONGER(DARK_MISTRESS,10000)
    SET_CREATURE_FEAR_STRONGER(DRAGON,10000)
    SET_CREATURE_FEAR_STRONGER(BILE_DEMON,10000)
    SET_CREATURE_FEAR_STRONGER(TENTACLE,10000)
    SET_CREATURE_FEAR_STRONGER(ORC,10000)
    SET_CREATURE_FEAR_STRONGER(TROLL,10000)
    SET_CREATURE_FEAR_STRONGER(FAIRY,10000)
    SET_CREATURE_FEAR_STRONGER(WIZARD,10000)
    SET_CREATURE_FEAR_STRONGER(WITCH,10000)
    SET_CREATURE_FEAR_STRONGER(GHOST,10000)

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, WORKSHOP, 1, 0)
ROOM_AVAILABLE(ALL_PLAYERS, BARRACKS, 1, 0)
ROOM_AVAILABLE(PLAYER0, TORTURE, 1, 0)
ROOM_AVAILABLE(PLAYER1, TEMPLE, 1, 0)
ROOM_AVAILABLE(PLAYER1, SCAVENGER, 1, 0)

MAGIC_AVAILABLE(PLAYER0, POWER_IMP, 1, 1)
MAGIC_AVAILABLE(PLAYER1, 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_CONCEAL, 1, 0)
MAGIC_AVAILABLE(ALL_PLAYERS, POWER_CALL_TO_ARMS, 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(PLAYER1, POWER_LIGHTNING, 1, 0)
MAGIC_AVAILABLE(ALL_PLAYERS, POWER_CHICKEN, 1, 0)
MAGIC_AVAILABLE(PLAYER1, POWER_DISEASE, 1, 0)

DOOR_AVAILABLE(ALL_PLAYERS, MAGIC, 1, 0)
TRAP_AVAILABLE(ALL_PLAYERS, WORD_OF_POWER, 1, 0)

SET_TRAP_CONFIGURATION(LIGHTNING,Model,130)
SET_TRAP_CONFIGURATION(LIGHTNING,ModelSize,700)
SET_TRAP_CONFIGURATION(LIGHTNING,Shots,1023)
SET_TRAP_CONFIGURATION(LIGHTNING,TimeBetweenShots,20)
SET_TRAP_CONFIGURATION(LIGHTNING,TriggerType,3)
SET_TRAP_CONFIGURATION(LIGHTNING,Hidden,0)
SET_TRAP_CONFIGURATION(LIGHTNING,ActivationType,5)
SET_TRAP_CONFIGURATION(LIGHTNING,EffectType,4)

SET_TRAP_CONFIGURATION(LAVA,Model,905)
SET_TRAP_CONFIGURATION(LAVA,ModelSize,700)
SET_TRAP_CONFIGURATION(LAVA,Shots,1023)
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)

CREATE_PARTY(WAVE)
	ADD_TO_PARTY(WAVE,DWARFA,6,350,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE,FAIRY,5,350,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE,MONK,5,350,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE,WIZARD,5,350,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(WAVE1)
	ADD_TO_PARTY(WAVE1,ARCHER,7,450,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE1,ARCHER,7,450,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE1,FAIRY,7,450,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE1,FAIRY,7,450,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(WAVE2)
	ADD_TO_PARTY(WAVE2,WIZARD,7,550,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE2,WIZARD,7,550,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE2,WITCH,7,550,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE2,WITCH,7,550,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(WAVE3)
	ADD_TO_PARTY(WAVE3,GIANT,8,800,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE3,GIANT,8,800,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE3,BARBARIAN,8,800,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE3,BARBARIAN,8,800,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE3,WIZARD,8,800,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(WAVE4)
	ADD_TO_PARTY(WAVE4,SAMURAI,8,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE4,SAMURAI,8,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE4,ARCHER,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE4,ARCHER,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE3,WIZARD,8,0,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(WAVE5)
	ADD_TO_PARTY(WAVE5,FAIRY,9,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE5,FAIRY,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE5,WITCH,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE5,MONK,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE5,MONK,9,0,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(WAVE6)
	ADD_TO_PARTY(WAVE6,WIZARD,10,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE6,WIZARD,10,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE6,MONK,10,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE6,BARBARIAN,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE6,BARBARIAN,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE6,MONK,9,0,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(WAVE7)
	ADD_TO_PARTY(WAVE7,SAMURAI,9,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE7,SAMURAI,9,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE7,BARBARIAN,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE7,GIANT,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE7,GIANT,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE7,BARBARIAN,9,0,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(WAVE8)
	ADD_TO_PARTY(WAVE8,WIZARD,9,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE8,WIZARD,9,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE8,MONK,10,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE8,MONK,10,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE8,FAIRY,10,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(WAVE8,FAIRY,10,0,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(WAVE9)
	ADD_TO_PARTY(WAVE9,SAMURAI,9,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE9,SAMURAI,9,0,ATTACK_DUNGEON_HEART,0)
  	  ADD_TO_PARTY(WAVE9,GIANT,10,0,ATTACK_DUNGEON_HEART,0)
  	  ADD_TO_PARTY(WAVE9,GIANT,10,0,ATTACK_DUNGEON_HEART,0)
   	 ADD_TO_PARTY(WAVE9,WIZARD,10,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(WAVE9,WIZARD,10,0,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(LORD)
	ADD_TO_PARTY(LORD,KNIGHT,10,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(LORD,SAMURAI,10,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(LORD,SAMURAI,10,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(LORD,GIANT,10,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(LORD,GIANT,10,0,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(LORD,BARBARIAN,10,0,ATTACK_DUNGEON_HEART,0)
	ADD_TO_PARTY(LORD,BARBARIAN,10,0,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(BOSS)
	ADD_TO_PARTY(BOSS,AVATAR,10,100000,ATTACK_DUNGEON_HEART,0)

QUICK_OBJECTIVE(1,"The last hero fortress is here, with the King and his most elite hero armies. Time to show them who's the true ruler of this land, Keeper.",PLAYER0)

SET_FLAG(PLAYER1,FLAG0,0)
SET_FLAG(PLAYER_GOOD,FLAG0,0)
SET_TIMER(PLAYER1,TIMER1)

IF(PLAYER1, DUNGEON_DESTROYED==0)
IF(PLAYER1, TUNNELLER<8)
	IF(PLAYER1, TIMER1>=600)
	NEXT_COMMAND_REUSABLE
	ADD_CREATURE_TO_LEVEL(PLAYER1,TUNNELLER,PLAYER1,1,6,0)
	NEXT_COMMAND_REUSABLE
	SET_TIMER(PLAYER1,TIMER1)
	ENDIF
ENDIF
ENDIF

IF(PLAYER0,PRISON>0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE1,1,1)
ENDIF

IF(PLAYER0,TEMPLE>0)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE2,2,1)
ENDIF

IF(PLAYER0, GAME_TURN>=5000)
    ADD_CREATURE_TO_POOL(VAMPIRE, 2)
ENDIF

IF(PLAYER0, GAME_TURN>=10000)
    ADD_CREATURE_TO_POOL(HORNY, 2)
ENDIF

IF(PLAYER0, GAME_TURN>=12000)
        QUICK_INFORMATION(9,"The heroes won't leave you alone to develop your dungeon forever! I feel that they will soon start to attack.",PLAYER0)
ENDIF

IF(PLAYER0, GAME_TURN>=14000)
        ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE,-1,DUNGEON,0,5,0)
        ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE,-2,DUNGEON,0,5,0)
ENDIF

IF(PLAYER0, GAME_TURN>=19000)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE,-1,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE,-2,1)
ENDIF

IF(PLAYER0, GAME_TURN>=24000)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE1,-1,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE1,-2,1)
ENDIF

IF(PLAYER0, GAME_TURN>=29000)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE2,-1,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE2,-2,1)
ENDIF

IF(PLAYER0, GAME_TURN>=32000)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE2,-1,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE2,-2,1)
ENDIF

IF(PLAYER0, GAME_TURN>=35000)
    ADD_TO_FLAG(PLAYER1,FLAG0,1)
ENDIF

IF(PLAYER0, GAME_TURN>=39000)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE3,-1,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE4,-2,1)
ENDIF

IF(PLAYER0, GAME_TURN>=43000)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE4,-1,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE5,-2,1)
ENDIF

IF(PLAYER0, GAME_TURN>=47000)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE5,-1,1)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE6,-2,1)
ENDIF

IF(PLAYER0, TOTAL_CREATURES>=25)
    ADD_TO_FLAG(PLAYER1,FLAG0,1)
ENDIF


IF(PLAYER1,FLAG0==1)
  CHANGE_SLAB_TYPE(41,59,PATH)
    CHANGE_SLAB_TYPE(42,59,PATH)
    CHANGE_SLAB_TYPE(43,59,PATH)
    CHANGE_SLAB_TYPE(41,60,PATH)
    CHANGE_SLAB_TYPE(42,60,PATH)
    CHANGE_SLAB_TYPE(43,60,PATH)
    CHANGE_SLAB_OWNER(41,58,PLAYER1)
    CHANGE_SLAB_TYPE(41,58,BRIDGE_FRAME)
     CHANGE_SLAB_OWNER(43,58,PLAYER1)
    CHANGE_SLAB_TYPE(43,58,BRIDGE_FRAME)
    CHANGE_SLAB_OWNER(42,58,PLAYER1)
    CHANGE_SLAB_TYPE(42,58,BRIDGE_FRAME)
    CHANGE_SLAB_TYPE(42,59,PATH)
    CHANGE_SLAB_OWNER(41,59,PLAYER1)
    CHANGE_SLAB_TYPE(41,59,BRIDGE_FRAME)
    CHANGE_SLAB_OWNER(42,59,PLAYER1)
    CHANGE_SLAB_TYPE(42,59,BRIDGE_FRAME)
    CHANGE_SLAB_OWNER(43,59,PLAYER1)
    CHANGE_SLAB_TYPE(43,59,BRIDGE_FRAME)
    CHANGE_SLAB_OWNER(41,60,PLAYER1)
    CHANGE_SLAB_TYPE(41,60,BRIDGE_FRAME)
    CHANGE_SLAB_OWNER(42,60,PLAYER1)
    CHANGE_SLAB_TYPE(42,60,BRIDGE_FRAME)
    CHANGE_SLAB_OWNER(43,60,PLAYER1)
    CHANGE_SLAB_TYPE(43,60,BRIDGE_FRAME)
    CHANGE_SLAB_OWNER(41,61,PLAYER1)
    CHANGE_SLAB_TYPE(41,61,BRIDGE_FRAME)
    CHANGE_SLAB_OWNER(42,61,PLAYER1)
    CHANGE_SLAB_TYPE(42,61,BRIDGE_FRAME)
    CHANGE_SLAB_OWNER(43,61,PLAYER1)
    CHANGE_SLAB_TYPE(43,61,BRIDGE_FRAME)
        QUICK_INFORMATION(7,"Beware, Blue just built a bridge to attack you!",PLAYER0)
	ROOM_AVAILABLE(ALL_PLAYERS, BRIDGE, 1, 1)
ENDIF

IF(PLAYER0,TOTAL_CREATURES>=35)
    QUICK_INFORMATION(2,"You've got so many creatures! Now the function of prison and torture room have disappeared!",PLAYER0)
    NEXT_COMMAND_REUSABLE
SET_CREATURE_TENDENCIES(PLAYER0,IMPRISON,0)
    SET_GAME_RULE(PrisonSkeletonChance,0)
    SET_GAME_RULE(GhostConvertChance,0)
    SET_GAME_RULE(TortureConvertChance,0)
ENDIF

IF_ACTION_POINT(3,PLAYER0)
    NEXT_COMMAND_REUSABLE
	SET_CREATURE_TENDENCIES(PLAYER0,IMPRISON,0)
    SET_GAME_RULE(GhostConvertChance,0)
    SET_GAME_RULE(TortureConvertChance,0)
MAGIC_AVAILABLE(PLAYER0, POWER_HAND, 0, 0)
        QUICK_INFORMATION(3,"You've stepped into the castle of the King, and there's no way to retreat(you can no longer pick up your creatures from battle), it's time to gather your army for the final battle!",PLAYER0)
       PLAY_MESSAGE(PLAYER0,SOUND,871)
ENDIF

IF(PLAYER_GOOD,DUNGEON_DESTROYED==0)

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

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

    IF_ACTION_POINT(6,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE4,6,1)
    ENDIF

    IF_ACTION_POINT(7,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE4,7,1)
    ENDIF

    IF_ACTION_POINT(8,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE5,8,1)
    ENDIF

    IF_ACTION_POINT(9,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE5,9,1)
    ENDIF

    IF_ACTION_POINT(10,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE6,10,1)
    ENDIF

    IF_ACTION_POINT(11,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE6,11,1)
    ENDIF

    IF_ACTION_POINT(12,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE7,12,1)
    ENDIF

    IF_ACTION_POINT(13,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE7,13,1)
    ENDIF

    IF_ACTION_POINT(14,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE8,14,1)
    ENDIF

    IF_ACTION_POINT(15,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE8,15,1)
    ENDIF

    IF_ACTION_POINT(16,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE9,16,1)
    ENDIF

    IF_ACTION_POINT(17,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,WAVE9,17,1)
    ENDIF

    IF_ACTION_POINT(18,PLAYER0)
        ADD_PARTY_TO_LEVEL(PLAYER_GOOD,LORD,PLAYER_GOOD,1)
        SET_FLAG(PLAYER_GOOD,FLAG0,1)
        QUICK_OBJECTIVE(4,"Your invasion to his land finally made the King of this dungeon very furious and made him come to finish you off by himself! ",PLAYER0)
    ENDIF

ENDIF

 IF(PLAYER_GOOD,FLAG0==1)
    IF(PLAYER_GOOD,KNIGHT==0)
        IF(PLAYER_GOOD,DUNGEON_DESTROYED==1)
              QUICK_OBJECTIVE(5,"The King dropped dead and his heart is destroyed. Is it all finished?",PLAYER0)
         SET_TIMER(PLAYER_GOOD,TIMER1)
        ENDIF
    ENDIF
ENDIF

IF(PLAYER_GOOD, TIMER1>=200)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,BOSS,27,1)
    SET_TIMER(PLAYER_GOOD,TIMER2)
    SET_FLAG(PLAYER_GOOD,FLAG0,2)
    QUICK_OBJECTIVE(6,"No, the King has come back, and this time he wears golden armour and gains much stronger power! He is also calling for all the remaining hero armies for reinforcement. Defeat him as soon as possible!",PLAYER0)
ENDIF


IF(PLAYER_GOOD, TIMER1>=300)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),19,1,10,0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),20,1,10,0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),21,1,10,0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),22,1,10,0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),23,1,10,0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),24,1,10,0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),25,1,10,0)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),26,1,10,0)
    SET_TIMER(PLAYER_GOOD,TIMER2)
ENDIF

IF(PLAYER_GOOD, TIMER1>=400)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),26,1,10,0)
    SET_TIMER(PLAYER_GOOD,TIMER3)
ENDIF

IF(PLAYER_GOOD, TIMER1>=600)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),20,1,10,0)
    SET_TIMER(PLAYER_GOOD,TIMER4)
ENDIF

IF(PLAYER_GOOD, TIMER1>=800)
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),25,1,10,0)
    SET_TIMER(PLAYER_GOOD,TIMER5)
ENDIF

IF(PLAYER_GOOD, TIMER1>=1000)
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),21,1,10,0)
    SET_TIMER(PLAYER_GOOD,TIMER6)
ENDIF

IF(PLAYER_GOOD, TIMER1>=1200)
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),24,1,10,0)
    SET_TIMER(PLAYER_GOOD,TIMER7)
ENDIF

IF(PLAYER_GOOD, TIMER1>=1400)
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),22,1,10,0)
    SET_TIMER(PLAYER2,TIMER1)
ENDIF

IF(PLAYER_GOOD, TIMER1>=1600)
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),23,1,10,0)
    SET_TIMER(PLAYER2,TIMER2)
ENDIF

IF(PLAYER_GOOD, TOTAL_CREATURES<=30)
IF(PLAYER_GOOD,AVATAR>0)
IF(PLAYER_GOOD, TIMER2>=1600)
	NEXT_COMMAND_REUSABLE
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),19,1,10,0)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER_GOOD,TIMER2)
ENDIF

IF(PLAYER_GOOD, TIMER3>=1600)
	NEXT_COMMAND_REUSABLE
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),26,1,10,0)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER_GOOD,TIMER3)
ENDIF

IF(PLAYER_GOOD, TIMER4>=1600)
	NEXT_COMMAND_REUSABLE
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),20,1,10,0)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER_GOOD,TIMER4)
ENDIF

IF(PLAYER_GOOD, TIMER5>=1600)
	NEXT_COMMAND_REUSABLE
	ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),25,1,10,0)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER_GOOD,TIMER5)

IF(PLAYER_GOOD, TIMER6>=1600)
    NEXT_COMMAND_REUSABLE
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),21,1,10,0)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER_GOOD,TIMER6)
ENDIF

IF(PLAYER_GOOD, TIMER7>=1600)
    NEXT_COMMAND_REUSABLE
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),24,1,10,0)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER_GOOD,TIMER7)
ENDIF

IF(PLAYER2, TIMER1>=1600)
    NEXT_COMMAND_REUSABLE
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),22,1,10,0)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER2,TIMER1)
ENDIF

IF(PLAYER2, TIMER2>=1600)
    NEXT_COMMAND_REUSABLE
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,DRAWFROM(BARBARIAN,FAIRY,WIZARD,SAMURAI,GIANT),23,1,10,0)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER2,TIMER2)
ENDIF

ENDIF
ENDIF
ENDIF

IF(PLAYER_GOOD,FLAG0==2)
    IF(PLAYER_GOOD,TOTAL_CREATURES==0)
        QUICK_OBJECTIVE(8,"All the humans in this land are dead. Oh, congratulations, Keeper! You are the modern ruler of this land. Thank you for playing this campaign.",PLAYER0)
	MAGIC_AVAILABLE(PLAYER0, POWER_HAND, 1, 1)
        PLAY_MESSAGE(PLAYER0,SPEECH,109)
        WIN_GAME
    ENDIF
ENDIF


