REM ****************************************************************************
REM  Campaigns Consolidation Project for KeeperFX strategy game.
REM ****************************************************************************
REM  Script for Level Mirthshire
REM  Campaign: DK Original
REM  Authors:  based on Bullfrog script
REM            KeeperFX CCP Team
REM  Date:     17 Dec 1996 - 11 Feb 2011
REM  Copying and copyrights:
REM    This program is free software; you can redistribute it and/or modify
REM    it under the terms of the GNU General Public License as published by
REM    the Free Software Foundation; either version 2 of the License, or
REM    (at your option) any later version.
REM ****************************************************************************

REM Nothing new for the player

SET_GENERATE_SPEED(500)
MAX_CREATURES(PLAYER0,18)
START_MONEY(PLAYER0,7500)

ADD_CREATURE_TO_POOL(HELL_HOUND,11)
ADD_CREATURE_TO_POOL(TENTACLE,15)
ADD_CREATURE_TO_POOL(SORCEROR,7)
ADD_CREATURE_TO_POOL(BILE_DEMON,9)
ADD_CREATURE_TO_POOL(DARK_MISTRESS,15)
ADD_CREATURE_TO_POOL(DRAGON,5)
ADD_CREATURE_TO_POOL(VAMPIRE,3)
ADD_CREATURE_TO_POOL(ORC,30)

REM Creature availability
CREATURE_AVAILABLE(PLAYER0,HELL_HOUND,1,1)
CREATURE_AVAILABLE(PLAYER0,TENTACLE,1,1)
CREATURE_AVAILABLE(PLAYER0,SORCEROR,1,1)
CREATURE_AVAILABLE(PLAYER0,BILE_DEMON,1,1)
CREATURE_AVAILABLE(PLAYER0,DARK_MISTRESS,1,1)
CREATURE_AVAILABLE(PLAYER0,DRAGON,1,1)
CREATURE_AVAILABLE(PLAYER0,VAMPIRE,1,1)
CREATURE_AVAILABLE(PLAYER0,ORC,1,1)

REM Room availability
ROOM_AVAILABLE(PLAYER0,TREASURE,1,1)
ROOM_AVAILABLE(PLAYER0,LAIR,1,1)
ROOM_AVAILABLE(PLAYER0,GARDEN,1,1)
ROOM_AVAILABLE(PLAYER0,TRAINING,1,1)
ROOM_AVAILABLE(PLAYER0,RESEARCH,1,1)
ROOM_AVAILABLE(PLAYER0,WORKSHOP,1,0)
ROOM_AVAILABLE(PLAYER0,BARRACKS,1,0)
ROOM_AVAILABLE(PLAYER0,GUARD_POST,1,0)
ROOM_AVAILABLE(PLAYER0,PRISON,1,0)
ROOM_AVAILABLE(PLAYER0,TORTURE,1,0)
ROOM_AVAILABLE(PLAYER0,SCAVENGER,1,0)
ROOM_AVAILABLE(PLAYER0,TEMPLE,1,0)
ROOM_AVAILABLE(PLAYER0,GRAVEYARD,1,0)

REM Spells availability
MAGIC_AVAILABLE(PLAYER0,POWER_HAND,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_SLAP,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_CAVE_IN,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_SPEED,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_IMP,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_PROTECT,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_LIGHTNING,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CONCEAL,1,0)
MAGIC_AVAILABLE(pLAYER0,POWER_DESTROY_WALLS,1,0)

REM Doors and traps availability
TRAP_AVAILABLE(ALL_PLAYERS,ALARM,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,POISON_GAS,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,LAVA,1,0)
DOOR_AVAILABLE(ALL_PLAYERS,STEEL,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,BOULDER,1,0)
DOOR_AVAILABLE(ALL_PLAYERS,MAGIC,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,LIGHTNING,1,0)
TRAP_AVAILABLE(ALL_PLAYERS,WORD_OF_POWER,1,0)
        
REM Timer lists
REM PLAYER0,TIMER0    HP9
REM PLAYER0,TIMER1    HP10
REM PLAYER0,TIMER2    HP11
REM PLAYER0,TIMER3    HP12
REM PLAYER0,TIMER4    HP13
REM PLAYER0,TIMER5    HP14
REM PLAYER0,TIMER6    LANDLORD

CREATE_PARTY(ONE)
    ADD_TO_PARTY(ONE,THIEF,2,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ONE,THIEF,2,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ONE,THIEF,2,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ONE,ARCHER,3,500,ATTACK_ENEMIES,0)

CREATE_PARTY(TWO)
    ADD_TO_PARTY(TWO,ARCHER,3,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(TWO,ARCHER,3,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(TWO,ARCHER,3,500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(TWO,ARCHER,3,500,ATTACK_ENEMIES,0)

CREATE_PARTY(THREE)
    ADD_TO_PARTY(THREE,DWARFA,3,400,DEFEND_PARTY,0)
    ADD_TO_PARTY(THREE,DWARFA,3,400,STEAL_GOLD,0)
    ADD_TO_PARTY(THREE,WITCH,5,600,ATTACK_ENEMIES,0)

CREATE_PARTY(FOUR)
    ADD_TO_PARTY(FOUR,BARBARIAN,5,600,DEFEND_PARTY,0) 
    ADD_TO_PARTY(FOUR,BARBARIAN,5,600,DEFEND_PARTY,0) 
    ADD_TO_PARTY(FOUR,GIANT,5,600,ATTACK_ROOMS,0)    
    ADD_TO_PARTY(FOUR,GIANT,5,600,ATTACK_ROOMS,0) 

CREATE_PARTY(FIVE)
    ADD_TO_PARTY(FIVE,WITCH,6,1000,STEAL_SPELLS,0)
    ADD_TO_PARTY(FIVE,WITCH,6,1000,STEAL_SPELLS,0)

CREATE_PARTY(SIX)
    ADD_TO_PARTY(SIX,MONK,3,1200,STEAL_GOLD,0)
    ADD_TO_PARTY(SIX,MONK,3,1200,STEAL_GOLD,0)
    ADD_TO_PARTY(SIX,MONK,3,1200,STEAL_GOLD,0)

CREATE_PARTY(BARBIES)
    ADD_TO_PARTY(BARBIES,BARBARIAN,5,1000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(BARBIES,BARBARIAN,5,1000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(BARBIES,BARBARIAN,5,1000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(BARBIES,BARBARIAN,5,1000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(BARBIES,BARBARIAN,5,1000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(BARBIES,BARBARIAN,5,1000,ATTACK_DUNGEON_HEART,0)

CREATE_PARTY(WITCHES)
    ADD_TO_PARTY(WITCHES,WITCH,9,1000,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(WITCHES,WITCH,9,1000,ATTACK_ENEMIES,0)


CREATE_PARTY(LANDLORD)
    ADD_TO_PARTY(LANDLORD,KNIGHT,6,2500,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(LANDLORD,ARCHER,5,800,DEFEND_PARTY,0)
    ADD_TO_PARTY(LANDLORD,ARCHER,5,800,DEFEND_PARTY,0)
    ADD_TO_PARTY(LANDLORD,ARCHER,5,800,DEFEND_PARTY,0)
    ADD_TO_PARTY(LANDLORD,ARCHER,5,800,DEFEND_PARTY,0)

REM ****************************************************************************

REM "The heroes no of your location and have moved quickly to mobilise forces against you. This should test your mettle."
DISPLAY_OBJECTIVE(122,PLAYER0)
REM "The earl of the land leads his remaining good discipels against you, prepare the chamber."
REM "The heroes on this level hold objects which may be of some interest to you at their guardposts. The prizes at stake may well be worth the resistance you face."

IF(PLAYER0,GAME_TURN >= 8500)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,-4,DUNGEON,0,1,250)
ENDIF

IF(PLAYER0,GAME_TURN >= 9000)
    DISPLAY_INFORMATION(124)
ENDIF

IF(PLAYER0,GAME_TURN >= 10050)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,THREE,-2,DUNGEON,0,1,250)
ENDIF

IF(PLAYER0,GAME_TURN >= 11500)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,-3,DUNGEON,0,1,250)
ENDIF

IF(PLAYER0,GAME_TURN >= 13250)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,TWO,-6,DUNGEON,0,1,250)
ENDIF

IF(PLAYER0,GAME_TURN >= 15500)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,-5,DUNGEON,0,1,250)
ENDIF

IF(PLAYER0,GAME_TURN >= 17050)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,THREE,-5,DUNGEON,0,1,250)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,FIVE,-4,DUNGEON,0,1,250)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,SIX,-3,DUNGEON,0,1,250)
ENDIF

IF(PLAYER0,GAME_TURN >= 18500)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,-1,DUNGEON,0,1,250)
ENDIF

IF(PLAYER0,GAME_TURN >= 20000)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,FOUR,-1,DUNGEON,0,1,250)
ENDIF

IF(PLAYER0,GAME_TURN >= 22500)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,ONE,-6,DUNGEON,0,1,250)
ENDIF

IF(PLAYER0,GAME_TURN >= 32000)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,BARBIES,-7,DUNGEON,0,6,250)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,WITCHES,-7,DUNGEON,0,6,250)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,LANDLORD,-7,DUNGEON,0,6,250)
    DISPLAY_OBJECTIVE(123,PLAYER0)
    IF(PLAYER_GOOD,KNIGHT == 0)
        DISPLAY_OBJECTIVE(170,PLAYER0)
        WIN_GAME
    ENDIF
ENDIF
