REM Action points:
REM 1 ENEMY CREATURE SPAWN POINT
REM 2 ENEMY CREATURE SPAWN POINT
REM 3 ENEMY CREATURE SPAWN POINT
REM 4 ENEMY CREATURE SPAWN POINT
REM 5 ENEMY CREATURE SPAWN POINT
REM 6 ENEMY CREATURE SPAWN POINT
REM 7 ENEMY CREATURE SPAWN POINT
REM 8 ENEMY CREATURE SPAWN POINT
REM 9 ENEMY CREATURE SPAWN POINT
REM 10 ENEMY CREATURE SPAWN POINT
REM 11 ENEMY CREATURE SPAWN POINT
REM 12 ENEMY CREATURE SPAWN POINT
REM 13 ENEMY CREATURE SPAWN POINT
REM 14 ENEMY CREATURE SPAWN POINT 
REM 15 ENEMY CREATURE SPAWN POINT
REM 16 ENEMY CREATURE SPAWN POINT
REM 17 ENEMY CREATURE SPAWN POINT
REM 18 ENEMY CREATURE SPAWN POINT
REM 19 ENEMY CREATURE SPAWN POINT
REM 20 ENEMY CREATURE SPAWN POINT
REM 11 ENEMY CREATURE SPAWN POINT
REM 12 ENEMY CREATURE SPAWN POINT
REM 13 ENEMY CREATURE SPAWN POINT
REM 14 ENEMY CREATURE SPAWN POINT
REM 15 ENEMY CREATURE SPAWN POINT
REM 16 ENEMY CREATURE SPAWN POINT
REM 17 ENEMY CREATURE SPAWN POINT
REM 18 ENEMY CREATURE SPAWN POINT
REM 19 ENEMY CREATURE SPAWN POINT
REM 20 ENEMY CREATURE SPAWN POINT
REM 21 ENEMY CREATURE SPAWN POINT
REM 22 ENEMY CREATURE SPAWN POINT
REM 23 ENEMY CREATURE SPAWN POINT
REM 24 ENEMY CREATURE SPAWN POINT
REM 25 ENEMY CREATURE SPAWN POINT
REM 26 ENEMY CREATURE SPAWN POINT
REM 27 ENEMY CREATURE SPAWN POINT
REM 28 ENEMY CREATURE SPAWN POINT
REM 29 ENEMY CREATURE SPAWN POINT
REM 30 ENEMY CREATURE SPAWN POINT
REM 31 ENEMY CREATURE SPAWN POINT
REM 32 ENEMY CREATURE SPAWN POINT
REM 33 PLAYER CREATURE-BOX SPAWN POINT 2
REM 34 PLAYER CREATURE-BOX SPAWN POINT 3
REM 35 PLAYER CREATURE-BOX SPAWN POINT 4
REM 36 PLAYER CREATURE-BOX SPAWN POINT 5
REM 37 PLAYER CREATURE-BOX SPAWN POINT 6
REM 38 PLAYER CREATURESPAWN POINT 2
REM 39 PLAYER CREATURESPAWN POINT 3
REM 30 PLAYER CREATURESPAWN POINT 4
REM 41 PLAYER CREATURESPAWN POINT 5
REM 42 PLAYER CREATURESPAWN POINT 6
REM 43 PLAYER DISPLAY CREATURE COST 1
REM 44 PLAYER DISPLAY CREATURE COST 2
REM 45 PLAYER DISPLAY CREATURE COST 3
REM 46 PLAYER DISPLAY CREATURE COST 4
REM 47 PLAYER DISPLAY CREATURE COST 5
REM 48 PLAYER DISPLAY CREATURE COST 6
REM 49 PLAYER IMP SPAWN
REM 50 HEART DAMAGE VISUAL EFFECT
REM 51 HEART DAMAGE VISUAL EFFECT
REM 52 HEART DAMAGE VISUAL EFFECT
REM 53 HEART DAMAGE VISUAL EFFECT
REM 54 HEART DAMAGE VISUAL EFFECT
REM 55 HEART DAMAGE VISUAL EFFECT
REM 56 HEART DAMAGE VISUAL EFFECT
REM 57 HEART DAMAGE VISUAL EFFECT
REM 58 HEART DAMAGE VISUAL EFFECT
REM 59 GOLD REWARD SURVIVED
REM 60 GOLD REWARD SURVIVED
REM 61 PLAYER CREATURE-BOX SPAWN POINT 1
REM 62 PLAYER CREATURESPAWN POINT 1
REM 63 BATTLEFIELD CREATURE COUNTER
REM 64 CREATURE KILLER AT WHITE HEART
REM 65 CREATURE SELECTOR COUNTER 
REM 66 CREATURE SELECTOR COUNTER
REM 67 GOLD REWARD SURVIVED
REM 68 GOLD REWARD SURVIVED
REM 69 GOLD REWARD SURVIVED
REM 70 GOLD REWARD SURVIVED
REM 71 GOLD REWARD SURVIVED
REM 72 GOLD REWARD SURVIVED
REM 73 GOLD REWARD SURVIVED
REM 74 CHANGE OWNER RANGE
REM 75 CHANGE OWNER RANGE
REM 76 CHANGE OWNER RANGE
REM 77 CHANGE OWNER RANGE
REM 78 CHANGE OWNER RANGE
REM 79 CHANGE OWNER RANGE
REM 80 GOLD REWARD ROUND

REM Flags:
REM PLAYER0,FLAG0 FIGHT_PHASE_ENDED
REM PLAYER0,FLAG1 PREPARNG_PHASE
REM PLAYER0,FLAG2 PLAYER COLLUM CREATURE RANDOM 
REM PLAYER0,FLAG3 PLAYER ROW CREATURE RANDOM
REM PLAYER0,FLAG4 CREATURE RANDOM
REM PLAYER0,FLAG5 DESTROY BOXES TIMER
REM PLAYER0,FLAG6 PLAYER COUNTER CREATURE 
REM PLAYER0,FLAG7 ROUND COUNTER 
REM PLAYER1,FLAG0 PREPARING COUNTDOWN 
REM PLAYER1,FLAG1 END_PASE
REM PLAYER1,FLAG2 PLAYER0 LEFT CREATURE COUNT 
REM PLAYER1,FLAG3 PLAYER0 RIGHT CREATURE COUNT 
REM PLAYER1,FLAG4 PLAYER1 CREATURE COUNT
REM PLAYER1,FLAG5 WINFLAG FOR COMPUTER
REM PLAYER1,FLAG6 WINFLAG FOR PLAYER
REM PLAYER1,FLAG7 RESET RESET-BOX AND FREE-IMP-BOX
REM PLAYER2,FLAG0 CREATURE GOLDPRICE COLLUM1
REM PLAYER2,FLAG1 CREATURE GOLDPRICE COLLUM2
REM PLAYER2,FLAG2 CREATURE GOLDPRICE COLLUM3
REM PLAYER2,FLAG3 CREATURE GOLDPRICE COLLUM4
REM PLAYER2,FLAG4 CREATURE GOLDPRICE COLLUM5
REM PLAYER2,FLAG5 CREATURE GOLDPRICE COLLUM6
REM PLAYER2,FLAG6 MONEY SPEND THIS ROUND(Unused)
REM PLAYER2,FLAG7 EMPTY
REM PLAYER3,FLAG0 CALCULATE DAMAGE TO PLAYER HEART
REM PLAYER3,FLAG1 CALCULATE DAMAGE TO ENEMY HEART
REM PLAYER3,FLAG2 SURVIVING CREATURE PLAYER REWARD
REM PLAYER3,FLAG3 PROCESS VISUAL DAMAGE TO PLAYER HEART
REM PLAYER3,FLAG4 PROCESS VISUAL DAMAGE TO ENEMY HEART

REM Timers:
REM PLAYER0,TIMER0 COUNTDOWN
REM PLAYER0,TIMER1 REMAKE BOX FLOOR TIMER 
REM PLAYER0,TIMER2 RESET REST-BOX FLOOR TIMER 
REM PLAYER0,TIMER3 WAIT TILL WHITE TELEPORT TIMER
REM PLAYER0,TIMER4 GOLD EFFECT TIMER

LEVEL_VERSION(1)
COMPUTER_PLAYER(PLAYER1, 0)
SET_COMPUTER_GLOBALS(PLAYER1, 0, 0, 0, 0, 0, 0, 0)
REM Creatur costs average salary(mostly, execpt: DRAGON, HORNY, VAMPIRE)
REM Player start money is average Creature Typ Cost = 6130
START_MONEY(PLAYER0, 2000)

IF(PLAYER0, BOX18_ACTIVATED == 1)
    REVEAL_MAP_RECT(PLAYER0, 133, 121, 70, 70)
    SET_FLAG(PLAYER0, BOX19_ACTIVATED, 1)
    REM Display count of placeable Creatures
    if(PLAYER0, FLAG7 == 1)
        NEXT_COMMAND_REUSABLE
        DISPLAY_VARIABLE(PLAYER0, FLAG6, 1, 0)
    ENDIF
    if(PLAYER0, FLAG7 == 2)
        NEXT_COMMAND_REUSABLE
        DISPLAY_VARIABLE(PLAYER0, FLAG6, 2, 0)
    ENDIF
    if(PLAYER0, FLAG7 == 3)
        NEXT_COMMAND_REUSABLE
        DISPLAY_VARIABLE(PLAYER0, FLAG6, 3, 0)
    ENDIF
    if(PLAYER0, FLAG7 == 4)
        NEXT_COMMAND_REUSABLE
        DISPLAY_VARIABLE(PLAYER0, FLAG6, 4, 0)
    ENDIF
    if(PLAYER0, FLAG7 == 5)
        NEXT_COMMAND_REUSABLE
        DISPLAY_VARIABLE(PLAYER0, FLAG6, 5, 0)
    ENDIF
    if(PLAYER0, FLAG7 == 6)
        NEXT_COMMAND_REUSABLE
        DISPLAY_VARIABLE(PLAYER0, FLAG6, 6, 0)
    ENDIF
    if(PLAYER0, FLAG7 == 7)
        NEXT_COMMAND_REUSABLE
        DISPLAY_VARIABLE(PLAYER0, FLAG6, 7, 0)
    ENDIF
    if(PLAYER0, FLAG7 == 8)
        NEXT_COMMAND_REUSABLE
        DISPLAY_VARIABLE(PLAYER0, FLAG6, 8, 0)
    ENDIF
    if(PLAYER0, FLAG7 == 9)
        NEXT_COMMAND_REUSABLE
        DISPLAY_VARIABLE(PLAYER0, FLAG6, 9, 0)
    ENDIF
    IF(PLAYER0, FLAG1 == 0)
        NEXT_COMMAND_REUSABLE
        HIDE_VARIABLE
    ENDIF
ENDIF

SET_FLAG(PLAYER0, FLAG0, 1)
SET_FLAG(PLAYER0, FLAG1, 1)
SET_FLAG(PLAYER0, FLAG4, 1)
SET_FLAG(PLAYER0, FLAG7, 1)
SET_FLAG(PLAYER1, FLAG0, 1)
SET_FLAG(PLAYER0, FLAG2, 4)
rem REST RESET-BOX TIMER
SET_FLAG(PLAYER1, FLAG7, 1)

REM row1
SET_BOX_TOOLTIP(0, "BILE DEMON")
SET_BOX_TOOLTIP(1, "BUG")
SET_BOX_TOOLTIP(2, "DARK MISTRESS")
SET_BOX_TOOLTIP(3, "DEMONSPAWN")
SET_BOX_TOOLTIP(4, "DRAGON")
SET_BOX_TOOLTIP(5, "DRUID")
REM row2
SET_BOX_TOOLTIP(6, "FLY")
SET_BOX_TOOLTIP(7, "GHOST")
SET_BOX_TOOLTIP(8, "HELL HOUND")
SET_BOX_TOOLTIP(9, "HORNY")
SET_BOX_TOOLTIP(10, "ORC")
SET_BOX_TOOLTIP(11, "SKELETON")
REM row3
SET_BOX_TOOLTIP(12, "WARLOCK")
SET_BOX_TOOLTIP(13, "SPIDER")
SET_BOX_TOOLTIP(14, "TENTACLE")
SET_BOX_TOOLTIP(15, "TIME MAGE")
SET_BOX_TOOLTIP(16, "TROLL")
SET_BOX_TOOLTIP(17, "VAMPIRE")

SET_BOX_TOOLTIP(18, "START GAME")
SET_BOX_TOOLTIP(19, "RESET ROUND, no money refund!")
SET_BOX_TOOLTIP(20, "FREE IMP")

QUICK_OBJECTIVE(1, "This is a rudimentary Auto Chess/Auto Battle implementation for Dungeon Keeper -Use the special boxes to select your creature. -Watch your gold, you receive a small amount back each round, and you get a bonus for every creature of yours that survives. -If you want to save gold or have none left, you can fill your battle lines with Imps using the special box. -Each surviving creature deals damage to the enemy heart. There are up to 9 rounds with an increasing number of creatures. -If both hearts are still standing after 9 rounds, the Keeper with the most victories wins. -The opponent receives and places their creatures completely randomly. -You can select from randomly chosen creatures each round (their level is set at the beginning of the game and does not change between rounds). -If you get stuck, you can restart the round using the special box, but note that you won't get back the gold you spent in that round.")

CONCEAL_MAP_RECT(PLAYER0, 133, 121, 100, 100, 1)
REVEAL_MAP_LOCATION(PLAYER0, PLAYER0, 18)
SET_CREATURE_INSTANCE(DRUID, 2, RANGED_HEAL, 2)
SET_CREATURE_INSTANCE(DRUID, 4, SLOW, 4)
SET_CREATURE_INSTANCE(DRUID, 5, RANGED_ARMOUR, 5)
SET_CREATURE_INSTANCE(GHOST, 5, RANGED_REBOUND, 5)
SET_CREATURE_INSTANCE(TIME_MAGE, 8, RANGED_SPEED, 6)
SET_CREATURE_INSTANCE(IMP, 1, NULL, 1)
MAGIC_AVAILABLE(PLAYER0, POWER_IMP, 0, 0)
MAGIC_AVAILABLE(PLAYER1, POWER_IMP, 0, 0)
MAGIC_AVAILABLE(PLAYER1, POWER_HAND, 0, 0)
MAGIC_AVAILABLE(PLAYER1, POWER_SLAP, 0, 0)
MAGIC_AVAILABLE(PLAYER0, POWER_POSSESS, 0, 0)
SET_FLAG(PLAYER0, FLAG5, 0)
SET_OBJECT_CONFIGURATION(SPECBOX_CUSTOM, DestroyOnLava, 1)
NEW_CREATURE_TYPE(IMP)
SET_CREATURE_PROPERTY(IMP, SPECIAL_DIGGER, 0)
NEXT_COMMAND_REUSABLE
KILL_CREATURE(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[64], 1)
SET_GAME_RULE(DungeonHeartHealHealth, 0)

REM Preparing phase
If(PLAYER0, FLAG1 == 1)
    rem NEXT_COMMAND_REUSABLE
    rem SET_CREATURE_CONFIGURATION(IMP, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(BILE_DEMON, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(BUG, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(DARK_MISTRESS, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(DEMONSPAWN, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(DRAGON, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(DRUID, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(FLY, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(GHOST, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(HELL_HOUND, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(HORNY, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(ORC, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(SKELETON, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(SORCEROR, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(SPIDER, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(TENTACLE, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(TIME_MAGE, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(TROLL, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(VAMPIRE, BaseSpeed, 0)
    NEXT_COMMAND_REUSABLE
    MAGIC_AVAILABLE(PLAYER0, POWER_HAND, 1, 1)
    NEXT_COMMAND_REUSABLE
    SET_GAME_RULE(BodyRemainsFor, 1)
    REM SPECIAL ROUND RESTART
    IF(PLAYER0, BOX19_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        USE_POWER(PLAYER_GOOD, POWER_HOLD_AUDIENCE, 1)
        NEXT_COMMAND_REUSABLE
        MOVE_CREATURE(PLAYER0, ANY_CREATURE, AT_ACTION_POINT[63], 20, PLAYER_GOOD, EFFECT_BALL_PUFF_RED)
        NEXT_COMMAND_REUSABLE
        MOVE_CREATURE(PLAYER1, ANY_CREATURE, AT_ACTION_POINT[63], 20, PLAYER_GOOD, EFFECT_BALL_PUFF_BLUE)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER1, FLAG4, 0)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 3)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX19_ACTIVATED, 2)
    ENDIF
    REM SPECIAL ADD FREE IMP
    IF(PLAYER0, BOX20_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 3)
        NEXT_COMMAND_REUSABLE
        ADD_CREATURE_TO_LEVEL(PLAYER0, IMP, 49, 1, 1, 0)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX20_ACTIVATED, 2)
    ENDIF
ENDIF

If(PLAYER0, FLAG0 > 0)
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_TYPE(40, 40, DRAPE_WALL, MATCH)
ENDIF

REM PREPARE phase
REM 4-1 Randomise Creature Boxes
IF(PLAYER0, FLAG4 == 1)
    IF(PLAYER0, FLAG2 == 4)
        NEXT_COMMAND_REUSABLE
        RANDOMISE_FLAG(PLAYER0, FLAG2, 3)
    ENDIF
    IF(PLAYER0, FLAG3 == 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG3, 0)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 2)
    ENDIF

    REM row1
    IF(PLAYER0, FLAG3 == 0)
        IF(PLAYER0, FLAG2 == 3)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 61, 0, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, BILE_DEMON, 62, 1, DRAWFROM(2 ~ 8), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG0, 1)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 1)
        IF(PLAYER0, FLAG2 == 3)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 33, 1, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, BUG, 38, 1, DRAWFROM(6 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG1, 1)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 2)
        IF(PLAYER0, FLAG2 == 3)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 34, 2, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, DARK_MISTRESS, 39, 1, DRAWFROM(4 ~ 8), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG2, 1)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 3)
        IF(PLAYER0, FLAG2 == 3)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 35, 3, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, DEMONSPAWN, 40, 1, DRAWFROM(4 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 4)
        IF(PLAYER0, FLAG2 == 3)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 36, 4, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, DRAGON, 41, 1, DRAWFROM(4 ~ 8), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG4, 1)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 5)
        IF(PLAYER0, FLAG2 == 3)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 37, 5, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, DRUID, 42, 1, DRAWFROM(3 ~ 8), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG5, 1)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF


    REM row2
    IF(PLAYER0, FLAG3 == 0)
        IF(PLAYER0, FLAG2 == 1)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 61, 6, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, FLY, 62, 1, DRAWFROM(6 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG0, 2)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 1)
        IF(PLAYER0, FLAG2 == 1)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 33, 7, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, GHOST, 38, 1, DRAWFROM(4 ~ 8), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG1, 2)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 2)
        IF(PLAYER0, FLAG2 == 1)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 34, 8, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, HELL_HOUND, 39, 1, DRAWFROM(5 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG2, 2)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 3)
        IF(PLAYER0, FLAG2 == 1)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 35, 9, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, HORNY, 40, 1, DRAWFROM(5 ~ 8), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG3, 2)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 4)
        IF(PLAYER0, FLAG2 == 1)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 36, 10, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, ORC, 41, 1, DRAWFROM(3 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG4, 2)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 5)
        IF(PLAYER0, FLAG2 == 1)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 37, 11, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, SKELETON, 42, 1, DRAWFROM(4 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG5, 2)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    REM row3
    IF(PLAYER0, FLAG3 == 0)
        IF(PLAYER0, FLAG2 == 2)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 61, 12, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, SORCEROR, 62, 1, DRAWFROM(4 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG0, 3)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 1)
        IF(PLAYER0, FLAG2 == 2)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 33, 13, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, SPIDER, 38, 1, DRAWFROM(4 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG1, 3)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 2)
        IF(PLAYER0, FLAG2 == 2)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 34, 14, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, TENTACLE, 39, 1, DRAWFROM(5 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG2, 3)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 3)
        IF(PLAYER0, FLAG2 == 2)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 35, 15, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, TIME_MAGE, 40, 1, DRAWFROM(4 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG3, 3)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 4)
        IF(PLAYER0, FLAG2 == 2)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 36, 16, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, TROLL, 41, 1, DRAWFROM(5 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG4, 3)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF

    IF(PLAYER0, FLAG3 == 5)
        IF(PLAYER0, FLAG2 == 2)
            NEXT_COMMAND_REUSABLE
            ADD_OBJECT_TO_LEVEL(SPECBOX_CUSTOM, 37, 17, PLAYER0)
            NEXT_COMMAND_REUSABLE
            ADD_CREATURE_TO_LEVEL(PLAYER_GOOD, VAMPIRE, 42, 1, DRAWFROM(4 ~ 10), 0)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER2, FLAG5, 3)
            NEXT_COMMAND_REUSABLE
            ADD_TO_FLAG(PLAYER0, FLAG3, 1)
            NEXT_COMMAND_REUSABLE
            SET_FLAG(PLAYER0, FLAG2, 4)
        ENDIF
    ENDIF
ENDIF

IF(PLAYER0, FLAG4 != 2)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER0, TIMER4)
ENDIF
IF(PLAYER0, TIMER4 > 25)
    REM row1
    REM BILE DEMON
    IF(PLAYER2, FLAG0 == 1)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 43, 250)
    ENDIF
    REM BUG
    IF(PLAYER2, FLAG1 == 1)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 44, 50)
    ENDIF
    REM DARK MISTRESS
    IF(PLAYER2, FLAG2 == 1)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 45, 450)
    ENDIF
    REM DEMONSPAWN
    IF(PLAYER2, FLAG3 == 1)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 46, 180)
    ENDIF
    REM DRAGON
    IF(PLAYER2, FLAG4 == 1)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 47, 700)
    ENDIF
    REM DRUID
    IF(PLAYER2, FLAG5 == 1)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 48, 350)
    ENDIF
    REM row2
    REM FLY
    IF(PLAYER2, FLAG0 == 2)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 43, 10)
    ENDIF
    REM GHOST
    IF(PLAYER2, FLAG1 == 2)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 44, 50)
    ENDIF
    REM HELL HOUND
    IF(PLAYER2, FLAG2 == 2)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 45, 170)
    ENDIF
    REM HORNY
    IF(PLAYER2, FLAG3 == 2)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 46, 1200)
    ENDIF
    REM ORC
    IF(PLAYER2, FLAG4 == 2)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 47, 200)
    ENDIF
    REM SKELETON
    IF(PLAYER2, FLAG5 == 2)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 48, 180)
    ENDIF

    REM row3
    REM WARLOCK
    IF(PLAYER2, FLAG0 == 3)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 43, 100)
    ENDIF
    REM SPIDER
    IF(PLAYER2, FLAG1 == 3)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 44, 80)
    ENDIF
    REM TENTACLE
    IF(PLAYER2, FLAG2 == 3)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 45, 110)
    ENDIF
    REM TIMEMAGE
    IF(PLAYER2, FLAG3 == 3)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 46, 420)
    ENDIF
    REM TROLL
    IF(PLAYER2, FLAG4 == 3)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 47, 130)
    ENDIF
    REM VAMPIRE
    IF(PLAYER2, FLAG5 == 3)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 48, 600)
    ENDIF
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER0, TIMER4)
ENDIF



REM 4-2 Activate Creature Boxes
IF(PLAYER0, FLAG4 == 2)
    REM row1
    REM BILE DEMON
    IF(PLAYER0, BOX0_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[79], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -250)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 250)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX0_ACTIVATED, 0)
    ENDIF
    REM BUG
    IF(PLAYER0, BOX1_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[78], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -50)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 50)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX1_ACTIVATED, 0)
    ENDIF
    REM DARK MISTRESS
    IF(PLAYER0, BOX2_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[77], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -450)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 450)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX2_ACTIVATED, 0)
    ENDIF
    REM DEMONSPAWN
    IF(PLAYER0, BOX3_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[76], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -180)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 180)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX3_ACTIVATED, 0)
    ENDIF
    REM DRAGON
    IF(PLAYER0, BOX4_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[75], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -700)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 700)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX4_ACTIVATED, 0)
    ENDIF
    REM DRUID
    IF(PLAYER0, BOX5_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[74], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -350)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 350)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX5_ACTIVATED, 0)
    ENDIF
    REM row2
    REM FLY
    IF(PLAYER0, BOX6_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[79], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -10)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 10)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX6_ACTIVATED, 0)
    ENDIF
    REM GHOST
    IF(PLAYER0, BOX7_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[78], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -50)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 50)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX7_ACTIVATED, 0)
    ENDIF
    REM HELL HOUND
    IF(PLAYER0, BOX8_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[77], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -170)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 170)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX8_ACTIVATED, 0)
    ENDIF
    REM HORNY
    IF(PLAYER0, BOX9_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[76], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -1200)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 1200)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX9_ACTIVATED, 0)
    ENDIF
    REM ORC
    IF(PLAYER0, BOX10_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[75], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -200)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 200)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX10_ACTIVATED, 0)
    ENDIF
    REM SKELETON   
    IF(PLAYER0, BOX11_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[74], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -180)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 180)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX11_ACTIVATED, 0)
    ENDIF
    REM row3
    REM WARLOCK
    IF(PLAYER0, BOX12_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[79], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -100)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 100)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX12_ACTIVATED, 0)
    ENDIF
    REM SPIDER
    IF(PLAYER0, BOX13_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[78], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -80)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 80)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX13_ACTIVATED, 0)
    ENDIF
    REM TENTACLE
    IF(PLAYER0, BOX14_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[77], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -110)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 110)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX14_ACTIVATED, 0)
    ENDIF
    REM TIMEMAGE
    IF(PLAYER0, BOX15_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[76], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -420)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 420)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX15_ACTIVATED, 0)
    ENDIF
    REM TROLL
    IF(PLAYER0, BOX16_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[75], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -130)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 130)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX16_ACTIVATED, 0)
    ENDIF
    REM VAMPIRE
    IF(PLAYER0, BOX17_ACTIVATED == 1)
        NEXT_COMMAND_REUSABLE
        CHANGE_CREATURE_OWNER(ALL_PLAYERS, ANY_CREATURE, AT_ACTION_POINT[74], PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, -600)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER2, FLAG6, 600)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG4, 6)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX17_ACTIVATED, 0)
    ENDIF
    REM Replace Reset- and FREE-IMP-Box
    IF(PLAYER0, BOX19_ACTIVATED == 2)
        NEXT_COMMAND_REUSABLE
        ADD_OBJECT_TO_LEVEL_AT_POS(SPECBOX_CUSTOM, 115, 139, 19, PLAYER0)
        ADD_OBJECT_TO_LEVEL_AT_POS(SPECBOX_CUSTOM, 115, 145, 20, PLAYER0)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX19_ACTIVATED, 0)
    ENDIF
    IF(PLAYER0, BOX20_ACTIVATED == 2)
        NEXT_COMMAND_REUSABLE
        ADD_OBJECT_TO_LEVEL_AT_POS(SPECBOX_CUSTOM, 115, 145, 20, PLAYER0)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX20_ACTIVATED, 0)
    ENDIF
ENDIF

IF(PLAYER0, FLAG4 < 6)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER0, TIMER3)
ENDIF
IF(PLAYER0, TIMER3 > 10)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER0, FLAG4, 3)
ENDIF

REM 4-3 Remove the other Boxes and Creatrures
IF(PLAYER0, FLAG4 == 3)
    NEXT_COMMAND_REUSABLE
    USE_SPELL_ON_PLAYERS_CREATURES(PLAYER_GOOD, ANY_CREATURE, SPELL_TELEPORT)
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_TYPE(40, 46, LAVA, MATCH)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER0, FLAG5, 1)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER0, FLAG4, 4)
ENDIF

REM Timer to remake the floor
IF(PLAYER0, FLAG5 == 0)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER0, TIMER1)
ENDIF
IF(PLAYER0, TIMER1 > 5)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER0, FLAG5, 0)
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_TYPE(40, 46, PATH, MATCH)
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_OWNER(40, 46, PLAYER0, MATCH)
ENDIF

REM WTF
NEXT_COMMAND_REUSABLE
SET_FLAG(PLAYER1, FLAG2, 0)
NEXT_COMMAND_REUSABLE
SET_FLAG(PLAYER1, FLAG3, 1)


REM 4-4 Wait before continue
IF(PLAYER0, FLAG5 == 0)
    IF(PLAYER0, FLAG4 == 4)
        REM be sure to you have take away your creature
        NEXT_COMMAND_REUSABLE
        COUNT_CREATURES_AT_ACTION_POINT(65, PLAYER0, ANY_CREATURE, PLAYER1, FLAG2)
        NEXT_COMMAND_REUSABLE
        COUNT_CREATURES_AT_ACTION_POINT(66, PLAYER0, ANY_CREATURE, PLAYER1, FLAG3)
        REM WTF
        IF(PLAYER1, FLAG2 == PLAYER1, FLAG3)
            IF(PLAYER0, FLAG1 == 1)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG5, 1)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 5)
            ENDIF
        ENDIF
    ENDIF
ENDIF

REM 4-5 Place Enemy Creature
IF(PLAYER0, FLAG4 == 5)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER1, FLAG4, 0)
    NEXT_COMMAND_REUSABLE
    COMPUTE_FLAG(PLAYER1, FLAG4, SET, PLAYER1, TOTAL_CREATURES, 0)
    IF(PLAYER1, FLAG4 != PLAYER0, FLAG7)
        REM Round 1
        IF(PLAYER0, FLAG7 == 1)
            IF(PLAYER1, FLAG4 == 0)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, DARK_MISTRESS, DRUID, HELL_HOUND, BILE_DEMON, DARK_MISTRESS, BILE_DEMON, BILE_DEMON), DRAWFROM(FLY, GHOST, BUG, DEMONSPAWN, SPIDER, TROLL, HELL_HOUND), DRAWFROM(SORCEROR, ORC, TENTACLE, TIME_MAGE, SKELETON, ORC, SORCEROR, SKELETON)), DRAWFROM(DRAWFROM(1, 2, 3, 4, 5, 6, 7, 8), DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(4 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 > 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
        ENDIF
        REM Round 2
        IF(PLAYER0, FLAG7 == 2)
            IF(PLAYER1, FLAG4 == 0)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, GHOST, SORCEROR, DRUID, TIME_MAGE, DRUID), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(4 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 1)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, ORC, SKELETON, DEMONSPAWN, DRAGON, BUG, TROLL), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 > 1)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
        ENDIF

        REM Round 3
        IF(PLAYER0, FLAG7 == 3)
            IF(PLAYER1, FLAG4 == 0)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, ORC, SKELETON, DEMONSPAWN, DRAGON, ORC, TROLL), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 1)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, BUG, DARK_MISTRESS, DEMONSPAWN, DRAGON, DRUID), DRAWFROM(FLY, GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, SPIDER, TENTACLE, TIME_MAGE, TROLL, VAMPIRE)), DRAWFROM(DRAWFROM(1, 2, 3, 4, 5, 6, 7, 8), DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24), DRAWFROM(25, 26, 27, 28, 29, 30)), 1, DRAWFROM(5 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 2)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, GHOST, SORCEROR, DRUID, TIME_MAGE, DRUID), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(4 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 > 2)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
        ENDIF

        REM Round 4
        IF(PLAYER0, FLAG7 == 4)
            IF(PLAYER1, FLAG4 == 0)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, ORC, SKELETON, DEMONSPAWN, DRAGON, ORC, TROLL), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 1)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, BUG, DARK_MISTRESS, DEMONSPAWN, DRAGON, DRUID), DRAWFROM(FLY, GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, SPIDER, TENTACLE, TIME_MAGE, TROLL, VAMPIRE)), DRAWFROM(DRAWFROM(1, 2, 3, 4, 5, 6, 7, 8), DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24), DRAWFROM(25, 26, 27, 28, 29, 30)), 1, DRAWFROM(5 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 2)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, BUG, DARK_MISTRESS, DEMONSPAWN, DRAGON, DRUID), DRAWFROM(FLY, GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, SPIDER, TENTACLE, TIME_MAGE, TROLL, VAMPIRE)), DRAWFROM(DRAWFROM(1, 2, 3, 4, 5, 6, 7, 8), DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24), DRAWFROM(25, 26, 27, 28, 29, 30)), 1, DRAWFROM(5 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 3)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, GHOST, SORCEROR, DRUID, TIME_MAGE, DRUID), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(4 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 > 3)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
        ENDIF

        REM Round 5
        IF(PLAYER0, FLAG7 == 5)
            IF(PLAYER1, FLAG4 == 0)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, ORC, SKELETON, DEMONSPAWN, DRAGON, ORC, TROLL), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 1)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, BUG, DARK_MISTRESS, DEMONSPAWN, DRAGON, DRUID), DRAWFROM(FLY, GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, SPIDER, TENTACLE, TIME_MAGE, TROLL, VAMPIRE)), DRAWFROM(DRAWFROM(9, 10, 15, 16), DRAWFROM(17, 18, 23, 24)), 1, DRAWFROM(6 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 2)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(HELL_HOUND, SKELETON, DARK_MISTRESS, HORNY, HELL_HOUND, SPIDER, VAMPIRE, TENTACLE), DRAWFROM(DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24)), 1, DRAWFROM(5 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 3)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, BUG, DARK_MISTRESS, DEMONSPAWN, DRAGON, DRUID), DRAWFROM(FLY, GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, SPIDER, TENTACLE, TIME_MAGE, TROLL, VAMPIRE)), DRAWFROM(DRAWFROM(1, 2, 3, 4, 5, 6, 7, 8), DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24), DRAWFROM(25, 26, 27, 28, 29, 30)), 1, DRAWFROM(7 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 4)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, GHOST, SORCEROR, DRUID, TIME_MAGE, DRUID), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(4 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 > 4)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
        ENDIF

        REM Round 6
        IF(PLAYER0, FLAG7 == 6)
            IF(PLAYER1, FLAG4 == 0)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, ORC, SKELETON, DEMONSPAWN, DRAGON, ORC, TROLL), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 1)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, BUG, DARK_MISTRESS, DEMONSPAWN, DRAGON, DRUID), DRAWFROM(GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, TENTACLE, TIME_MAGE, VAMPIRE)), DRAWFROM(DRAWFROM(9, 10, 15, 16), DRAWFROM(17, 18, 23, 24)), 1, DRAWFROM(6 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 2)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(HELL_HOUND, SKELETON, DARK_MISTRESS, HORNY, HELL_HOUND, SPIDER, VAMPIRE, TENTACLE), DRAWFROM(DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24)), 1, DRAWFROM(5 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 3)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, DARK_MISTRESS, DRAGON, DRUID), DRAWFROM(FLY, GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, SPIDER, TIME_MAGE, TROLL, VAMPIRE)), DRAWFROM(DRAWFROM(1, 2, 3, 4, 5, 6, 7, 8), DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24), DRAWFROM(25, 26, 27, 28, 29, 30)), 1, DRAWFROM(7 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 4)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, DARK_MISTRESS, SORCEROR, DRUID, TIME_MAGE, DRUID), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(4 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 == 5)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, ORC, SKELETON, DEMONSPAWN, DRAGON, ORC, HORNY), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 > 5)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
        ENDIF

        REM Round 7
        IF(PLAYER0, FLAG7 == 7)
            REM TANK
            IF(PLAYER1, FLAG4 == 0)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, ORC, SKELETON, BILE_DEMON, DRAGON, ORC, HORNY), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM FRONT DAMAGE DEALER
            IF(PLAYER1, FLAG4 == 1)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(HELL_HOUND, SKELETON, DARK_MISTRESS, HORNY, HELL_HOUND, SPIDER, ORC, TROLL), DRAWFROM(DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24)), 1, DRAWFROM(5 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM FRONT SUPPORT
            IF(PLAYER1, FLAG4 == 2)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(TENTACLE, SPIDER), DRAWFROM(DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24)), 1, DRAWFROM(5 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANGED SUPPORT
            IF(PLAYER1, FLAG4 == 3)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, GHOST, SORCEROR, DRUID, TIME_MAGE, DRUID), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(4 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANGED DAMAGE DEALER         
            IF(PLAYER1, FLAG4 == 4)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, DARK_MISTRESS, SORCEROR), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(4 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANDOM             
            IF(PLAYER1, FLAG4 == 5)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, BUG, DARK_MISTRESS, DEMONSPAWN, DRAGON, DRUID), DRAWFROM(FLY, GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, SPIDER, TENTACLE, TIME_MAGE, TROLL, VAMPIRE)), DRAWFROM(DRAWFROM(1, 2, 3, 4, 5, 6, 7, 8), DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(4 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM TANK
            IF(PLAYER1, FLAG4 == 6)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, ORC, SKELETON, BILE_DEMON, DRAGON, ORC, HORNY), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 > 6)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
        ENDIF
        REM Round 8
        IF(PLAYER0, FLAG7 == 8)
            REM RANGED DAMAGE DEALER         
            IF(PLAYER1, FLAG4 == 0)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, DARK_MISTRESS, SORCEROR, DARK_MISTRESS, DARK_MISTRESS), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(4 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANGED SUPPORT
            IF(PLAYER1, FLAG4 == 1)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(GHOST, TIME_MAGE, VAMPIRE, GHOST, VAMPIRE, DRUID, TIME_MAGE, DRUID), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(5 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANDOM 
            IF(PLAYER1, FLAG4 == 2)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, DARK_MISTRESS, DEMONSPAWN, DRAGON, DRUID), DRAWFROM(GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, SPIDER, TENTACLE, TIME_MAGE, VAMPIRE)), DRAWFROM(DRAWFROM(1, 2, 3, 4, 5, 6, 7, 8), DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(6 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM TANK
            IF(PLAYER1, FLAG4 == 3)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, ORC, DRAGON, BILE_DEMON, DRAGON, ORC, HORNY), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM FRONT SUPPORT
            IF(PLAYER1, FLAG4 == 4)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(TENTACLE, SPIDER), DRAWFROM(DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24)), 1, DRAWFROM(5 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANDOM 
            IF(PLAYER1, FLAG4 == 5)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, DARK_MISTRESS, DEMONSPAWN, DRAGON, DRUID), DRAWFROM(GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, SPIDER, TENTACLE, TIME_MAGE, VAMPIRE)), DRAWFROM(DRAWFROM(1, 2, 3, 4, 5, 6, 7, 8), DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM TANK
            IF(PLAYER1, FLAG4 == 6)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, DRAGON, BILE_DEMON, BILE_DEMON, DRAGON, DRAGON, HORNY), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANGED DAMAGE DEALER         
            IF(PLAYER1, FLAG4 == 7)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, DARK_MISTRESS, SORCEROR, DARK_MISTRESS, DARK_MISTRESS), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(4 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 > 7)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
        ENDIF
        REM Round 9
        IF(PLAYER0, FLAG7 == 9)
            REM TANK
            IF(PLAYER1, FLAG4 == 0)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, DRAGON, BILE_DEMON, BILE_DEMON, DRAGON, DRAGON, HORNY), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANGED DAMAGE DEALER         
            IF(PLAYER1, FLAG4 == 1)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, DARK_MISTRESS, SORCEROR, DARK_MISTRESS, DARK_MISTRESS), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM FRONT DAMAGE DEALER
            IF(PLAYER1, FLAG4 == 2)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(HELL_HOUND, SKELETON, ORC, HORNY, HELL_HOUND, SKELETON, ORC, HORNY), DRAWFROM(DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24)), 1, DRAWFROM(5 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM FRONT SUPPORT
            IF(PLAYER1, FLAG4 == 3)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(TENTACLE, SPIDER), DRAWFROM(DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24)), 1, DRAWFROM(5 ~ 8), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANGED DAMAGE DEALER         
            IF(PLAYER1, FLAG4 == 4)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(SORCEROR, TIME_MAGE, DARK_MISTRESS, DARK_MISTRESS, SORCEROR, DARK_MISTRESS, DARK_MISTRESS), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(5 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANGED SUPPORT
            IF(PLAYER1, FLAG4 == 5)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(GHOST, TIME_MAGE, VAMPIRE, GHOST, VAMPIRE, DRUID, TIME_MAGE, DRUID), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(6 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANDOM 
            IF(PLAYER1, FLAG4 == 6)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(DRAWFROM(BILE_DEMON, DARK_MISTRESS, DEMONSPAWN, DRAGON, DRUID), DRAWFROM(GHOST, HELL_HOUND, HORNY, ORC, SKELETON), DRAWFROM(SORCEROR, SPIDER, TENTACLE, TIME_MAGE, VAMPIRE)), DRAWFROM(DRAWFROM(1, 2, 3, 4, 5, 6, 7, 8), DRAWFROM(9, 10, 11, 12, 13, 14, 15, 16), DRAWFROM(17, 18, 19, 20, 21, 22, 23, 24), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(6 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM TANK
            IF(PLAYER1, FLAG4 == 7)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(BILE_DEMON, ORC, DRAGON, BILE_DEMON, DRAGON, ORC, HORNY), DRAWFROM(DRAWFROM(18, 19, 20, 21, 22, 23), DRAWFROM(25, 26, 27, 28, 29, 30, 31, 32)), 1, DRAWFROM(5 ~ 9), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            REM RANGED SUPPORT
            IF(PLAYER1, FLAG4 == 8)
                NEXT_COMMAND_REUSABLE
                ADD_CREATURE_TO_LEVEL(PLAYER1, DRAWFROM(GHOST, TIME_MAGE, VAMPIRE, GHOST, VAMPIRE, DRUID, TIME_MAGE, DRUID), DRAWFROM(DRAWFROM(2, 3, 4, 5, 6, 7), DRAWFROM(11, 12, 13, 14)), 1, DRAWFROM(6 ~ 10), 0)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
            IF(PLAYER1, FLAG4 > 8)
                NEXT_COMMAND_REUSABLE
                SET_FLAG(PLAYER0, FLAG4, 1)
            ENDIF
        ENDIF
    ENDIF
ENDIF

REM PREPARING COUNTDOWN-1
IF(PLAYER1, FLAG0 == 1)
    NEXT_COMMAND_REUSABLE
    BONUS_LEVEL_TIME(0, 1)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER0, TIMER0)
ENDIF
IF(PLAYER1, FLAG0 == 0)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER0, FLAG4, 3)
    NEXT_COMMAND_REUSABLE
    BONUS_LEVEL_TIME(60, 1)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER0, FLAG1, 0)
    REM Reset Reset- and Free-Imp-Box-1
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_TYPE(38, 46, LAVA, NONE)
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_TYPE(38, 48, LAVA, NONE)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER1, FLAG7, 0)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER1, FLAG0, 2)
ENDIF

REM Reset Reset- and Free-Imp-Box-2
IF(PLAYER1, FLAG7 == 1)
    NEXT_COMMAND_REUSABLE
    SET_TIMER(PLAYER0, TIMER2)
ENDIF
REM Reset Reset- and Free-Imp-Box-3
IF(PLAYER0, TIMER2 > 5)
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_TYPE(38, 46, PATH, NONE)
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_OWNER(38, 46, PLAYER0, NONE)
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_TYPE(38, 48, PATH, NONE)
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_OWNER(38, 48, PLAYER0, NONE)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER1, FLAG7, 1)
ENDIF

REM PREPARING COUNTDOWN-2
IF(PLAYER0, TIMER0 > 60)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER0, FLAG0, 0)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER1, FLAG0, 1)
ENDIF


REM END PREPERING PHASE 
NEXT_COMMAND_REUSABLE
SET_FLAG(PLAYER0, FLAG6, 0)
IF(PLAYER0, FLAG1 == 1)
    NEXT_COMMAND_REUSABLE
    COUNT_CREATURES_AT_ACTION_POINT(63, PLAYER0, ANY_CREATURE, PLAYER0, FLAG6)
    REM Wait for place all Creature to start Countdown
    IF(PLAYER0, FLAG6 == PLAYER0, FLAG7)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER1, FLAG0, 0)
    ENDIF
ENDIF

REM Fight phase
If(PLAYER0, FLAG0 == 0)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(IMP, BaseSpeed, 96)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(BILE_DEMON, BaseSpeed, 48)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(BUG, BaseSpeed, 48)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(DARK_MISTRESS, BaseSpeed, 64)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(DEMONSPAWN, BaseSpeed, 48)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(DRAGON, BaseSpeed, 32)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(DRUID, BaseSpeed, 32)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(FLY, BaseSpeed, 128)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(GHOST, BaseSpeed, 64)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(HELL_HOUND, BaseSpeed, 96)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(HORNY, BaseSpeed, 96)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(ORC, BaseSpeed, 48)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(SKELETON, BaseSpeed, 64)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(SORCEROR, BaseSpeed, 32)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(SPIDER, BaseSpeed, 48)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(TENTACLE, BaseSpeed, 32)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(TIME_MAGE, BaseSpeed, 32)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(TROLL, BaseSpeed, 48)
    NEXT_COMMAND_REUSABLE
    SET_CREATURE_CONFIGURATION(VAMPIRE, BaseSpeed, 56)
    NEXT_COMMAND_REUSABLE
    CHANGE_SLAB_TYPE(40, 40, BRIDGE_FRAME, MATCH)
    NEXT_COMMAND_REUSABLE
    MAGIC_AVAILABLE(PLAYER0, POWER_HAND, 0, 0)
ENDIF


REM Evaluation phase
REM Process heart damage
If(PLAYER0, FLAG1 == 0)
    IF(PLAYER0, TOTAL_CREATURES == 0)
        NEXT_COMMAND_REUSABLE
        COMPUTE_FLAG(PLAYER3, FLAG0, SET, PLAYER1, TOTAL_CREATURES)
        NEXT_COMMAND_REUSABLE
        COMPUTE_FLAG(PLAYER2, FLAG7, SET, PLAYER1, TOTAL_CREATURES)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER1, FLAG5, 1)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER1, FLAG1, 1)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(COMBAT, PLAYER0, 0, 6, 10, EFFECTELEMENT_BLUE_SPARKLES_LARGE)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(EFFECT_WORD_OF_POWER, PLAYER0)
        NEXT_COMMAND_REUSABLE
        COMPUTE_FLAG(PLAYER3, FLAG6, SET, PLAYER1, HORNY, 0)
    ENDIF
    IF(PLAYER1, TOTAL_CREATURES == 0)
        NEXT_COMMAND_REUSABLE
        COMPUTE_FLAG(PLAYER3, FLAG1, SET, PLAYER0, TOTAL_CREATURES)
        NEXT_COMMAND_REUSABLE
        COMPUTE_FLAG(PLAYER3, FLAG2, SET, PLAYER0, TOTAL_CREATURES)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER1, FLAG6, 1)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER1, FLAG1, 1)
        NEXT_COMMAND_REUSABLE
        ADD_HEART_HEALTH(PLAYER1, -1500)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(COMBAT, PLAYER1, 0, 6, 10, EFFECTELEMENT_RED_SPARKLES_LARGE)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(EFFECT_WORD_OF_POWER, PLAYER1)
    ENDIF
ENDIF
REM Process Visual Damage to Hearts
IF(PLAYER3, FLAG0 > 0)
    NEXT_COMMAND_REUSABLE
    ADD_HEART_HEALTH(PLAYER0, -1500)
    NEXT_COMMAND_REUSABLE
    ADD_TO_FLAG(PLAYER3, FLAG3, 1)
    IF(PLAYER3, FLAG3 == 1)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(50, PLAYER0, 0, 3, 5, EFFECT_BALL_PUFF_BLUE)
    ENDIF
    IF(PLAYER3, FLAG3 == 2)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(51, PLAYER0, 0, 3, 5, EFFECT_BALL_PUFF_BLUE)
    ENDIF
    IF(PLAYER3, FLAG3 == 3)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(52, PLAYER0, 0, 3, 5, EFFECT_BALL_PUFF_BLUE)
    ENDIF
    IF(PLAYER3, FLAG3 == 4)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(53, PLAYER0, 0, 3, 5, EFFECT_BALL_PUFF_BLUE)
    ENDIF
    IF(PLAYER3, FLAG3 == 5)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(54, PLAYER0, 0, 3, 5, EFFECT_BALL_PUFF_BLUE)
    ENDIF
    IF(PLAYER3, FLAG3 == 6)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(55, PLAYER0, 0, 3, 5, EFFECT_BALL_PUFF_BLUE)
    ENDIF
    IF(PLAYER3, FLAG3 == 7)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(56, PLAYER0, 0, 3, 5, EFFECT_BALL_PUFF_BLUE)
    ENDIF
    IF(PLAYER3, FLAG3 == 8)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(57, PLAYER0, 0, 3, 5, EFFECT_BALL_PUFF_BLUE)
    ENDIF
    IF(PLAYER3, FLAG3 >= 9)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(58, PLAYER0, 0, 3, 5, EFFECT_BALL_PUFF_BLUE)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER3, FLAG3, 0)
    ENDIF
    IF(PLAYER3, FLAG0 > 0)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER3, FLAG0, -1)
    ENDIF
ENDIF
IF(PLAYER3, FLAG1 > 0)
    NEXT_COMMAND_REUSABLE
    ADD_HEART_HEALTH(PLAYER1, -1500)
    NEXT_COMMAND_REUSABLE
    ADD_TO_FLAG(PLAYER3, FLAG4, 1)
    IF(PLAYER3, FLAG4 == 1)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(50, PLAYER1, 0, 3, 5, EFFECT_BALL_PUFF_RED)
    ENDIF
    IF(PLAYER3, FLAG4 == 2)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(51, PLAYER1, 0, 3, 5, EFFECT_BALL_PUFF_RED)
    ENDIF
    IF(PLAYER3, FLAG4 == 3)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(52, PLAYER1, 0, 3, 5, EFFECT_BALL_PUFF_RED)
    ENDIF
    IF(PLAYER3, FLAG4 == 4)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(53, PLAYER1, 0, 3, 5, EFFECT_BALL_PUFF_RED)
    ENDIF
    IF(PLAYER3, FLAG4 == 5)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(54, PLAYER1, 0, 3, 5, EFFECT_BALL_PUFF_RED)
    ENDIF
    IF(PLAYER3, FLAG4 == 6)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(55, PLAYER1, 0, 3, 5, EFFECT_BALL_PUFF_RED)
    ENDIF
    IF(PLAYER3, FLAG4 == 7)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(56, PLAYER1, 0, 3, 5, EFFECT_BALL_PUFF_RED)
    ENDIF
    IF(PLAYER3, FLAG4 == 8)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(57, PLAYER1, 0, 3, 5, EFFECT_BALL_PUFF_RED)
    ENDIF
    IF(PLAYER3, FLAG4 == 9)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECTS_LINE(58, PLAYER1, 0, 3, 5, EFFECT_BALL_PUFF_RED)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER3, FLAG4, 0)
    ENDIF
    IF(PLAYER3, FLAG1 > 0)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER3, FLAG1, -1)
    ENDIF
ENDIF

REM REWARD for PLAYER
IF(PLAYER3, FLAG2 > 0)
    NEXT_COMMAND_REUSABLE
    ADD_GOLD_TO_PLAYER(PLAYER0, 100)
    IF(PLAYER3, FLAG2 == 1)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 59, 100)
    ENDIF
    IF(PLAYER3, FLAG2 == 2)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 60, 100)
    ENDIF
    IF(PLAYER3, FLAG2 == 3)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 68, 100)
    ENDIF
    IF(PLAYER3, FLAG2 == 4)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 69, 100)
    ENDIF
    IF(PLAYER3, FLAG2 == 5)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 70, 100)
    ENDIF
    IF(PLAYER3, FLAG2 == 6)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 71, 100)
    ENDIF
    IF(PLAYER3, FLAG2 == 7)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 72, 100)
    ENDIF
    IF(PLAYER3, FLAG2 == 8)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 73, 100)
    ENDIF
    IF(PLAYER3, FLAG2 == 9)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 50, 100)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER3, FLAG2, 0)
    ENDIF
    IF(PLAYER3, FLAG2 > 0)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER3, FLAG2, -1)
    ENDIF
ENDIF

REM End phase
If(PLAYER1, FLAG1 == 1)
    IF(PLAYER0, BOX20_ACTIVATED == 2)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, BOX20_ACTIVATED, 0)
    ENDIF
    If(PLAYER0, FLAG1 == 0)
        NEXT_COMMAND_REUSABLE
        ADD_GOLD_TO_PLAYER(PLAYER0, 500)
        NEXT_COMMAND_REUSABLE
        CREATE_EFFECT(-41, 80, 500)
        NEXT_COMMAND_REUSABLE
        ADD_TO_FLAG(PLAYER0, FLAG7, 1)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER0, FLAG1, 1)
        REM Respawn RESET-BOX
        NEXT_COMMAND_REUSABLE
        ADD_OBJECT_TO_LEVEL_AT_POS(SPECBOX_CUSTOM, 115, 139, 19, PLAYER0)
        NEXT_COMMAND_REUSABLE
        ADD_OBJECT_TO_LEVEL_AT_POS(SPECBOX_CUSTOM, 115, 145, 20, PLAYER0)
        NEXT_COMMAND_REUSABLE
        SET_FLAG(PLAYER1, FLAG1, 0)
    ENDIF
    NEXT_COMMAND_REUSABLE
    MOVE_CREATURE(PLAYER0, ANY_CREATURE, AT_ACTION_POINT[63], 20, PLAYER_GOOD, EFFECT_BALL_PUFF_RED)
    NEXT_COMMAND_REUSABLE
    MOVE_CREATURE(PLAYER1, ANY_CREATURE, AT_ACTION_POINT[63], 20, PLAYER_GOOD, EFFECT_BALL_PUFF_BLUE)
    REM Round reward
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER0, FLAG3, 0)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER0, FLAG2, 4)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER0, FLAG0, 1)
    NEXT_COMMAND_REUSABLE
    SET_GAME_RULE(BodyRemainsFor, 500)
    NEXT_COMMAND_REUSABLE
    SET_FLAG(PLAYER1, FLAG4, 0)
ENDIF

REM GAME END
IF(PLAYER0, FLAG7 == 10)
    HIDE_VARIABLE
    IF(PLAYER1, FLAG5 > PLAYER1, FLAG6)
        SET_HEART_HEALTH(PLAYER0, 0)
        CREATE_EFFECTS_LINE(PLAYER1, PLAYER0, 0, 6, 10, EFFECTELEMENT_BLUE_SPARKLES_LARGE)
        LOSE_GAME
    ENDIF
    IF(PLAYER1, FLAG5 < PLAYER1, FLAG6)
        SET_HEART_HEALTH(PLAYER1, 0)
        CREATE_EFFECTS_LINE(PLAYER0, PLAYER1, 0, 6, 10, EFFECTELEMENT_RED_SPARKLES_LARGE)
        WIN_GAME
    ENDIF
ENDIF
IF(PLAYER1, DUNGEON_DESTROYED == 1)
    CREATE_EFFECTS_LINE(PLAYER0, PLAYER1, 0, 6, 10, EFFECTELEMENT_RED_SPARKLES_LARGE)
    HIDE_VARIABLE
    WIN_GAME
ENDIF
IF(PLAYER0, DUNGEON_DESTROYED == 1)
    CREATE_EFFECTS_LINE(PLAYER1, PLAYER0, 0, 6, 10, EFFECTELEMENT_BLUE_SPARKLES_LARGE)
    HIDE_VARIABLE
    LOSE_GAME
ENDIF