REM ********************************************
REM
REM Script for DRAGONPEAK (205)
REM
REM ********************************************

REM AUTHOR:FalconX1X
REM EDITOR:Official
REM DESCRIPTION: A old legendary dragon has got dragonslayers on his neck and needs your help to take out the hero scum.

SET_GENERATE_SPEED(900)
START_MONEY(PLAYER0,7000)

MAX_CREATURES(PLAYER0,20)

ADD_CREATURE_TO_POOL(SKELETON,15)
ADD_CREATURE_TO_POOL(TROLL,10)
ADD_CREATURE_TO_POOL(ORC,15)
ADD_CREATURE_TO_POOL(DEMONSPAWN,15)
ADD_CREATURE_TO_POOL(BILE_DEMON,5)
ADD_CREATURE_TO_POOL(SORCEROR,10)
ADD_CREATURE_TO_POOL(HELL_HOUND,5)
ADD_CREATURE_TO_POOL(TENTACLE,5)

CREATURE_AVAILABLE(PLAYER0,SKELETON,1,1)
CREATURE_AVAILABLE(PLAYER0,TROLL,1,1)
CREATURE_AVAILABLE(PLAYER0,ORC,1,1)
CREATURE_AVAILABLE(PLAYER0,DEMONSPAWN,1,1)
CREATURE_AVAILABLE(PLAYER0,BILE_DEMON,1,1)
CREATURE_AVAILABLE(PLAYER0,SORCEROR,1,1)
CREATURE_AVAILABLE(PLAYER0,HELL_HOUND,1,1)
CREATURE_AVAILABLE(PLAYER0,TENTACLE,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,1)
ROOM_AVAILABLE(PLAYER0,BARRACKS,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)

DOOR_AVAILABLE(PLAYER0,BRACED,1,0)
DOOR_AVAILABLE(PLAYER0,STEEL,1,0)

TRAP_AVAILABLE(PLAYER0,ALARM,1,0)
TRAP_AVAILABLE(PLAYER0,POISON_GAS,1,0)
TRAP_AVAILABLE(PLAYER0,LIGHTNING,1,0)

MAGIC_AVAILABLE(PLAYER0,POWER_HAND,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_SLAP,1,1)
MAGIC_AVAILABLE(PLAYER0,POWER_OBEY,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CALL_TO_ARMS,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_SPEED,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_HOLD_AUDIENCE,1,0)
MAGIC_AVAILABLE(PLAYER0,POWER_CAVE_IN,1,0)

SET_CREATURE_MAX_LEVEL(PLAYER0,DEMONSPAWN,10)
SET_CREATURE_HEALTH(DRAGON,1000)
SET_CREATURE_ARMOUR(DRAGON,130)
SET_CREATURE_STRENGTH(DRAGON,190)

QUICK_INFORMATION(1,"A legendary dragon dwell in this realm, he has lived here for thousands years, but now his existence is threatend by the three brother lords of the land. This foolish noblemens has big plans to slay the beast and get famous for the deed.")

IF(PLAYER0,GAME_TURN > 300)
QUICK_OBJECTIVE(8,"To end with the dragon, noblemens have hired hardy dragonslayers and adventurers, who wants the dragons head over the fireplace. Prevent this to happening, and make sure you give this dumb noblemens a lesson in evil !",PLAYER0)
ENDIF

CREATE_PARTY(THIEFS)
    ADD_TO_PARTY(THIEFS,THIEF,5,300,STEAL_GOLD,0)
    ADD_TO_PARTY(THIEFS,THIEF,5,300,STEAL_GOLD,0)
    ADD_TO_PARTY(THIEFS,MONK,5,700,DEFEND_PARTY,0)
    ADD_TO_PARTY(THIEFS,WIZARD,5,800,STEAL_SPELLS,0)

CREATE_PARTY(DRAGONSLAYERS)
    ADD_TO_PARTY(DRAGONSLAYERS,DWARFA,8,700,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DRAGONSLAYERS,DWARFA,8,700,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DRAGONSLAYERS,GIANT,6,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DRAGONSLAYERS,GIANT,6,400,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DRAGONSLAYERS,BARBARIAN,7,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DRAGONSLAYERS,BARBARIAN,7,800,ATTACK_ENEMIES,0)

CREATE_PARTY(DESTROYERS)
    ADD_TO_PARTY(DESTROYERS,DWARFA,5,500,ATTACK_ROOMS,0)
    ADD_TO_PARTY(DESTROYERS,DWARFA,5,500,ATTACK_ROOMS,0)
    ADD_TO_PARTY(DESTROYERS,DWARFA,5,500,ATTACK_ROOMS,0)
    ADD_TO_PARTY(DESTROYERS,MONK,4,600,ATTACK_ROOMS,0)
    ADD_TO_PARTY(DESTROYERS,GIANT,4,600,ATTACK_ROOMS,0)
    ADD_TO_PARTY(DESTROYERS,GIANT,4,600,ATTACK_ROOMS,0)

CREATE_PARTY(ADVENTURERS)
    ADD_TO_PARTY(ADVENTURERS,DWARFA,7,100,STEAL_GOLD,0)
    ADD_TO_PARTY(ADVENTURERS,DWARFA,7,100,STEAL_GOLD,0)
    ADD_TO_PARTY(ADVENTURERS,DWARFA,7,100,STEAL_GOLD,0)
    ADD_TO_PARTY(ADVENTURERS,THIEF,6,500,STEAL_SPELLS,0)
    ADD_TO_PARTY(ADVENTURERS,THIEF,6,500,STEAL_SPELLS,0)
    ADD_TO_PARTY(ADVENTURERS,WIZARD,8,1000,STEAL_SPELLS,0)
    ADD_TO_PARTY(ADVENTURERS,WIZARD,8,1000,STEAL_SPELLS,0)

CREATE_PARTY(ELITE_SLAYERS)
    ADD_TO_PARTY(ELITE_SLAYERS,DWARFA,9,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ELITE_SLAYERS,DWARFA,9,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ELITE_SLAYERS,THIEF,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ELITE_SLAYERS,THIEF,10,800,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(ELITE_SLAYERS,FAIRY,8,800,DEFEND_PARTY,0)
    ADD_TO_PARTY(ELITE_SLAYERS,BARBARIAN,10,800,DEFEND_PARTY,0)

CREATE_PARTY(DEMONSLAYERS)
    ADD_TO_PARTY(DEMONSLAYERS,DWARFA,10,1000,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DEMONSLAYERS,DWARFA,10,1000,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DEMONSLAYERS,MONK,10,1000,DEFEND_PARTY,0)
    ADD_TO_PARTY(DEMONSLAYERS,SAMURAI,10,1500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DEMONSLAYERS,SAMURAI,10,1500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DEMONSLAYERS,SAMURAI,10,1500,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(DEMONSLAYERS,WITCH,10,1500,ATTACK_ENEMIES,0)

CREATE_PARTY(FIRST_LORD)
    ADD_TO_PARTY(FIRST_LORD,KNIGHT,6,1000,ATTACK_DUNGEON_HEART,0)
    ADD_TO_PARTY(FIRST_LORD,BARBARIAN,5,800,DEFEND_PARTY,0)
    ADD_TO_PARTY(FIRST_LORD,BARBARIAN,5,800,DEFEND_PARTY,0)
    ADD_TO_PARTY(FIRST_LORD,GIANT,5,800,DEFEND_PARTY,0)
    ADD_TO_PARTY(FIRST_LORD,MONK,4,900,DEFEND_PARTY,0)

CREATE_PARTY(SECOND_LORD)
    ADD_TO_PARTY(SECOND_LORD,DWARFA,10,1000,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(SECOND_LORD,DWARFA,10,1000,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(SECOND_LORD,DWARFA,10,1000,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(SECOND_LORD,MONK,10,1500,DEFEND_PARTY,0)
    ADD_TO_PARTY(SECOND_LORD,KNIGHT,10,1000,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(SECOND_LORD,GIANT,10,1000,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(SECOND_LORD,GIANT,10,1000,ATTACK_ENEMIES,0)

CREATE_PARTY(FINAL_LORD)
    ADD_TO_PARTY(FINAL_LORD,AVATAR,5,3000,ATTACK_ENEMIES,0)
    ADD_TO_PARTY(FINAL_LORD,SAMURAI,10,1000,DEFEND_PARTY,0)
    ADD_TO_PARTY(FINAL_LORD,SAMURAI,10,1000,DEFEND_PARTY,0)
    ADD_TO_PARTY(FINAL_LORD,BARBARIAN,10,600,DEFEND_PARTY,0)
    ADD_TO_PARTY(FINAL_LORD,BARBARIAN,10,600,DEFEND_PARTY,0)
    ADD_TO_PARTY(FINAL_LORD,WIZARD,8,800,DEFEND_PARTY,0)
    ADD_TO_PARTY(FINAL_LORD,GIANT,10,1000,DEFEND_PARTY,0)

IF_ACTION_POINT(1,PLAYER0)
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,THIEF,1,3,2,200)
ENDIF

IF_ACTION_POINT(2,PLAYER0)
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,ARCHER,2,3,2,200)
ENDIF

IF_ACTION_POINT(3,PLAYER0)
    ADD_CREATURE_TO_LEVEL(PLAYER_GOOD,WITCH,3,2,1,300)
ENDIF

SET_TIMER(PLAYER_GOOD,TIMER0)
SET_TIMER(PLAYER_GOOD,TIMER1)

IF(PLAYER_GOOD,TIMER0 >= 8000)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,THIEFS,-2,ACTION_POINT,4,5,500)
ENDIF

IF(PLAYER_GOOD,TIMER0 >= 12000)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,DRAGONSLAYERS,-3,DUNGEON,0,4,500)
ENDIF

IF(PLAYER_GOOD,TIMER0 >= 16000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,THIEFS,-3,2)
ENDIF

IF(PLAYER_GOOD,TIMER0 >= 20000)
    ADD_TUNNELLER_PARTY_TO_LEVEL(PLAYER_GOOD,FIRST_LORD,-1,DUNGEON_HEART,0,7,700)
    IF(PLAYER_GOOD,KNIGHT == 0)
        QUICK_OBJECTIVE(2,"The youngest lord is slayed,only two left",PLAYER0)
    ENDIF
ENDIF

IF(PLAYER_GOOD,TIMER0 >= 26000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ADVENTURERS,-3,1)
ENDIF

IF(PLAYER_GOOD,TIMER0 >= 30000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,DESTROYERS,-1,1)
ENDIF

IF(PLAYER_GOOD,TIMER0 >= 33000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ADVENTURERS,-2,1)
ENDIF

IF(PLAYER_GOOD,TIMER0 >= 36000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ELITE_SLAYERS,-2,1)
ENDIF

IF(PLAYER_GOOD,TIMER0 >= 38000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,DESTROYERS,-3,2)
ENDIF

IF(PLAYER_GOOD,TIMER0 >= 42000)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,SECOND_LORD,-1,1)
    ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ELITE_SLAYERS,-3,1)
    IF(PLAYER_GOOD,KNIGHT == 0)
QUICK_OBJECTIVE(3,"Good Work ! You have taken the middle brothers head and put it on a pole. That should keep the stupid heroes away from your dungeon ! At least for a while.",PLAYER0)
    ENDIF
ENDIF

IF(PLAYER_GOOD,TIMER1 >= 20000)
    IF(PLAYER_GOOD,TOTAL_CREATURES <= 0)
        QUICK_INFORMATION(4,"You have killed all the remaining heroes in this realm, and the news of the two young lords deaths has now arrived to the world above.")
        SET_TIMER(PLAYER_GOOD,TIMER2)
        IF(PLAYER_GOOD,TIMER2 >= 500)
QUICK_OBJECTIVE(9,"Soon you will have a full scale invasion of heroes on your neck, the great lord wants revenge for his fallen brothers ! Prepare yourself keeper... ",PLAYER0)
        ENDIF
        IF(PLAYER_GOOD,TIMER2 >= 3000)
            ADD_PARTY_TO_LEVEL(PLAYER_GOOD,FINAL_LORD,-1,1)
            ADD_PARTY_TO_LEVEL(PLAYER_GOOD,ADVENTURERS,-3,1)
            ADD_PARTY_TO_LEVEL(PLAYER_GOOD,DEMONSLAYERS,-2,1)
            ADD_PARTY_TO_LEVEL(PLAYER_GOOD,DESTROYERS,-1,2)
            QUICK_OBJECTIVE(5,"Beware ! The Big brother is here !",PLAYER0)
            IF(PLAYER_GOOD,AVATAR == 0)
                QUICK_OBJECTIVE(6,"You have slaughtered the big brother and saved the old dragons life. Talk about evil !",PLAYER0)
                WIN_GAME
            ENDIF
        ENDIF
    ENDIF
ENDIF

IF(PLAYER0,DRAGON == 0)
    LOSE_GAME
    QUICK_OBJECTIVE(7,"The old dragon is slain, you have failed your task keeper.",PLAYER0)
ENDIF
