// MAPINFO for Heretic (Retail)
include "mapinfo/common.txt"

gameinfo
{
	titlepage = "TITLE"
	creditpage = "CREDIT"
	titlemusic = "MUS_TITL"
	titletime = 8
	advisorytime = 6
	pagetime = 5
	chatsound = "misc/chat"
	finalemusic = "MUS_CPTD"
	finaleflat = "FLOOR25"
	finalepage = "CREDIT"
	infopage = "HELP1", "HELP2", "CREDIT"
	quitsound = ""
	borderflat = "FLAT513"
	border = HereticBorder
	telefogheight = 32
	defkickback = 150
	skyflatname = "F_SKY1"
	translator = "xlat/heretic.txt"
	defaultbloodcolor = "68 00 00"
	defaultbloodparticlecolor = "ff 00 00"
	backpacktype = "BagOfHolding"
	armoricons = "SHLDA0", 0.75, "SHD2A0"
	//statusbar = "sbarinfo/heretic.txt"
	statusbarclass = "HereticStatusBar"
	intermissionmusic = "mus_intr"
	intermissioncounter = false
	weaponslot = 1, "Staff", "Gauntlets"
	weaponslot = 2, "GoldWand"
	weaponslot = 3, "Crossbow"
	weaponslot = 4, "Blaster"
	weaponslot = 5, "SkullRod"
	weaponslot = 6, "PhoenixRod"
	weaponslot = 7, "Mace"
	dimcolor = "00 00 40"
	dimamount = 0.5
	bluramount = 0
	menuslidercolor = "Orange"
	menusliderbackcolor = "White"
	definventorymaxamount = 16
	defaultrespawntime = 12
	defaultdropstyle = 1
	endoom = "ENDTEXT"
	pickupcolor = "d7 ba 45"
	quitmessages = "$*RAVENQUITMSG"
	menufontcolor_title = "UNTRANSLATED"
	menufontcolor_label = "GREEN"
	menufontcolor_value = "UNTRANSLATED"
	menufontcolor_action = "UNTRANSLATED"
	menufontcolor_header = "GOLD"
	menufontcolor_highlight = "YELLOW"
	menufontcolor_selection = "DARKGREEN"
	menubackbutton = "M_BACK_H"
	playerclasses = "HereticPlayer"
	nightmarefast = true
	pausesign = "PAUSED"
	gibfactor = 0.5
	cursorpic = "herecurs"
	textscreenx = 20
	textscreeny = 5
	defaultendsequence = "Inter_Pic1"
	maparrow = "maparrows/dagger.txt"
	statscreen_mapnamefont = "*BigFont"
	statscreen_finishedfont = "*SmallFont"
	statscreen_enteringfont = "*SmallFont"
	statscreen_contentfont = "*BigFont"
	statscreen_authorFont = "*SmallFont"
	statscreen_coop = "CoopStatusScreen"
	statscreen_dm = "DeathmatchStatusScreen"
	statscreen_single = "RavenStatusScreen"
	messageboxclass = "MessageBoxMenu"
	helpmenuclass = "ReadThisMenu"
	menudelegateclass = "DoomMenuDelegate"
	normforwardmove = 0x19, 0x32
	normsidemove = 0x18, 0x28
}

gamedefaults
{
	enableskyboxao
}

DoomEdNums
{
     5 = HereticImpLeader
     6 = Ironlich
     7 = Sorcerer1
     8 = BagOfHolding
     9 = Minotaur
    10 = GoldWandAmmo
    12 = GoldWandHefty
    13 = MaceAmmo
    15 = Wizard
    16 = MaceHefty
    17 = SkullHang70
    18 = CrossbowAmmo
    19 = CrossbowHefty
    20 = SkullRodAmmo
    21 = SkullRodHefty
    22 = PhoenixRodAmmo
    23 = PhoenixRodHefty
    24 = SkullHang60
    25 = SkullHang45
    26 = SkullHang35
    27 = SerpentTorch
    28 = Chandelier
    29 = SmallPillar
    30 = ArtiEgg
    31 = EnchantedShield
    32 = ArtiSuperHealth
    33 = ArtiTorch
    34 = ArtiTimeBomb
    35 = SuperMap
    36 = ArtiTeleport
    37 = StalagmiteSmall
    38 = StalagmiteLarge
    39 = StalactiteSmall
    40 = StalactiteLarge
    41 = SoundWaterfall
    42 = SoundWind
    43 = PodGenerator
    44 = Barrel
    45 = MummyLeader
    46 = MummyLeaderGhost
    47 = BrownPillar
    48 = Moss1
    49 = Moss2
    50 = WallTorch
    51 = HangingCorpse
    52 = TeleGlitterGenerator2
    53 = Blaster
    54 = BlasterAmmo
    55 = BlasterHefty
    56 = BossSpot
    64 = Knight
    65 = KnightGhost
    66 = HereticImp
    68 = Mummy
    69 = MummyGhost
    70 = Beast
    73 = KeyGreen
    74 = TeleGlitterGenerator1
    75 = ArtiInvisibility
    76 = FireBrazier
    79 = KeyBlue
    80 = KeyYellow
    81 = CrystalVial
    82 = ArtiHealth
    83 = ArtiFly
    84 = ArtiInvulnerability
    85 = SilverShield
    86 = ArtiTomeOfPower
    87 = Volcano
    90 = Clink
    92 = Snake
    94 = KeyGizmoBlue
    95 = KeyGizmoGreen
    96 = KeyGizmoYellow
   118 = Bridge
  1200 = HereticSoundSequence1
  1201 = HereticSoundSequence2
  1202 = HereticSoundSequence3
  1203 = HereticSoundSequence4
  1204 = HereticSoundSequence5
  1205 = HereticSoundSequence6
  1206 = HereticSoundSequence7
  1207 = HereticSoundSequence8
  1208 = HereticSoundSequence9
  1209 = HereticSoundSequence10
  2001 = Crossbow
  2002 = MaceSpawner
  2003 = PhoenixRod
  2004 = SkullRod
  2005 = Gauntlets
  2035 = Pod
  4001 = "$Player5Start"
  4002 = "$Player6Start"
  4003 = "$Player7Start"
  4004 = "$Player8Start"
  9042 = GoldWand
}

SpawnNums
{
	1 = Clink
	2 = MummyLeader
	3 = Beast
	4 = Mummy
	5 = HereticImp
	6 = Knight
	7 = HereticImpLeader
	8 = MummyGhost
	9 = MummyLeaderGhost
	10 = HereticImpBall
	11 = GoldWandAmmo
	12 = GoldWandHefty
	14 = ArtiEgg
	15 = ArtiFly
	18 = ArtiTeleport
	19 = Wizard
	20 = Ironlich
	21 = Bridge
	23 = CrystalVial
	24 = ArtiHealth
	25 = ArtiSuperHealth
	27 = Crossbow
	28 = Blaster
	29 = PhoenixRod
	30 = SkullRod
	31 = Mace
	32 = Gauntlets
	33 = CrossbowAmmo
	34 = CrossbowHefty
	35 = MaceAmmo
	36 = MaceHefty
	37 = BlasterAmmo
	38 = BlasterHefty
	40 = EggFX
	68 = SilverShield
	69 = EnchantedShield
	72 = ArtiTimeBomb
	73 = ArtiTorch
	85 = KeyBlue
	86 = KeyGreen
	87 = KeyYellow
	110 = SoundWind
	111 = SoundWaterfall
	120 = BeastBall
	121 = Feather
	122 = Chicken
	123 = VolcanoBlast
	124 = VolcanoTBlast
	125 = Pod
	126 = PodGenerator
	127 = KnightAxe
	128 = RedAxe
	129 = KnightGhost
	131 = MummyFX1
	132 = Snake
	133 = ArtiInvulnerability
	134 = ArtiTomeOfPower
	135 = ArtiInvisibility
	136 = BagOfHolding
	137 = SuperMap
	138 = SnakeProjA
	139 = SnakeProjB
	140 = WizardFX1
	141 = BossSpot
	142 = Sorcerer1
	143 = Sorcerer2
	144 = SorcererFX1
	145 = Sorcerer2FX1
	146 = Sorcerer2FX2
	147 = CrossbowFX1
	148 = CrossbowFX2
	149 = CrossbowFX3
	150 = Volcano
	151 = GoldWandFX1
	152 = GoldWandFX2
	153 = MaceFX4
	154 = MaceFX1
	155 = MaceFX3
	156 = MaceFX2
	157 = Ripper
	158 = SkullRodAmmo
	159 = SkullRodHefty
	160 = HornRodFX1
	161 = PhoenixRodAmmo
	162 = PhoenixRodHefty
	163 = PhoenixFX1
	164 = HeadFX1
	165 = Whirlwind
	166 = TeleGlitterGenerator1
	167 = TeleGlitterGenerator2
}

skill baby
{
	AutoUseHealth
	AmmoFactor = 1.5
	DoubleAmmoFactor = 1.5
	DamageFactor = 0.5
	EasyBossBrain
	SpawnFilter = Baby
	Name = "$MNU_WETNURSE"
	EasyKey
}

skill easy
{
	DoubleAmmoFactor = 1.5
	SpawnFilter = Easy
	Name = "$MNU_YELLOWBELLIES"
}

skill normal
{
	DoubleAmmoFactor = 1.5
	SpawnFilter = Normal
	Name = "$MNU_BRINGEST"
	DefaultSkill
}

skill hard
{
	DoubleAmmoFactor = 1.5
	SpawnFilter = Hard
	Name = "$MNU_SMITE"
}

skill nightmare
{
	AmmoFactor = 1.5
	DoubleAmmoFactor = 1.5
	FastMonsters
	InstantReaction
	DisableCheats
	SpawnFilter = Nightmare
	Name = "$MNU_BLACKPLAGUE"
}

clearepisodes
episode e1m1
{
	name = "$MNU_COTD"
	key = "c"
}

episode e2m1
{
	name = "$MNU_HELLSMAW"
	key = "h"
}

episode e3m1
{
	name = "$MNU_DOME"
	key = "d"
}

episode e4m1
{
	name = "$MNU_OSSUARY"
	key = "o"
	extended
}

episode e5m1
{
	name = "$MNU_DEMESNE"
	key = "s"
	extended

}

// Episode 1

map E1M1 lookup "HHUSTR_E1M1"
{
	next = "E1M2"
	secretnext = "E1M9"
	sky1 = "SKY1"
	cluster = 1
	music = "MUS_E1M1"
}

map E1M2 lookup "HHUSTR_E1M2"
{
	next = "E1M3"
	secretnext = "E1M9"
	sky1 = "SKY1"
	cluster = 1
	music = "MUS_E1M2"
}

map E1M3 lookup "HHUSTR_E1M3"
{
	next = "E1M4"
	secretnext = "E1M9"
	sky1 = "SKY1"
	cluster = 1
	music = "MUS_E1M3"
}

map E1M4 lookup "HHUSTR_E1M4"
{
	next = "E1M5"
	secretnext = "E1M9"
	sky1 = "SKY1"
	cluster = 1
	music = "MUS_E1M4"
}

map E1M5 lookup "HHUSTR_E1M5"
{
	next = "E1M6"
	secretnext = "E1M9"
	sky1 = "SKY1"
	cluster = 1
	music = "MUS_E1M5"
}

map E1M6 lookup "HHUSTR_E1M6"
{
	next = "E1M7"
	secretnext = "E1M9"
	sky1 = "SKY1"
	cluster = 1
	music = "MUS_E1M6"
}

map E1M7 lookup "HHUSTR_E1M7"
{
	next = "E1M8"
	secretnext = "E1M9"
	sky1 = "SKY1"
	cluster = 1
	music = "MUS_E1M7"
}

map E1M8 lookup "HHUSTR_E1M8"
{
	next = "EndGame1"
	secretnext = "E1M9"
	sky1 = "SKY1"
	cluster = 1
	nointermission
	ironlichspecial
	specialaction_lowerfloortohighest
	music = "MUS_E1M8"
	needclustertext
}

map E1M9 lookup "HHUSTR_E1M9"
{
	next = "E1M7"
	secretnext = "E1M7"
	sky1 = "SKY1"
	cluster = 1
	music = "MUS_E1M9"
}

// Episode 2

map E2M1 lookup "HHUSTR_E2M1"
{
	next = "E2M2"
	secretnext = "E2M9"
	sky1 = "SKY2"
	cluster = 2
	music = "MUS_E2M1"
}

map E2M2 lookup "HHUSTR_E2M2"
{
	next = "E2M3"
	secretnext = "E2M9"
	sky1 = "SKY2"
	cluster = 2
	music = "MUS_E2M2"
}

map E2M3 lookup "HHUSTR_E2M3"
{
	next = "E2M4"
	secretnext = "E2M9"
	sky1 = "SKY2"
	cluster = 2
	music = "MUS_E2M3"
}

map E2M4 lookup "HHUSTR_E2M4"
{
	next = "E2M5"
	secretnext = "E2M9"
	sky1 = "SKY2"
	cluster = 2
	music = "MUS_E2M4"
}

map E2M5 lookup "HHUSTR_E2M5"
{
	next = "E2M6"
	secretnext = "E2M9"
	sky1 = "SKY2"
	cluster = 2
	music = "MUS_E1M4"
}

map E2M6 lookup "HHUSTR_E2M6"
{
	next = "E2M7"
	secretnext = "E2M9"
	sky1 = "SKY2"
	cluster = 2
	music = "MUS_E2M6"
}

map E2M7 lookup "HHUSTR_E2M7"
{
	next = "E2M8"
	secretnext = "E2M9"
	sky1 = "SKY2"
	cluster = 2
	music = "MUS_E2M7"
}

map E2M8 lookup "HHUSTR_E2M8"
{
	next = "EndGameW"
	secretnext = "E2M9"
	sky1 = "SKY2"
	cluster = 2
	nointermission
	minotaurspecial
	specialaction_lowerfloortohighest
	specialaction_killmonsters
	music = "MUS_E2M8"
	needclustertext
}

map E2M9 lookup "HHUSTR_E2M9"
{
	next = "E2M5"
	secretnext = "E2M5"
	sky1 = "SKY2"
	cluster = 2
	music = "MUS_E2M9"
}

// Episode 3

map E3M1 lookup "HHUSTR_E3M1"
{
	next = "E3M2"
	secretnext = "E3M9"
	sky1 = "SKY3"
	cluster = 3
	music = "MUS_E1M1"
}

map E3M2 lookup "HHUSTR_E3M2"
{
	next = "E3M3"
	secretnext = "E3M9"
	sky1 = "SKY3"
	cluster = 3
	music = "MUS_E3M2"
}

map E3M3 lookup "HHUSTR_E3M3"
{
	next = "E3M4"
	secretnext = "E3M9"
	sky1 = "SKY3"
	cluster = 3
	music = "MUS_E3M3"
}

map E3M4 lookup "HHUSTR_E3M4"
{
	next = "E3M5"
	secretnext = "E3M9"
	sky1 = "SKY3"
	cluster = 3
	music = "MUS_E1M6"
}

map E3M5 lookup "HHUSTR_E3M5"
{
	next = "E3M6"
	secretnext = "E3M9"
	sky1 = "SKY3"
	cluster = 3
	music = "MUS_E1M3"
}

map E3M6 lookup "HHUSTR_E3M6"
{
	next = "E3M7"
	secretnext = "E3M9"
	sky1 = "SKY3"
	cluster = 3
	music = "MUS_E1M2"
}

map E3M7 lookup "HHUSTR_E3M7"
{
	next = "E3M8"
	secretnext = "E3M9"
	sky1 = "SKY3"
	cluster = 3
	music = "MUS_E1M5"
}

map E3M8 lookup "HHUSTR_E3M8"
{
	next = "EndDemon"
	secretnext = "E3M9"
	sky1 = "SKY3"
	cluster = 3
	nointermission
	dsparilspecial
	specialaction_lowerfloortohighest
	specialaction_killmonsters
	music = "MUS_E1M9"
	needclustertext
}

map E3M9 lookup "HHUSTR_E3M9"
{
	next = "E3M5"
	secretnext = "E3M5"
	sky1 = "SKY3"
	cluster = 3
	music = "MUS_E2M6"
}

// Episode 4

map E4M1 lookup "HHUSTR_E4M1"
{
	next = "E4M2"
	secretnext = "E4M9"
	sky1 = "SKY1"
	cluster = 4
	music = "MUS_E1M6"
}

map E4M2 lookup "HHUSTR_E4M2"
{
	next = "E4M3"
	secretnext = "E4M9"
	sky1 = "SKY1"
	cluster = 4
	music = "MUS_E1M2"
}

map E4M3 lookup "HHUSTR_E4M3"
{
	next = "E4M4"
	secretnext = "E4M9"
	sky1 = "SKY1"
	cluster = 4
	music = "MUS_E1M3"
}

map E4M4 lookup "HHUSTR_E4M4"
{
	next = "E4M5"
	secretnext = "E4M9"
	sky1 = "SKY1"
	cluster = 4
	music = "MUS_E1M4"
}

map E4M5 lookup "HHUSTR_E4M5"
{
	next = "E4M6"
	secretnext = "E4M9"
	sky1 = "SKY1"
	cluster = 4
	music = "MUS_E1M5"
}

map E4M6 lookup "HHUSTR_E4M6"
{
	next = "E4M7"
	secretnext = "E4M9"
	sky1 = "SKY1"
	cluster = 4
	music = "MUS_E1M1"
}

map E4M7 lookup "HHUSTR_E4M7"
{
	next = "E4M8"
	secretnext = "E4M9"
	sky1 = "SKY1"
	cluster = 4
	music = "MUS_E1M7"
}

map E4M8 lookup "HHUSTR_E4M8"
{
	next = "EndGame4"
	secretnext = "E4M9"
	sky1 = "SKY1"
	cluster = 4
	nointermission
	ironlichspecial
	specialaction_lowerfloortohighest
	specialaction_killmonsters
	music = "MUS_E1M8"
	needclustertext
}

map E4M9 lookup "HHUSTR_E4M9"
{
	next = "E4M5"
	secretnext = "E4M5"
	sky1 = "SKY1"
	cluster = 4
	music = "MUS_E1M9"
}

// Episode 5

map E5M1 lookup "HHUSTR_E5M1"
{
	next = "E5M2"
	secretnext = "E5M9"
	sky1 = "SKY3"
	cluster = 5
	music = "MUS_E2M1"
}

map E5M2 lookup "HHUSTR_E5M2"
{
	next = "E5M3"
	secretnext = "E5M9"
	sky1 = "SKY3"
	cluster = 5
	music = "MUS_E2M2"
}

map E5M3 lookup "HHUSTR_E5M3"
{
	next = "E5M4"
	secretnext = "E5M9"
	sky1 = "SKY3"
	cluster = 5
	music = "MUS_E2M3"
}

map E5M4 lookup "HHUSTR_E5M4"
{
	next = "E5M5"
	secretnext = "E5M9"
	sky1 = "SKY3"
	cluster = 5
	music = "MUS_E2M4"
}

map E5M5 lookup "HHUSTR_E5M5"
{
	next = "E5M6"
	secretnext = "E5M9"
	sky1 = "SKY3"
	cluster = 5
	music = "MUS_E1M4"
}

map E5M6 lookup "HHUSTR_E5M6"
{
	next = "E5M7"
	secretnext = "E5M9"
	sky1 = "SKY3"
	cluster = 5
	music = "MUS_E2M6"
}

map E5M7 lookup "HHUSTR_E5M7"
{
	next = "E5M8"
	secretnext = "E5M9"
	sky1 = "SKY3"
	cluster = 5
	music = "MUS_E2M7"
}

map E5M8 lookup "HHUSTR_E5M8"
{
	next = "EndGame1"
	secretnext = "E5M9"
	sky1 = "SKY3"
	cluster = 5
	nointermission
	minotaurspecial
	specialaction_killmonsters
	specialaction_lowerfloortohighest
	music = "MUS_E2M8"
	needclustertext
}

map E5M9 lookup "HHUSTR_E5M9"
{
	next = "E5M4"
	secretnext = "E5M4"
	sky1 = "SKY3"
	cluster = 5
	music = "MUS_E2M9"
}

// Episode 6

map E6M1 "Untitled"
{
	next = "E6M2"
	secretnext = "E6M2"
	sky1 = "SKY1"
	cluster = 6
	music = "MUS_E3M2"
}

map E6M2 "Untitled"
{
	next = "E6M3"
	secretnext = "E6M3"
	sky1 = "SKY1"
	cluster = 6
	music = "MUS_E3M3"
}

map E6M3 "Untitled"
{
	next = "E6M1"
	secretnext = "E6M1"
	sky1 = "SKY1"
	cluster = 6
	music = "MUS_E1M6"
}

// Clusters (correspond with same-numbered episode)

cluster 1
{
	flat = "FLOOR25"
	exittext = lookup, "HE1TEXT"
}

cluster 2
{
	flat = "FLATHUH1"
	exittext = lookup, "HE2TEXT"
}

cluster 3
{
	flat = "FLTWAWA2"
	exittext = lookup, "HE3TEXT"
}

cluster 4
{
	flat = "FLOOR28"
	exittext = lookup, "HE4TEXT"
}

cluster 5
{
	flat = "FLOOR08"
	exittext = lookup, "HE5TEXT"
}

cluster 6
{
	flat = "FLOOR25"
}
