Skip to content

Game.Modding.Toolchain.ModdingToolStatus

Assembly: Assembly-CSharp
Namespace: Game.Modding.Toolchain

Type: enum

Base: System.Enum

Summary: Represents the current operation state of a modding tool in the toolchain (for example, a tool that installs or uninstalls mods). Use this enum to track or branch logic based on whether the tool is idle, performing an install, or performing an uninstall.


Fields

  • Idle
    The tool is not performing any operation. This is the default/resting state.

  • Installing
    The tool is currently performing an installation operation (installing a mod or package, running installation steps, etc.).

  • Uninstalling
    The tool is currently performing an uninstallation operation (removing a mod or package, running cleanup steps, etc.).

Properties

  • This enum exposes no custom properties. It inherits the standard System.Enum behavior (e.g., ToString(), HasFlag(), etc.).

Constructors

  • Enums do not define public constructors. Instances are represented by the named members above.

Methods

  • No custom methods are defined on this enum. Standard System.Enum static and instance methods are available (Parse, TryParse, GetValues, ToString, etc.).

Usage Example

// Example: simple state handling for a modding tool
using Game.Modding.Toolchain;

public class ModdingToolController
{
    private ModdingToolStatus status = ModdingToolStatus.Idle;

    public void StartInstall()
    {
        status = ModdingToolStatus.Installing;
        // kick off installation workflow...
    }

    public void StartUninstall()
    {
        status = ModdingToolStatus.Uninstalling;
        // kick off uninstallation workflow...
    }

    public void UpdateUI()
    {
        switch (status)
        {
            case ModdingToolStatus.Idle:
                ShowIdleState();
                break;
            case ModdingToolStatus.Installing:
                ShowInstallingProgress();
                break;
            case ModdingToolStatus.Uninstalling:
                ShowUninstallingProgress();
                break;
        }
    }

    private void ShowIdleState() { /* ... */ }
    private void ShowInstallingProgress() { /* ... */ }
    private void ShowUninstallingProgress() { /* ... */ }
}