FPSGameInfo
Intermediate class between the engine's GameInfo and Postal 2's game types.
Structs
HomeListInfo
Dynamic array of home nodes that represent the starts of linked lists of home nodes all with the same tag. Each home node in this array is the start of a linked lists of home nodes. Each home node in that particular list has the same tag as all the others like it in the current level. These are used to speed up the random walks bystanders take
- HomeNode node
- Start of looped list
- int Length
- Length of that list
PathListInfo
Single list of pathnodes in level, used for random pawn walking.
- PathNode node
- Start of looped list
- int Length
- Length of that list
SongInfo
Info about currently playing songs.
- int RealHandle
- Actor Actor
- string Song
- float Volume
- float Radius
- float Pitch
Enums
ETravelItems
- TRAV_WithItems
- default mode
- TRAV_WithoutItems
- only for special cases, like when game is over
Properties
FPSGameInfo
- float MaxStasisPercent
- Maximum percentage in stasis (StasisPawns/LivePawns)
- bool bIsDemo
- Whether this is a demo version of the game
Hidden
- int LivePawns
- Total number of pawns alive in the level, in stasis or not
- int StasisPawns
- Total number of pawns currently in stasis
- bool bIsValid
- Whether the GameInfo is valid. Defaults to true but complex GameInfo's should default to false and set it true when they become valid.
- array<ScriptedTrigger> WaitingList
- List of ScriptedControllers that want to be informed when GameInfo becomes valid.
- array<HomeListInfo> HomeNodeLists
- PathListInfo PathNodeList
- SongInfo SongInfos[9]
- localized string UnknownDiffStr
- float DebugTextX
- Debug stuff
- float DebugTextY
- Debug stuff
- float DebugTextHeight
- Debug stuff
- float DebugTextIndent
- Debug stuff
Functions
- BuildHomeNodeLists() [native]
- BuildPathNodeLists() [native]
- string GetGameMap(string GameCode, string PrevMapName, int Dir) [native, static]
- bool StartingUp()
- Outside, we're not starting up. This is only to return true when we're inside the state of StartUp, where we prep pawns, the apocalypse, day block levels, etc.
- SendPlayerEx(PlayerController Player, string URL, ETravelType TravelType, ETravelItems TravelItems)
- Send player to specified URL. This is our own version of SendPlayer() except it allows additional travel options to be specified. This safely handles the case of the player not having a pawn (the engine version crashes to let you know the pawn is missing). This also cleans up various things that should be done prior to travel.
- GameInfoIsNowValid()
- This is called to indicate the GameInfo has become valid.
- AddToWaitingList(ScriptedTrigger Script)
- Add to a list of of items that are waiting for the gameinfo to become valid. When it does become valid, these items are notified.
- AddPawn(Pawn AddMe)
- Increment the total number of live pawns in the level
- RemovePawn(Pawn RemoveMe)
- Decrement the total number of live pawns in the level
- PawnInStasis(Pawn CheckP)
- New pawn goes into stasis
- PawnOutOfStasis(Pawn CheckP)
- New pawn comes out of stasis
- FindHomeListInfo(name UseTag, out HomeListInfo returninfo)
- Given a tag, return the start of a home node list
- FindPathListInfo(out PathListInfo returninfo)
- Return the start of a path node list
- GetSplatDetail()
- Get the splat detail.. longer lasting splats, the higher the number
- PlayMusicExt(string Song, float FadeInTime)
- All music should be controlled through these functions instead of the similar functions in the Actor class. Calling those functions directly will lead to serious problems if the audio system is rebooted, which can happen at any time during the game if the player changes certain options in the audio menu. Using these following functions instead will prevent those problems and will also restore any songs that were playing after the audio system is rebooted.
- PlayMusicAttenuateExt(Actor Actor, string Song, float FadeInTime, optional float Volume, optional float Radius, optional float Pitch)
- RestoreMusicAfterAudioReboot()
- StopMusicExt(int SongHandle, float FadeOutTime)
- StopAllMusicExt(float FadeOutTime)
- int GetFreeSongInfo()
- DrawTextDebug(Canvas Canvas, String str, optional int indent)
- Draw text for debugging
- string GetDiffName(int DiffIndex)
- Get the phrase for our difficulty level (override in P2GameInfoSingle?)
- string SetURLOption(string URL, string Name, string Value)
- Set the specified option in the URL. If the option already exists in the URL, it is replaced with the new value.
- string RemoveURLOption(string URL, string Name)
- Remove the specified option from the URL, ignoring case. If the option doesn't exist, the URL is returned unchanged.
Postal 2's GameInfo Class Tree
FPSGameInfo +- P2GameInfo? +- P2GameInfoSingle? | +- GameSinglePlayer? | +- GameSinglePlayerDemo +- P2GameInfoMulti? +- MPGameInfo? +- [DeathMatch (P2)]? +- GrabBagGame? | +- xGrabBag +- [TeamGame (P2)]? | +- [CTFGame (P2)]? | | +- xCTFGame | +- xTeamGame +- xDeathMatch