mirror of
https://github.com/photonstorm/phaser
synced 2024-11-23 13:13:43 +00:00
Added jsdocs
This commit is contained in:
parent
ad6c08a4d0
commit
42cc4acf00
2 changed files with 107 additions and 44 deletions
|
@ -13,36 +13,6 @@ var GetFastValue = require('../utils/object/GetFastValue');
|
|||
var PluginManager = require('../boot/PluginManager');
|
||||
var XHRSettings = require('./XHRSettings');
|
||||
|
||||
/**
|
||||
* @typedef {object} MultiFileObject
|
||||
*
|
||||
* @property {string} type - [description]
|
||||
* @property {Phaser.Loader.File} fileA - [description]
|
||||
* @property {Phaser.Loader.File} fileB - [description]
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {object} LoaderFileObject
|
||||
*
|
||||
* @property {string} key - [description]
|
||||
* @property {string} type - [description]
|
||||
* @property {string} [url] - [description]
|
||||
* @property {string[]} [urls] - [description]
|
||||
* @property {string} [textureURL] - [description]
|
||||
* @property {string} [atlasURL] - [description]
|
||||
* @property {string} [xmlURL] - [description]
|
||||
* @property {string[]} [textureURLs] - [description]
|
||||
* @property {string[]} [atlasURLs] - [description]
|
||||
* @property {object} [config] - [description]
|
||||
* @property {object} [json] - [description]
|
||||
* @property {XHRSettingsObject} [xhrSettings] - [description]
|
||||
* @property {XHRSettingsObject} [textureXhrSettings] - [description]
|
||||
* @property {XHRSettingsObject} [atlasXhrSettings] - [description]
|
||||
* @property {XHRSettingsObject} [xmlXhrSettings] - [description]
|
||||
* @property {XHRSettingsObject} [audioXhrSettings] - [description]
|
||||
* @property {XHRSettingsObject} [jsonXhrSettings] - [description]
|
||||
*/
|
||||
|
||||
/**
|
||||
* @classdesc
|
||||
* The Loader handles loading all external content such as Images, Sounds, Texture Atlases and data files.
|
||||
|
@ -483,6 +453,16 @@ var LoaderPlugin = new Class({
|
|||
return this;
|
||||
},
|
||||
|
||||
/**
|
||||
* This event is fired when a Loader successfully begins to load its queue.
|
||||
*
|
||||
* @event Phaser.Loader.LoaderPlugin#addFileEvent
|
||||
* @param {string} key - The key of the file that was added.
|
||||
* @param {string} type - The type of the file that was added.
|
||||
* @param {Phaser.Loader.LoaderPlugin} loader - The Loader that had the file added to it.
|
||||
* @param {Phaser.Loader.File} loader - The File object that was added to the Loader.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Adds a file, or array of files, into the load queue.
|
||||
*
|
||||
|
@ -495,6 +475,7 @@ var LoaderPlugin = new Class({
|
|||
* however you can call this as long as the file given to it is well formed.
|
||||
*
|
||||
* @method Phaser.Loader.LoaderPlugin#addFile
|
||||
* @fires Phaser.Loader.LoaderPlugin#addFileEvent
|
||||
* @since 3.0.0
|
||||
*
|
||||
* @param {(Phaser.Loader.File|Phaser.Loader.File[])} file - The file, or array of files, to be added to the load queue.
|
||||
|
@ -516,6 +497,8 @@ var LoaderPlugin = new Class({
|
|||
{
|
||||
this.list.set(item);
|
||||
|
||||
this.emit('addfile', item.key, item.type, this, item);
|
||||
|
||||
if (this.isLoading())
|
||||
{
|
||||
this.totalToLoad++;
|
||||
|
|
|
@ -11,9 +11,35 @@ var FileTypesManager = require('../FileTypesManager');
|
|||
var GetFastValue = require('../../utils/object/GetFastValue');
|
||||
var IsPlainObject = require('../../utils/object/IsPlainObject');
|
||||
|
||||
/**
|
||||
* @typedef {object} Phaser.Loader.FileTypes.ImageFrameConfig
|
||||
*
|
||||
* @property {integer} frameWidth - The width of the frame in pixels.
|
||||
* @property {integer} [frameHeight] - The height of the frame in pixels. Uses the `frameWidth` value if not provided.
|
||||
* @property {integer} [startFrame=0] - The first frame to start parsing from.
|
||||
* @property {integer} [endFrame] - The frame to stop parsing at. If not provided it will calculate the value based on the image and frame dimensions.
|
||||
* @property {integer} [margin=0] - The margin in the image. This is the space around the edge of the frames.
|
||||
* @property {integer} [spacing=0] - The spacing between each frame in the image.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {object} Phaser.Loader.FileTypes.ImageFileConfig
|
||||
*
|
||||
* @property {string} key - The key of the file. Must be unique within both the Loader and the Texture Manager.
|
||||
* @property {string} [url] - The absolute or relative URL to load the file from.
|
||||
* @property {string} [extension='png'] - The default file extension to use if no url is provided.
|
||||
* @property {string} [normalMap] - The filename of an associated normal map. It uses the same path and url to load as the image.
|
||||
* @property {Phaser.Loader.FileTypes.ImageFrameConfig} [frameConfig] - The frame configuration object. Only provided for, and used by, Sprite Sheets.
|
||||
* @property {XHRSettingsObject} [xhrSettings] - Extra XHR Settings specifically for this file.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @classdesc
|
||||
* [description]
|
||||
* A single Image File suitable for loading by the Loader.
|
||||
*
|
||||
* These are created when you use the Phaser.Loader.LoaderPlugin#image method and are not typically created directly.
|
||||
*
|
||||
* For documentation about what all the arguments and configuration options mean please see Phaser.Loader.LoaderPlugin#image.
|
||||
*
|
||||
* @class ImageFile
|
||||
* @extends Phaser.Loader.File
|
||||
|
@ -21,11 +47,11 @@ var IsPlainObject = require('../../utils/object/IsPlainObject');
|
|||
* @constructor
|
||||
* @since 3.0.0
|
||||
*
|
||||
* @param {(string|object)} key - The name of the asset to load or an object representing the asset
|
||||
* @param {string} [url] - The asset's filename
|
||||
* @param {string} [path] - The path the asset can be found in
|
||||
* @param {XHRSettingsObject} [xhrSettings] - Optional image specific XHR settings
|
||||
* @param {object} [frameConfig] - config can include: frameWidth, frameHeight, startFrame, endFrame, margin, spacing
|
||||
* @param {Phaser.Loader.LoaderPlugin} loader - A reference to the Loader that is responsible for this file.
|
||||
* @param {(string|Phaser.Loader.FileTypes.ImageFileConfig)} key - The key to use for this file, or a file configuration object.
|
||||
* @param {string} [url] - The absolute or relative URL to load this file from. If undefined or `null` it will be set to `<key>.png`, i.e. if `key` was "alien" then the URL will be "alien.png".
|
||||
* @param {XHRSettingsObject} [xhrSettings] - Extra XHR Settings specifically for this file.
|
||||
* @param {Phaser.Loader.FileTypes.ImageFrameConfig} [frameConfig] - The frame configuration object. Only provided for, and used by, Sprite Sheets.
|
||||
*/
|
||||
var ImageFile = new Class({
|
||||
|
||||
|
@ -82,6 +108,13 @@ var ImageFile = new Class({
|
|||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Called automatically by Loader.nextFile.
|
||||
* This method controls what extra work this File does with its loaded data.
|
||||
*
|
||||
* @method Phaser.Loader.FileTypes.ImageFile#onProcess
|
||||
* @since 3.7.0
|
||||
*/
|
||||
onProcess: function ()
|
||||
{
|
||||
this.state = CONST.FILE_PROCESSING;
|
||||
|
@ -109,6 +142,12 @@ var ImageFile = new Class({
|
|||
File.createObjectURL(this.data, this.xhrLoader.response, 'image/png');
|
||||
},
|
||||
|
||||
/**
|
||||
* Adds this file to its target cache upon successful loading and processing.
|
||||
*
|
||||
* @method Phaser.Loader.FileTypes.ImageFile#addToCache
|
||||
* @since 3.7.0
|
||||
*/
|
||||
addToCache: function ()
|
||||
{
|
||||
var texture;
|
||||
|
@ -141,21 +180,62 @@ var ImageFile = new Class({
|
|||
});
|
||||
|
||||
/**
|
||||
* Adds an Image file to the current load queue.
|
||||
* Adds an Image, or array of Images, to the current load queue.
|
||||
*
|
||||
* Note: This method will only be available if the Image File type has been built into Phaser.
|
||||
* The file is **not** loaded immediately, it is added to a queue ready to be loaded either when the loader starts,
|
||||
* or if it's already running, when the next free load slot becomes available. This means you cannot use the file
|
||||
* immediately after calling this method, but instead my wait for the file to complete.
|
||||
*
|
||||
* Phaser can load all common image types: png, jpg, gif and any other format the browser can natively handle.
|
||||
* If you try to load an animated gif only the first frame will be rendered. Browsers do not natively support playback
|
||||
* of animated gifs to Canvas elements.
|
||||
*
|
||||
* The file is **not** loaded immediately after calling this method.
|
||||
* Instead, the file is added to a queue within the Loader, which is processed automatically when the Loader starts.
|
||||
* The key must be a unique String. It is used to add the file to the global Texture Manager upon a successful load.
|
||||
* The key should be unique both in terms of files being loaded and files already present in the Texture Manager.
|
||||
* Loading a file using a key that is already taken will result in a warning. If you wish to replace an existing file
|
||||
* then remove it from the Texture Manager first, before loading a new one.
|
||||
*
|
||||
* Instead of passing arguments you can pass a configuration object, such as:
|
||||
*
|
||||
* ```javascript
|
||||
* this.load.image({
|
||||
* key: 'logo',
|
||||
* url: 'images/AtariLogo.png'
|
||||
* });
|
||||
* ```
|
||||
*
|
||||
* See the documentation for `Phaser.Loader.FileTypes.ImageFileConfig` for more details.
|
||||
*
|
||||
* Once the file has finished loading you can use it as a texture for a Game Object by referencing its key:
|
||||
*
|
||||
* ```javascript
|
||||
* this.load.image('logo', 'images/AtariLogo.png');
|
||||
* // and later in your game ...
|
||||
* this.add.image(x, y, 'logo');
|
||||
* ```
|
||||
*
|
||||
* If you have specified a prefix in the loader, via `Loader.setPrefix` then this value will be prepended to this files
|
||||
* key. For example, if the prefix was `MENU.` and the key was `Background` the final key will be `MENU.Background` and
|
||||
* this is what you would use to retrieve the image from the Texture Manager.
|
||||
*
|
||||
* The URL can be relative or absolute. If the URL is relative the `Loader.baseURL` and `Loader.path` values will be prepended to it.
|
||||
*
|
||||
* If the URL isn't specified the Loader will take the key and create a filename from that. For example if the key is "alien"
|
||||
* and no URL is given then the Loader will set the URL to be "alien.png". It will always add `.png` as the extension, although
|
||||
* this can be overridden if using an object instead of method arguments. If you do not desire this action then provide a URL.
|
||||
*
|
||||
* Note: Th ability to load this type of file will only be available if the Image File type has been built into Phaser.
|
||||
* It is available in the default build but can be excluded from custom builds.
|
||||
*
|
||||
* @method Phaser.Loader.LoaderPlugin#image
|
||||
* @fires Phaser.Loader.LoaderPlugin#addFileEvent
|
||||
* @since 3.0.0
|
||||
*
|
||||
* @param {string} key - [description]
|
||||
* @param {string} url - [description]
|
||||
* @param {XHRSettingsObject} [xhrSettings] - [description]
|
||||
* @param {(string|Phaser.Loader.FileTypes.ImageFileConfig|Phaser.Loader.FileTypes.ImageFileConfig[])} key - The key to use for this file, or a file configuration object, or array of them.
|
||||
* @param {string} [url] - The absolute or relative URL to load this file from. If undefined or `null` it will be set to `<key>.png`, i.e. if `key` was "alien" then the URL will be "alien.png".
|
||||
* @param {XHRSettingsObject} [xhrSettings] - An XHR Settings configuration object. Used in replacement of the Loaders default XHR Settings.
|
||||
*
|
||||
* @return {Phaser.Loader.LoaderPlugin} The Loader.
|
||||
* @return {Phaser.Loader.LoaderPlugin} The Loader instance.
|
||||
*/
|
||||
FileTypesManager.register('image', function (key, url, xhrSettings)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue