Structs:LevelInfo
Jump to navigation
Jump to search
Note: This feature is for ZScript only. |
The LevelInfo struct contains information about the level.
Usage
A global pointer to the current LeveInfo instance is available via LevelLocals, with Level.info
.
LevelInfo contains a lot of the same information as LevelLocals, but in a static context. It can also be used to check properties of other maps aside from the current one, in contrast to LevelLocals.
Fields
- readonly int levelnum
- readonly String MapName
- readonly String NextMap
- readonly String NextSecretMap
- readonly String SkyPic1
- readonly String SkyPic2
- readonly String F1Pic
- readonly int cluster
- readonly int partime
- readonly int sucktime
- readonly int flags
- First set of flags:
- LEVEL_NOINTERMISSION
- LEVEL_NOINVENTORYBAR - This effects Doom only since it's the only one without a standard inventory bar.
- LEVEL_DOUBLESKY
- LEVEL_HASFADETABLE - Level uses Hexen's fadetable mapinfo to get fog
- LEVEL_MAP07SPECIAL
- LEVEL_BRUISERSPECIAL
- LEVEL_CYBORGSPECIAL
- LEVEL_SPIDERSPECIAL
- LEVEL_SPECLOWERFLOOR
- LEVEL_SPECOPENDOOR
- LEVEL_SPECLOWERFLOORTOHIGHEST
- LEVEL_SPECACTIONSMASK
- LEVEL_MONSTERSTELEFRAG
- LEVEL_ACTOWNSPECIAL
- LEVEL_SNDSEQTOTALCTRL
- LEVEL_FORCETILEDSKY
- LEVEL_CROUCH_NO
- LEVEL_JUMP_NO
- LEVEL_FREELOOK_NO
- LEVEL_FREELOOK_YES - The absence of both of the following bits means that this level does not
- LEVEL_FALLDMG_ZD - Level uses ZDoom's falling damage
- LEVEL_FALLDMG_HX - Level uses Hexen's falling damage
- LEVEL_HEADSPECIAL - Heretic episode 1/4
- LEVEL_MINOTAURSPECIAL - Heretic episode 2/5
- LEVEL_SORCERER2SPECIAL - Heretic episode 3
- LEVEL_SPECKILLMONSTERS
- LEVEL_STARTLIGHTNING - Automatically start lightning
- LEVEL_FILTERSTARTS - Apply mapthing filtering to player starts
- LEVEL_LOOKUPLEVELNAME - Level name is the name of a language string
- LEVEL_USEPLAYERSTARTZ - Use the Z position of player starts
- LEVEL_SWAPSKIES - Used by lightning
- LEVEL_NOALLIES - i.e. Inside Strife's front base
- LEVEL_CHANGEMAPCHEAT - Don't display cluster messages
- LEVEL_VISITED - Used for intermission map
- readonly int flags2
- Second set of flags:
- LEVEL2_RANDOMPLAYERSTARTS - Select single player starts randomnly (no voodoo dolls)
- LEVEL2_ALLMAP - The player picked up a map on this level
- LEVEL2_LAXMONSTERACTIVATION - Monsters can open doors depending on the door speed
- LEVEL2_LAXACTIVATIONMAPINFO - LEVEL_LAXMONSTERACTIVATION is not a default.
- LEVEL2_MISSILESACTIVATEIMPACT - Missiles are the activators of SPAC_IMPACT events not their shooters
- LEVEL2_NEEDCLUSTERTEXT - A map with this flag needs to retain its cluster intermission texts when being redefined in UMAPINFO
- LEVEL2_KEEPFULLINVENTORY - doesn't reduce the amount of inventory items to 1
- LEVEL2_PRERAISEWEAPON - players should spawn with their weapons fully raised (but not when respawning it multiplayer)
- LEVEL2_MONSTERFALLINGDAMAGE
- LEVEL2_CLIPMIDTEX
- LEVEL2_WRAPMIDTEX
- LEVEL2_CHECKSWITCHRANGE
- LEVEL2_PAUSE_MUSIC_IN_MENUS
- LEVEL2_TOTALINFIGHTING
- LEVEL2_NOINFIGHTING
- LEVEL2_NOMONSTERS
- LEVEL2_INFINITE_FLIGHT
- LEVEL2_ALLOWRESPAWN
- LEVEL2_FORCETEAMPLAYON
- LEVEL2_FORCETEAMPLAYOFF
- LEVEL2_CONV_SINGLE_UNFREEZE
- LEVEL2_NOCLUSTERTEXT - ignore intermission texts fro clusters. This gets set when UMAPINFO is used to redefine its properties.
- LEVEL2_DUMMYSWITCHES
- LEVEL2_HEXENHACK - Level was defined in a Hexen style MAPINFO
- LEVEL2_SMOOTHLIGHTING - Level uses the smooth lighting feature.
- LEVEL2_POLYGRIND - Polyobjects grind corpses to gibs.
- LEVEL2_RESETINVENTORY - Resets player inventory when starting this level (unless in a hub)
- LEVEL2_RESETHEALTH - Resets player health when starting this level (unless in a hub)
- LEVEL2_NOSTATISTICS - This level should not have statistics collected
- LEVEL2_ENDGAME - This is an epilogue level that cannot be quit.
- LEVEL2_NOAUTOSAVEHINT - tell the game that an autosave for this level does not need to be kept
- LEVEL2_FORGETSTATE - forget this map's state in a hub
- readonly int flags3
- Third set of flags:
- LEVEL3_FORCEFAKECONTRAST - forces fake contrast even with fog enabled
- LEVEL3_REMOVEITEMS - kills all INVBAR items on map change.
- LEVEL3_ATTENUATE - attenuate lights?
- LEVEL3_NOLIGHTFADE - no light fading to black.
- LEVEL3_NOCOLOREDSPRITELIGHTING - draw sprites only with color-less light
- LEVEL3_EXITNORMALUSED
- LEVEL3_EXITSECRETUSED
- LEVEL3_FORCEWORLDPANNING - Forces the world panning flag for all textures even those without it explicitly set.
- LEVEL3_HIDEAUTHORNAME
- LEVEL3_PROPERMONSTERFALLINGDAMAGE - Properly apply falling damage to the monsters
- LEVEL3_SKYBOXAO - Apply SSAO to sector skies
- LEVEL3_E1M8SPECIAL
- LEVEL3_E2M8SPECIAL
- LEVEL3_E3M8SPECIAL
- LEVEL3_E4M8SPECIAL
- LEVEL3_E4M6SPECIAL
- LEVEL3_NOSHADOWMAP - disables shadowmaps for a given level.
- LEVEL3_AVOIDMELEE - global flag needed for proper MBF support.
- LEVEL3_NOJUMPDOWN - only for MBF21. Inverse of MBF's dog_jumping flag.
- LEVEL3_LIGHTCREATED - a light had been created in the last frame
- readonly String Music
- readonly String LevelName
- readonly String AuthorName
- readonly int musicorder
- readonly float skyspeed1
- readonly float skyspeed2
- readonly bool LightningSound
- readonly int cdtrack
- readonly double gravity
- readonly double aircontrol
- readonly int airsupply
- readonly int compatflags
- readonly int compatflags2
- readonly name deathsequence
- readonly int fogdensity
- readonly int outsidefogdensity
- readonly int skyfog
- readonly float pixelstretch
- readonly name RedirectType
- readonly String RedirectMapName
- readonly double teamdamage
Methods
Non-static
- bool isValid() const
- String LookupLevelName() const
Static
- static int GetLevelInfoCount()
- static LevelInfo GetLevelInfo(int index)
- static LevelInfo FindLevelInfo(String mapname)
- static LevelInfo FindLevelByNum(int num)
- static bool MapExists(String mapname)
- static String MapChecksum(String mapname)