AdvancedLaserController

Updated 2 years ago

AdvancedLaserController

Description

This class serves to enable/disable multiple items in a list, specifically designed for use with Lasers and Flashlights. It is set up to work with CityRobo's pressurepad system. It requires that all lists contain the same number of indexes, as this system was designed before I could make serialized classes with Meatkit.

Parameters

  • AttachmentInterface (FVRInteractiveObject): The attachment interface we're watching
  • DisplayRotPoint (Transform): The transform used to rotate the text based on the attachment orientation.
  • Canvas (GameObject): The text canvas used to display options
  • ListOfEmitterTexts (List<Text>): The list of text boxes to use
  • ListOfEmitterNames (List<string>): The list of text prefixes to each option, eg "IR: "
  • ListOfEmitterObjects (List<GameObject>): The list of primary emitter objects, such as the lasers or flashlights themselves
  • ListOfEmittersTandemItems (List<GameObject>): The list of tandem items to be enabled with the primary item, eg IR designator, Laser accent light
  • ListOfEmitterTypes (List<Types>): List of the functions each mode does, used by City's touchpad script
  • EmitterMode (Setting[]): Stores the current state of each emitter, off by default.
  • TextFrame (GameObject): The text frame to be moved between the active option
  • FrameLArrow (GameObject): The left arrow of the text frame
  • FrameRArrow (GameObject): The right arrow of the text frame
  • EmitterOnAudio (AudioEvent): The audio played on option activation
  • EmitterOffAudio (AudioEvent): The audio played on option deactivation

Example usage

Usage of this script can be found on all ModernWarfighter Lights and Lasers.