generated from nhcarrigan/template
198 lines
7.7 KiB
JavaScript
198 lines
7.7 KiB
JavaScript
//=============================================================================
|
|
// Bluebooth Plugins - Version Display
|
|
// BBS_VersionDisplay.js
|
|
//=============================================================================
|
|
|
|
//=============================================================================
|
|
/*:
|
|
* @title Version Display
|
|
* @author Michael Morris (https://www.patreon.com/bluebooth)
|
|
* @date May 29, 2017
|
|
* @filename BBS_VersionDisplay.js
|
|
* If you enjoy my work, consider supporting me on Patreon!
|
|
*
|
|
* https://www.patreon.com/bluebooth
|
|
*
|
|
* @plugindesc v1.02 Adds display of the game version to the title screen.
|
|
* Special Thanks to Tsukihime for all the help.
|
|
* Special Thanks to 'Ramza' Michael Sweeney for all the support.
|
|
*
|
|
* ============================================================================
|
|
* Parameters
|
|
* ============================================================================
|
|
*
|
|
* @param Game Version Number
|
|
* @desc Game Version. Recommend using format [MILESTONE].[MAJOR].[MINOR]
|
|
* Default: 1.0.0
|
|
* @default 1.0.0
|
|
*
|
|
* @param Game Version Font
|
|
* @desc Font face for the version number. Leave blank to use standard. See help.
|
|
* @default
|
|
*
|
|
* @param Version Font Size
|
|
* @desc Font size for the version number in the details window.
|
|
* Default: 20
|
|
* @default 20
|
|
*
|
|
* @param Show Version Number?
|
|
* @desc true to show version number, false to hide. Useful if you want to store version
|
|
* number without showing it.
|
|
* Default: true
|
|
* @default true
|
|
*
|
|
* @param Version Text Color
|
|
* @desc Version font color. Use system color name.
|
|
* Leave blank to use standard color.
|
|
* @default white
|
|
*
|
|
* @param Version Outline Color
|
|
* @desc Version text outline color. Use system color name.
|
|
* Leave blank to use standard.
|
|
* @default black
|
|
*
|
|
* @param Version Outline Width
|
|
* @desc Version text outline width. Use system color number, or leave blank
|
|
* blank to use standard.
|
|
* @default 8
|
|
*
|
|
* @param Title Italic
|
|
* @desc Version font in Italics? YES: true NO: false
|
|
* Default: false
|
|
* @default false
|
|
*
|
|
* @param Version Text Max Width
|
|
* @desc Max width for the game version number label. Can contain formulae!
|
|
* Default Graphics.width / 3
|
|
* @default Graphics.width / 3
|
|
*
|
|
* ============================================================================
|
|
* Terms of Use
|
|
* ============================================================================
|
|
* - Free for use in non-commercial projects and commercial products with credits
|
|
*
|
|
* @help
|
|
* ============================================================================
|
|
* Description
|
|
* ============================================================================
|
|
*
|
|
* Adds the display of a customized version number to the Title Scene. Exposes
|
|
* a variable to get version number at any time in play.
|
|
*
|
|
* Use script: $gameSystem.getVersion();
|
|
*
|
|
* ============================================================================
|
|
* Change Log
|
|
* ============================================================================
|
|
* 1.02 - Fixed display bug pointed out by Michael 'Ramza' Sweeney when using
|
|
* different resolutions.
|
|
* 1.01 - Plugin finished.
|
|
*
|
|
*/
|
|
//=============================================================================
|
|
|
|
//=============================================================================
|
|
var Imported = Imported || {} ;
|
|
var BBS = BBS || {};
|
|
Imported.VersionDisplay = 1;
|
|
BBS.VersionDisplay = BBS.VersionDisplay || {};
|
|
|
|
(function() {
|
|
|
|
//=============================================================================
|
|
// Parameter Variables
|
|
//=============================================================================
|
|
var parameters = PluginManager.parameters('BBS_VersionDisplay');
|
|
var pVersionNumber = String(parameters['Game Version Number'] || '1.0.0');
|
|
var pVersionFont = String(parameters['Game Version Font'] || '').trim();
|
|
var pFontSize = Number(parameters['Version Font Size'] || 20);
|
|
var pShowVersionNumber = eval(String(parameters['Show Version Number?'] || 'true'));
|
|
|
|
var pVersionTextColor = String(parameters['Version Text Color'] || 'white');
|
|
var pVersionOutlineColor = String(parameters['Version Outline Color'] || 'black');
|
|
var pVersionOutlineWidth = Number(parameters['Version Outline Width'] || 8);
|
|
var pVersionItalic = eval(String(parameters['Title Italic'] || 'false'));
|
|
var pVersionWidth = String(parameters['Version Text Max Width'] || 'Graphics.width / 3');
|
|
|
|
var _version = pVersionNumber; // Track the current version of the game.
|
|
var _saveVersion = pVersionNumber; // Track the version of the game last saved. This can be different from current game version.
|
|
var _defaultVersion = "version 1.0.0"; // Value to use when no _version is found.
|
|
|
|
//=============================================================================
|
|
// Game_System
|
|
//=============================================================================
|
|
Game_System.prototype.getVersion = function() {
|
|
return _version;
|
|
};
|
|
|
|
Game_System.prototype.getSaveVersion = function() {
|
|
return _saveVersion;
|
|
};
|
|
|
|
//=============================================================================
|
|
// Scene_Title
|
|
//=============================================================================
|
|
var BBS_VD_Scene_Title_createForeground = Scene_Title.prototype.createForeground;
|
|
Scene_Title.prototype.createForeground = function() {
|
|
BBS_VD_Scene_Title_createForeground.call(this);
|
|
if (pShowVersionNumber) {
|
|
this.drawGameVersion();
|
|
}
|
|
};
|
|
|
|
Scene_Title.prototype.drawGameVersion = function() {
|
|
var x = Graphics.width - (Graphics.width / 3) - 18;
|
|
var y = Graphics.height - 50;
|
|
var maxWidth = eval(pVersionWidth); //Graphics.width / 3;
|
|
|
|
// Handle customization options.
|
|
this._gameTitleSprite.bitmap.fontSize = pFontSize;
|
|
this._gameTitleSprite.bitmap.fontItalic = pVersionItalic;
|
|
|
|
if(pVersionFont !== '') {
|
|
this._gameTitleSprite.bitmap.fontFace = pVersionFont;
|
|
}
|
|
if(pVersionTextColor !== '') {
|
|
this._gameTitleSprite.bitmap.textColor = pVersionTextColor;
|
|
}
|
|
if(pVersionOutlineColor !== '') {
|
|
this._gameTitleSprite.bitmap.outlineColor = pVersionOutlineColor;
|
|
}
|
|
if(pVersionOutlineWidth !== '') {
|
|
this._gameTitleSprite.bitmap.outlineWidth = pVersionOutlineWidth;
|
|
}
|
|
|
|
// And finally... draw
|
|
this._gameTitleSprite.bitmap.drawText(pVersionNumber, x, y, maxWidth, 48, 'right');
|
|
};
|
|
|
|
//=============================================================================
|
|
// ConfigManager
|
|
//=============================================================================
|
|
var bbs_vd_Configmanager_makeData = ConfigManager.makeData;
|
|
ConfigManager.makeData = function() {
|
|
var config = bbs_vd_Configmanager_makeData.call(this);
|
|
config.saveVersion = _saveVersion;
|
|
return config;
|
|
};
|
|
|
|
var bbs_vd_Configmanager_applyData = ConfigManager.applyData;
|
|
ConfigManager.applyData = function(config) {
|
|
bbs_vd_Configmanager_applyData.call(this, config);
|
|
_saveVersion = this.readSaveVersion(config, 'saveVersion');
|
|
};
|
|
|
|
ConfigManager.readSaveVersion = function(config, name) {
|
|
var value = config[name];
|
|
if (value !== undefined) {
|
|
return value;
|
|
} else {
|
|
return _defaultVersion;
|
|
}
|
|
};
|
|
|
|
})(BBS.VersionDisplay);
|
|
//=============================================================================
|
|
// End of File
|
|
//=============================================================================
|