Table of Contents

Class GameTarget

Namespace
SkyrimForge
Assembly
SkyrimForge.dll

The game hosted in this process, through which a plugin accesses the player and the game's singleton managers. The framework constructs it and supplies it to a plugin.

public sealed class GameTarget
Inheritance
GameTarget
Inherited Members

Properties

ActorEquipManager

The game's only ActorEquipManager.

This is the only way to equip something an actor already has in inventory. Adding an item can force it worn as it arrives, and what is worn can be read, but neither affects what is already equipped.

public ActorEquipManager ActorEquipManager { get; }

Property Value

ActorEquipManager

Exceptions

InvalidOperationException

The game has not built the ActorEquipManager yet.

ActorValueList

The game's only ActorValueList.

Every actor value the game declares. It returns an ActorValueInfo, being the description of one value, for an ActorValue or for a name, and nothing else returns the set.

public ActorValueList ActorValueList { get; }

Property Value

ActorValueList

Exceptions

InvalidOperationException

The game has not built the ActorValueList yet.

AudioManager

The game's only BSAudioManager.

public BSAudioManager AudioManager { get; }

Property Value

BSAudioManager

Exceptions

InvalidOperationException

The game has not built the BSAudioManager yet.

BhkCollisionFilter

The game's only bhkCollisionFilter.

public bhkCollisionFilter BhkCollisionFilter { get; }

Property Value

bhkCollisionFilter

Exceptions

InvalidOperationException

The game has not built the bhkCollisionFilter yet.

Calendar

The game's only Calendar.

public Calendar Calendar { get; }

Property Value

Calendar

Exceptions

InvalidOperationException

The game has not built the Calendar yet.

CombatManager

The game's only CombatManager.

public CombatManager CombatManager { get; }

Property Value

CombatManager

Exceptions

InvalidOperationException

The game has not built the CombatManager yet.

ConsoleLog

The game's only ConsoleLog.

The object the game's console prints through. IConsole writes a line through it, so a plugin wanting to print has that route already. This reaches the object itself, whose LastMessage is the last line printed by anything at all rather than by the plugin.

public ConsoleLog ConsoleLog { get; }

Property Value

ConsoleLog

Exceptions

InvalidOperationException

The game has not built the ConsoleLog yet.

ControlMap

The game's only ControlMap.

The control each of the player's keys is bound to, queried rather than waited for. An input event reports which control a key that was just pressed means. This resolves the same question for any key at any time, and the reverse one of which key a control is bound to. It is how a plugin picks a key nobody else uses.

public ControlMap ControlMap { get; }

Property Value

ControlMap

Exceptions

InvalidOperationException

The game has not built the ControlMap yet.

CreatedObjectManager

The game's only BGSCreatedObjectManager.

public BGSCreatedObjectManager CreatedObjectManager { get; }

Property Value

BGSCreatedObjectManager

Exceptions

InvalidOperationException

The game has not built the BGSCreatedObjectManager yet.

CrosshairPickData

The game's only CrosshairPickData.

The object under the crosshair, which the game resolves every frame rather than on request. The crosshair-reference event reports a change and this reports the current state at any moment.

public CrosshairPickData CrosshairPickData { get; }

Property Value

CrosshairPickData

Exceptions

InvalidOperationException

The game has not built the CrosshairPickData yet.

DataHandler

The game's only TESDataHandler.

public TESDataHandler DataHandler { get; }

Property Value

TESDataHandler

Exceptions

InvalidOperationException

The game has not built the TESDataHandler yet.

DecalManager

The game's only BGSDecalManager.

public BGSDecalManager DecalManager { get; }

Property Value

BGSDecalManager

Exceptions

InvalidOperationException

The game has not built the BGSDecalManager yet.

DefaultObjectManager

The game's only DefaultObjectManager.

public DefaultObjectManager DefaultObjectManager { get; }

Property Value

DefaultObjectManager

Exceptions

InvalidOperationException

The game has not built the DefaultObjectManager yet.

DirectInputManager

The game's only BSDirectInputManager.

public BSDirectInputManager DirectInputManager { get; }

Property Value

BSDirectInputManager

Exceptions

InvalidOperationException

The game has not built the BSDirectInputManager yet.

FOCollisionListener

The game's only FOCollisionListener.

public FOCollisionListener FOCollisionListener { get; }

Property Value

FOCollisionListener

Exceptions

InvalidOperationException

The game has not built the FOCollisionListener yet.

FaceGenManager

The game's only BSFaceGenManager.

public BSFaceGenManager FaceGenManager { get; }

Property Value

BSFaceGenManager

Exceptions

InvalidOperationException

The game has not built the BSFaceGenManager yet.

FixedStrings

The game's only FixedStrings.

public FixedStrings FixedStrings { get; }

Property Value

FixedStrings

Exceptions

InvalidOperationException

The game has not built the FixedStrings yet.

GameSettingCollection

The game's only GameSettingCollection.

The game settings, the ones an .esm, .esp, or .esl file may change and a console command may set. The two INI collections beside it read a different file, and neither reaches the other's values.

public GameSettingCollection GameSettingCollection { get; }

Property Value

GameSettingCollection

Exceptions

InvalidOperationException

The game has not built the GameSettingCollection yet.

GraphicsRenderer

The game's only BSGraphics.Renderer.

public Renderer GraphicsRenderer { get; }

Property Value

Renderer

Exceptions

InvalidOperationException

The game has not built the BSGraphics.Renderer yet.

GraphicsState

The game's only BSGraphics.State.

public State GraphicsState { get; }

Property Value

State

Exceptions

InvalidOperationException

The game has not built the BSGraphics.State yet.

GrassManager

The game's only BGSGrassManager.

public BGSGrassManager GrassManager { get; }

Property Value

BGSGrassManager

Exceptions

InvalidOperationException

The game has not built the BGSGrassManager yet.

INIPrefSettingCollection

The game's only INIPrefSettingCollection.

public INIPrefSettingCollection INIPrefSettingCollection { get; }

Property Value

INIPrefSettingCollection

Exceptions

InvalidOperationException

The game has not built the INIPrefSettingCollection yet.

INISettingCollection

The game's only INISettingCollection.

public INISettingCollection INISettingCollection { get; }

Property Value

INISettingCollection

Exceptions

InvalidOperationException

The game has not built the INISettingCollection yet.

ImageSpaceManager

The game's only ImageSpaceManager.

public ImageSpaceManager ImageSpaceManager { get; }

Property Value

ImageSpaceManager

Exceptions

InvalidOperationException

The game has not built the ImageSpaceManager yet.

ImpactManager

The game's only BGSImpactManager.

public BGSImpactManager ImpactManager { get; }

Property Value

BGSImpactManager

Exceptions

InvalidOperationException

The game has not built the BGSImpactManager yet.

InputDeviceManager

The game's only BSInputDeviceManager.

public BSInputDeviceManager InputDeviceManager { get; }

Property Value

BSInputDeviceManager

Exceptions

InvalidOperationException

The game has not built the BSInputDeviceManager yet.

InputEventQueue

The game's only BSInputEventQueue.

public BSInputEventQueue InputEventQueue { get; }

Property Value

BSInputEventQueue

Exceptions

InvalidOperationException

The game has not built the BSInputEventQueue yet.

InterfaceStrings

The game's only InterfaceStrings.

public InterfaceStrings InterfaceStrings { get; }

Property Value

InterfaceStrings

Exceptions

InvalidOperationException

The game has not built the InterfaceStrings yet.

Inventory3DManager

The game's only Inventory3DManager.

public Inventory3DManager Inventory3DManager { get; }

Property Value

Inventory3DManager

Exceptions

InvalidOperationException

The game has not built the Inventory3DManager yet.

MagicFavorites

The game's only MagicFavorites.

public MagicFavorites MagicFavorites { get; }

Property Value

MagicFavorites

Exceptions

InvalidOperationException

The game has not built the MagicFavorites yet.

Main

The game's only Main.

Whether the game is running rather than shutting down, whether time is frozen, and the root of the rendered scene. A plugin that pauses the world or attaches anything visible starts here.

public Main Main { get; }

Property Value

Main

Exceptions

InvalidOperationException

The game has not built the Main yet.

MemoryManager

The game's only MemoryManager.

The game's own heap. Every type a plugin allocates through New is taken from it, and what becomes of that memory is the game's business rather than a plugin's.

public MemoryManager MemoryManager { get; }

Property Value

MemoryManager

Exceptions

InvalidOperationException

The game has not built the MemoryManager yet.

MenuControls

The game's only MenuControls.

public MenuControls MenuControls { get; }

Property Value

MenuControls

Exceptions

InvalidOperationException

The game has not built the MenuControls yet.

MenuCursor

The game's only MenuCursor.

public MenuCursor MenuCursor { get; }

Property Value

MenuCursor

Exceptions

InvalidOperationException

The game has not built the MenuCursor yet.

MenuTopicManager

The game's only MenuTopicManager.

public MenuTopicManager MenuTopicManager { get; }

Property Value

MenuTopicManager

Exceptions

InvalidOperationException

The game has not built the MenuTopicManager yet.

MusicManager

The game's only BSMusicManager.

public BSMusicManager MusicManager { get; }

Property Value

BSMusicManager

Exceptions

InvalidOperationException

The game has not built the BSMusicManager yet.

NiMemManager

The game's only NiMemManager.

public NiMemManager NiMemManager { get; }

Property Value

NiMemManager

Exceptions

InvalidOperationException

The game has not built the NiMemManager yet.

PapyrusVirtualMachine

The game's only BSScript.Internal.VirtualMachine.

The Papyrus virtual machine, which every script in the load order runs on. Through it a plugin calls a script function by name, the game's own or one any other mod ships, and sends an event that a script is waiting to receive. It is the only route out of C# into the rest of the modding world.

public VirtualMachine PapyrusVirtualMachine { get; }

Property Value

VirtualMachine

Exceptions

InvalidOperationException

The game has not built the BSScript.Internal.VirtualMachine yet.

Player

The game's only PlayerCharacter.

It exists from around the main menu, before a save has placed the player in a cell, so reaching one is not proof the player is in the world. An unplaced player reads a default position.

public PlayerCharacter Player { get; }

Property Value

PlayerCharacter

Exceptions

InvalidOperationException

The game has not built the PlayerCharacter yet.

PlayerCamera

The game's only PlayerCamera.

Which camera the game is running, being first person, third person, bleedout, or the free camera, and it forces each of those. PlayerCharacter reports where the player stands and this reports what the player sees.

public PlayerCamera PlayerCamera { get; }

Property Value

PlayerCamera

Exceptions

InvalidOperationException

The game has not built the PlayerCamera yet.

PlayerControls

The game's only PlayerControls.

public PlayerControls PlayerControls { get; }

Property Value

PlayerControls

Exceptions

InvalidOperationException

The game has not built the PlayerControls yet.

ProcessLists

The game's only ProcessLists.

public ProcessLists ProcessLists { get; }

Property Value

ProcessLists

Exceptions

InvalidOperationException

The game has not built the ProcessLists yet.

ProjectileManager

The game's only Projectile.Manager.

Every projectile in flight. A projectile is otherwise reached one at a time, through ObjectReference.AsProjectile on a reference the plugin already has.

public Projectile.Manager ProjectileManager { get; }

Property Value

Projectile.Manager

Exceptions

InvalidOperationException

The game has not built the Projectile.Manager yet.

SaveDataSystemUtility

The game's only BSWin32SaveDataSystemUtility.

public BSWin32SaveDataSystemUtility SaveDataSystemUtility { get; }

Property Value

BSWin32SaveDataSystemUtility

Exceptions

InvalidOperationException

The game has not built the BSWin32SaveDataSystemUtility yet.

SaveLoadGame

The game's only BGSSaveLoadGame.

public BGSSaveLoadGame SaveLoadGame { get; }

Property Value

BGSSaveLoadGame

Exceptions

InvalidOperationException

The game has not built the BGSSaveLoadGame yet.

SaveLoadManager

The game's only BGSSaveLoadManager.

public BGSSaveLoadManager SaveLoadManager { get; }

Property Value

BGSSaveLoadManager

Exceptions

InvalidOperationException

The game has not built the BGSSaveLoadManager yet.

ScaleformManager

The game's only BSScaleformManager.

public BSScaleformManager ScaleformManager { get; }

Property Value

BSScaleformManager

Exceptions

InvalidOperationException

The game has not built the BSScaleformManager yet.

ScreenSplatter

The game's only ScreenSplatter.

public ScreenSplatter ScreenSplatter { get; }

Property Value

ScreenSplatter

Exceptions

InvalidOperationException

The game has not built the ScreenSplatter yet.

ScriptEventSourceHolder

The game's only ScriptEventSourceHolder.

The source of about sixty of the game's own events. The generated event sinks already subscribe through it, so a plugin wanting one of those events has that route already. This reaches the object itself.

public ScriptEventSourceHolder ScriptEventSourceHolder { get; }

Property Value

ScriptEventSourceHolder

Exceptions

InvalidOperationException

The game has not built the ScriptEventSourceHolder yet.

Sky

The game's only Sky.

The weather, climate, and region in effect, rather than one looked up by ID. A weather form describes what a storm would look like. This reports which one is overhead, how far into it the sky is, whether it is raining, and what the hour is. A weather can also be forced here, and the sky reset afterwards.

public Sky Sky { get; }

Property Value

Sky

Exceptions

InvalidOperationException

The game has not built the Sky yet.

SkyrimVM

The game's only SkyrimVM.

The game's own wrapper around Papyrus, declaring the machine as a member. PapyrusVirtualMachine beside it is the machine, and calling a script goes there.

public SkyrimVM SkyrimVM { get; }

Property Value

SkyrimVM

Exceptions

InvalidOperationException

The game has not built the SkyrimVM yet.

StoryEventManager

The game's only BGSStoryEventManager.

public BGSStoryEventManager StoryEventManager { get; }

Property Value

BGSStoryEventManager

Exceptions

InvalidOperationException

The game has not built the BGSStoryEventManager yet.

StoryTeller

The game's only BGSStoryTeller.

public BGSStoryTeller StoryTeller { get; }

Property Value

BGSStoryTeller

Exceptions

InvalidOperationException

The game has not built the BGSStoryTeller yet.

SubtitleManager

The game's only SubtitleManager.

public SubtitleManager SubtitleManager { get; }

Property Value

SubtitleManager

Exceptions

InvalidOperationException

The game has not built the SubtitleManager yet.

TES

The game's only TES.

public TES TES { get; }

Property Value

TES

Exceptions

InvalidOperationException

The game has not built the TES yet.

TaskQueueInterface

The game's only TaskQueueInterface.

The game's own queue of work for a later frame. ITaskQueue beside it runs managed work on the queue SKSE provides, which a plugin normally wants.

public TaskQueueInterface TaskQueueInterface { get; }

Property Value

TaskQueueInterface

Exceptions

InvalidOperationException

The game has not built the TaskQueueInterface yet.

Timer

The game's only BSTimer.

public BSTimer Timer { get; }

Property Value

BSTimer

Exceptions

InvalidOperationException

The game has not built the BSTimer yet.

TreeManager

The game's only BSTreeManager.

public BSTreeManager TreeManager { get; }

Property Value

BSTreeManager

Exceptions

InvalidOperationException

The game has not built the BSTreeManager yet.

UI

The game's only UI.

public UI UI { get; }

Property Value

UI

Exceptions

InvalidOperationException

The game has not built the UI yet.

UI3DSceneManager

The game's only UI3DSceneManager.

public UI3DSceneManager UI3DSceneManager { get; }

Property Value

UI3DSceneManager

Exceptions

InvalidOperationException

The game has not built the UI3DSceneManager yet.

UIBlurManager

The game's only UIBlurManager.

public UIBlurManager UIBlurManager { get; }

Property Value

UIBlurManager

Exceptions

InvalidOperationException

The game has not built the UIBlurManager yet.

UIMessageQueue

The game's only UIMessageQueue.

How a menu is opened or closed. UI says which menus are open and returns each one. This is the only thing that changes that, by posting a message naming the menu and what to do with it. The game reads its queue on its own thread, so a message is a request rather than an action taken.

public UIMessageQueue UIMessageQueue { get; }

Property Value

UIMessageQueue

Exceptions

InvalidOperationException

The game has not built the UIMessageQueue yet.

UserEvents

The game's only UserEvents.

The canonical names of the controls, being the strings that key the control map. A control is named the same way in every reading of the map, and these are those names.

public UserEvents UserEvents { get; }

Property Value

UserEvents

Exceptions

InvalidOperationException

The game has not built the UserEvents yet.

VATS

The game's only VATS.

public VATS VATS { get; }

Property Value

VATS

Exceptions

InvalidOperationException

The game has not built the VATS yet.

WaterSystem

The game's only TESWaterSystem.

public TESWaterSystem WaterSystem { get; }

Property Value

TESWaterSystem

Exceptions

InvalidOperationException

The game has not built the TESWaterSystem yet.