## Phaser. PluginManager

#### new PluginManager(game)

  The Plugin Manager is responsible for the loading, running and unloading of Phaser Plugins.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `game` | Phaser.Game | A reference to the currently running game.

  Source - core/PluginManager.js, line 16

### Members

#### game :Phaser.Game

  A reference to the currently running game.

  Source - core/PluginManager.js, line 21

#### plugins :Array.<Phaser.Plugin>

  An array of all the plugins being managed by this PluginManager.

  ##### Type:

  - Array.<Phaser.Plugin>
  Source - core/PluginManager.js, line 26

### Methods

#### add(plugin, parameter) → {Phaser.Plugin}

  Add a new Plugin into the PluginManager.
  The Plugin must have 2 properties: game and parent. Plugin.game is set to the game reference the PluginManager uses, and parent is set to the PluginManager.

  ##### Parameters:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `plugin` | object | Phaser.Plugin |  | The Plugin to add into the PluginManager. This can be a function or an existing object.
  `parameter` | * | <repeatable> | Additional arguments that will be passed to the Plugin.init method.

  ##### Returns:

  Phaser.Plugin -

  The Plugin that was added to the manager.

  Source - core/PluginManager.js, line 44

#### destroy()

  Clear down this PluginManager, calls destroy on every plugin and nulls out references.

  Source - core/PluginManager.js, line 279

#### postRender()

  Post-render is called after the Game Renderer and State.render have run.
  It only calls plugins who have visible=true.

  Source - core/PluginManager.js, line 259

#### postUpdate()

  PostUpdate is the last thing to be called before the world render.
  In particular, it is called after the world postUpdate, which means the camera has been adjusted.
  It only calls plugins who have active=true.

  Source - core/PluginManager.js, line 218

#### preUpdate()

  Pre-update is called at the very start of the update cycle, before any other subsystems have been updated (including Physics).
  It only calls plugins who have active=true.

  Source - core/PluginManager.js, line 178

#### remove(plugin, destroy)

  Remove a Plugin from the PluginManager. It calls Plugin.destroy on the plugin before removing it from the manager.

  ##### Parameters:

  Name | Type | Argument | Default | Description
  --- | --- | --- | --- | ---
  `plugin` | Phaser.Plugin |  |  | The plugin to be removed.
  `destroy` | boolean | <optional> | true | Call destroy on the plugin that is removed?

  Source - core/PluginManager.js, line 129

#### removeAll()

  Remove all Plugins from the PluginManager. It calls Plugin.destroy on every plugin before removing it from the manager.

  Source - core/PluginManager.js, line 159

#### render()

  Render is called right after the Game Renderer completes, but before the State.render.
  It only calls plugins who have visible=true.

  Source - core/PluginManager.js, line 239

#### update()

  Update is called after all the core subsystems (Input, Tweens, Sound, etc) and the State have updated, but before the render.
  It only calls plugins who have active=true.

  Source - core/PluginManager.js, line 198