Class SwitchSystem<RoomType>

Represents a system responsible for handling switches in Electrical.

See SwitchSystemEvents for events to listen to.

Type Parameters

Hierarchy

Implements

Methods

  • Read the value of each switch from a byte.

    Returns

    An array of the value of each switch.

    Example

    console.log(readSwitches(0x5));
    // [ true, false, true, false, false ]

    Parameters

    • byte: number

      The byte to read from.

    Returns SwitchSetup

  • Write the value of each switch to a byte.

    Returns

    The byte representation of the switches.

    Example

    console.log(writeSwitches([ false, true, false, false, true ]));
    // 0x12 (18)

    Parameters

    • switches: SwitchSetup

      An array of the value of each switch.

    Returns number

  • Parameters

    Returns void

  • Parameters

    • delta: number

    Returns void

  • Parameters

    Returns void

  • Type Parameters

    • Event extends BasicEvent<Event>

    Parameters

    • event: Event

    Returns Promise<Event>

  • Type Parameters

    • Event extends BasicEvent<Event>

    Parameters

    • event: Event

    Returns Promise<Event>

  • Type Parameters

    • Event extends BasicEvent<Event>

    Parameters

    • event: Event

    Returns Event

  • Invert the position of a switch.

    Example

    // Invert the position of each switch.
    for (let i = 0; i < 5; i++) {
    electrical.flip(i);
    }

    Parameters

    • num: number

      The ID of the switch to invert.

    Returns Promise<void>

  • Type Parameters

    • Event extends BasicEvent<Event> = BasicEvent

    Parameters

    • event: string

    Returns Listener<Event>[]

  • Type Parameters

    • EventName extends "doors.open" | "doors.close" | "system.sabotage" | "system.repair" | "electrical.switchflip"

    Parameters

    Returns void

  • Type Parameters

    • K extends BasicEvent<K>

    Parameters

    • event: string
    • listener: Listener<K>

    Returns void

  • Type Parameters

    • EventName extends "doors.open" | "doors.close" | "system.sabotage" | "system.repair" | "electrical.switchflip"

    Parameters

    Returns (() => void)

      • (): void
      • Returns void

  • Type Parameters

    • K extends BasicEvent<K>

    Parameters

    • event: string
    • listener: Listener<K>

    Returns (() => void)

      • (): void
      • Returns void

  • Type Parameters

    • EventName extends "doors.open" | "doors.close" | "system.sabotage" | "system.repair" | "electrical.switchflip"

    Parameters

    Returns (() => void)

      • (): void
      • Returns void

  • Type Parameters

    • K extends BasicEvent<K>

    Parameters

    • event: string
    • listener: Listener<K>

    Returns (() => void)

      • (): void
      • Returns void

  • Returns void

  • Parameters

    • event: string

    Returns void

  • Fully repair this system.

    Returns Promise<void>

  • Sabotage this system.

    Returns Promise<void>

  • Set the value of a switch as flipped or not flipped

    Example

    // Randomise each switch.
    for (let i = 0; i < 5; i++) {
    electrical.setSwitch(i, Math.random() > 0.5);
    }

    Parameters

    • num: number

      The ID of the switch to flip.

    • value: boolean

      Whether the switch is flipped.

    Returns Promise<void>

  • Type Parameters

    • EventName extends "doors.open" | "doors.close" | "system.sabotage" | "system.repair" | "electrical.switchflip"

    Parameters

    • event: EventName

    Returns Promise<SwitchSystemEvents<Hostable<any>>[EventName]>

  • Parameters

    • event: string

    Returns Promise<BasicEvent>

  • Type Parameters

    • EventName extends "doors.open" | "doors.close" | "system.sabotage" | "system.repair" | "electrical.switchflip"

    Parameters

    Returns Promise<SwitchSystemEvents<Hostable<any>>[EventName]>

  • Type Parameters

    • K extends BasicEvent<K>

    Parameters

    • event: string
    • filter: ((ev: K) => boolean | Promise<boolean>)
        • (ev: K): boolean | Promise<boolean>
        • Parameters

          • ev: K

          Returns boolean | Promise<boolean>

    Returns Promise<BasicEvent>

Properties

actual: SwitchSetup

The current switch states.

brightness: number

The brightness of lights.

expected: SwitchSetup

The switch states that are expected.

systemType: SystemType

Constructors

Accessors

  • get dirty(): boolean
  • Returns boolean

  • set dirty(isDirty: boolean): void
  • Parameters

    • isDirty: boolean

    Returns void

  • get room(): RoomType
  • Return the room that this system belongs to.

    Returns RoomType

  • get sabotaged(): boolean
  • Whether or not this system is sabotaged.

    Returns boolean

Generated using TypeDoc