Spoiler
Â
============================================================================
IMAGE COMPONENTS
============================================================================
1. Fill - part of a gauge that displays how much it is filled.
2. Cursor - part of a gauge that indicates where to fill only (range)
3. Lifetime - similar to Fill image but is filled based on the lifetime specified
4. Background - for aesthetics. Rendered first
5. Foreground - for aesthetics. Rendered last
============================================================================
USAGE
============================================================================
To setup a gauge, create an event with a script call:
 $gameSystem.gauge("gaugeId");
 Replace 'gaugeId' to any text. This is used for identifying and managing multiple gauges
(see Chained Functions Reference for setup options)
Determining Results:
 Depending on the type, the results can be placed on a variable:Â
   1 - success, 2 - failure, 3 - canceled
 Also, an alternative and more flexible way is to use:
   a. $gameSystem.("gaugeId").isSuccess()
   b. $gameSystem.("gaugeId").isFailed()
   c. $gameSystem.("gaugeId").isCancelled()
============================================================================
Functions Reference:
============================================================================
FILL Options:
 $gameSystem.gauge("gaugeId").fill(imageName, offsetX, offsetY);
   Sets the fill image of the gauge. Offsets are relative to the background.
   Offsets are optional and defaults to 0.
 $gameSystem.gauge("gaugeId").fillSpeed(value);
   Sets the speed in frames of the filling motion of the gauge. Default 1
 $gameSystem.gauge("gaugeId").emptySpeed(value);
   Sets the speed in frames of the emptying motion of the gauge.Â
   If not set, emptySpeed will take fillSpeed's value
 $gameSystem.gauge("gaugeId").fillReset();
   Sets reset fill to true. The filling motion will return to 0 when gaugeÂ
   is filled to the max and OK button is still pressed. Default false.
  Â
CURSOR Options:
 $gameSystem.gauge("gaugeId").cursor(imageName);
   Sets the cursor image of the gauge. Cursor is automatically centered vertically to
   the fill image and is positioned horizontally based on the successPoint specified.
 $gameSystem.gauge("gaugeId").movingCursor();
   Sets the cursor to move along the horizontal width of the fill image.
   If this is called, the fill is 'filled' to the max and will wait for OK button to
   determine the result based on the successPoint specified.
 $gameSystem.gauge("gaugeId").bounceCursor();
   Sets the cursor to move back and forth along the horizontal width of the fill image.
   This will only take effect if the cursor is moving.Â
   Default movement is it resets the position to the starting point.
 $gameSystem.gauge("gaugeId").cursorStartLeft();
   Sets the start position of the moving cursor to the left most part of the fill image.
 $gameSystem.gauge("gaugeId").cursorStartRight();
   Sets the start position of the moving cursor to the right most part of the fill image.
 $gameSystem.gauge("gaugeId").cursorSpeed(value);
   Sets the speed in frames the cursor will be moving.
  Â
LIFETIME Options:
 $gameSystem.gauge("gaugeId").lifetime(imageName, offsetX, offsetY);
   Sets the lifetime/timer image of the gauge. Offsets are relative to the background.
   Offsets are optional and defaults to 0.
 $gameSystem.gauge("gaugeId").lifetimeValue(value);
   Sets the life value in frames. In normal circumstances, 60 frames = 1 second
 $gameSystem.gauge("gaugeId").eternalLife();
   Sets the life of the gauge to be 'infinite'. If this is called, only OK and cancel buttons
   can stop the gauge(aside from the refresh button).
 $gameSystem.gauge("gaugeId").lifetimeDecreasing();
   Sets the fill type of the lifetime image to be from 'full' to 'empty'.
   By default, lifetime is decreasing.
 $gameSystem.gauge("gaugeId").lifetimeIncreasing();
   Sets the fill type of the lifetime image to be from 'empty' to 'full'.
   By default, lifetime is decreasing.
  Â
ROTATION Options:
 $gameSystem.gauge("gaugeId").rotateClockwise90();
   Sets the rotation of the whole gauge to 90 degrees clockwise.
 $gameSystem.gauge("gaugeId").rotateCounter90();
   Sets the rotation of the whole gauge to 90 decrees counter clockwise or -90.
 $gameSystem.gauge("gaugeId").rotateClockwise(degrees);
   Sets the rotation of the whole gauge to the specified degrees clockwise.
 $gameSystem.gauge("gaugeId").rotateCounter(degrees);
   Sets the rotation of the whole gauge to the specified degrees counter clockwise.
 NOTE: rotation options may mess up the positioning.Â
   $gameSystem.gauge("gaugeId").offset(x,y) should be used to this.
  Â
POSITIONING Options:
 $gameSystem.gauge("gaugeId").upperLeft();
   Sets the position of the gauge to the upper left of the screen.
 $gameSystem.gauge("gaugeId").upperCenter();
   Sets the position of the gauge to the upper center of the screen.
 $gameSystem.gauge("gaugeId").upperRight();
   Sets the position of the gauge to the upper right of the screen.
 $gameSystem.gauge("gaugeId").centerLeft();
   Sets the position of the gauge to the center left of the screen.
 $gameSystem.gauge("gaugeId").centerCenter();
   Sets the position of the gauge to the center of the screen.
 $gameSystem.gauge("gaugeId").centerRight();
   Sets the position of the gauge to the center right of the screen.
 $gameSystem.gauge("gaugeId").lowerLeft();
   Sets the position of the gauge to the lower left of the screen.
 $gameSystem.gauge("gaugeId").lowerCenter();
   Sets the position of the gauge to the lower center of the screen.
 $gameSystem.gauge("gaugeId").lowerRight();
   Sets the position of the gauge to the lower right of the screen.
 $gameSystem.gauge("gaugeId").abovePlayer();
   Sets the position of the gauge to be above the player.
 $gameSystem.gauge("gaugeId").belowPlayer();
   Sets the position of the gauge to be below the player.
 $gameSystem.gauge("gaugeId").aboveEvent(mapEventId);
   Sets the position of the gauge to be above a specified map event.
 $gameSystem.gauge("gaugeId").belowEvent(mapEventId);
   Sets the position of the gauge to be below a specified map event.
 $gameSystem.gauge("gaugeId").offset(x, y);
   Moves the gauge by the specifed offsets x and y. This is relative to the position
   specified above.
  Â
SUCCESS and AFTER ACTION Related Options:
 $gameSystem.gauge("gaugeId").successPoint(value);
   Sets the position in percentage of the cursor along the Fill component's width.
   For example the Fill component's width is 200 and the specified cursor point is 50,
   the cursor image will be placed in the middle of the Fill component since the cursor point
   is specified as 50 percent.
   Values: 1 - 100
 $gameSystem.gauge("gaugeId").successPointAbove();
   Sets that the success result will be determined above the success point specified.
   For example: successPoint = 75. Success result will be from 75-100
 $gameSystem.gauge("gaugeId").successPointBelow();
   Sets that the success result will be determined below the success point specified.
   For example: successPoint = 75. Success result will be from 0-75
 $gameSystem.gauge("gaugeId").successPointRange(min, max);
   Sets the success point as a range. This overwrites the success point specified.
 $gameSystem.gauge("gaugeId").mapEventId(mapEventId);
   Sets the map event id to be called once the gauge action is finished
   NOTE: common event will override this
 $gameSystem.gauge("gaugeId").commonEventId(commonEventId);
   Sets the common event id to be called once the gauge action is finished
 $gameSystem.gauge("gaugeId").resultVariableId(variableId);
   Sets the result value to the variable specified.
   1 - success, 2 - failure, 3 - canceled
  Â
OTHER functions:
 $gameSystem.gauge("gaugeId").background(imageName, offsetX, offsetY);
   Sets the background image of the gauge. Offsets are relative to the whole gauge.
   Offsets are optional and defaults to 0.
 $gameSystem.gauge("gaugeId").foreground(imageName, offsetX, offsetY);
   Sets the foreground image of the gauge. Offsets are relative to the whole gauge.
   Offsets are optional and defaults to 0.
 $gameSystem.gauge("gaugeId").noAction();
   Sets the gauge to not handle any action, OK/cancel button.Â
   If this is called, lifetime image is the only required image.Â
   This is used for casting only gauges.
 $gameSystem.gauge("gaugeId").allowMovement();
   If this is called, player can move around while the gauge is running.
 $gameSystem.gauge("gaugeId").pauseBeforeFadeOut(frames);
   Sets the number of frames the gauge will display after an action and result has been
   determined and before starting fade out.
 $gameSystem.gauge("gaugeId").fadeOutSpeed(value);
   Sets how fast the gauge will fade out.Â
 $gameSystem.gauge("gaugeId").fadeOutInstant();
   Sets the fade out speed to 255 to completely fadeout in 1 frame.
 $gameSystem.gauge("gaugeId").waitToFinish();Â
   Prevents the event(where this gauge is called to start) to proceed to the next command
   in the event's command queue.
Â
START function:Â
 $gameSystem.gauge("gaugeId").start();
   called to start and display the gauge.
   Â
RESULT RELATED functions: Usually called used Conditional Branches in events.
 $gameSystem.gauge("gaugeId").isMoving();
   Returns true if the gauge is currently moving. Where the fill is 'filling'
   or the cursor is moving.
 $gameSystem.gauge("gaugeId").isDead();
   Returns true if the gauge's lifetime is consumed. Gauge is considered dead
   if the action is canceled also.
 $gameSystem.gauge("gaugeId").isSuccess();
   Returns true if the result is success!
 $gameSystem.gauge("gaugeId").isFailed();
   Returns true if the result is failed!
 $gameSystem.gauge("gaugeId").isCancelled();
   Returns true if the action is cancelled!
  Â
============================================================================
Chained Functions:
============================================================================
Most of the above functions, except RESULT RELATED functions are chained functions.
Chained functions can be called together in a single line without repeating $gameSystem.gauge("gaugeId")
Example:Â
   $gameSystem.gauge("fishing").fill("DefaultFill",81,27).cursor("DefaultCursor");
   $gameSystem.gauge("fishing").background("DefaultBackground").foreground("FishingIcon");
   $gameSystem.gauge("fishing").lifetime("DefaultTimer",81,77);
   $gameSystem.gauge("fishing").waitToFinish().start();
============================================================================
Gauge Setup Events
============================================================================
Gauges setup script calls can now be placed in a 1 time running map event.
You can have 1 map event that setups all gauges on map and when you want toÂ
use the gauge you can call the start() function any time.Â
Be sure that you don't call the start() function in the setup event.
Example:
 Map Event 001: Setup gauge "fishing", "drilling"
 Map Event 002: Call and display the fishing gauge
   $gameSystem.gauge("fishing").start();
 Map Event 003: Call and display the drilling gauge  Â
   $gameSystem.gauge("drilling").start();
 Map Event 004: Call and display the fishing gauge again without repeating the setup
   $gameSystem.gauge("fishing").start();
Â