Screen Flash Option v1.01

bluebooth

Veteran
Veteran
Joined
Nov 12, 2015
Messages
95
Reaction score
115
First Language
English
Primarily Uses
N/A
Screen Flash Option v1.01

Author: Michael Morris @Blue Booth Studios


 

Introduction
A simple script that allows those with sensitive eyes the option of disabling screen flashes.  Screen flashes are enabled by default, but can now be toggled in the options menu.


Features
- Allow users to enable / disable screen flashes in the options menu.


- Adds "Screen Flashes?" option to Options menu.


- No changes need to be made to existing events causing screen flashes.


- Does not cover changes in screen tint (in case you're using a flash to cover the screen while moving events around).


How to Use
- Copy script into your game js/plugins directory.


Requirements


This script has no external requirements.


Demo


No demo provided.


Script

//=============================================================================
// Bluebooth Plugins - Flash Option
// BBS_FlashOption.js
//=============================================================================

//=============================================================================
/*:
* @title Flash Option
* @author Michael Morris (https://www.*******.com/bluebooth)
* @date Aug 28, 2016
* @filename BBS_FlashOption.js
* If you enjoy my work, consider supporting me on *******!
*
* https://www.*******.com/bluebooth
*
* @plugindesc v1.01 Adds user option to enable/disable screen flashes for those
* with sensitive eyes.
* Special Thanks to Tsukihime for all the help.
* Special Thanks to 'Ramza' Michael Sweeney for all the support.
*
* ============================================================================
* Terms of Use
* ============================================================================
* - Free for use in non-commercial projects with credits
* - Free for commercial use with credits
*
* ============================================================================
* Parameters
* ============================================================================
* @param Enable Screen Flashes
* @desc Set to 'true' to enable screen flashes by default. Overridden by user preferences.
* Default: true
* @default true
*
* @help
* ============================================================================
* Description
* ============================================================================
*
* Adds user option to enable/disable screen flashes for those
* with sensitive eyes.
*
* ============================================================================
* Change Log
* ============================================================================
* 1.01 - Plugin finished.
*
*/
//=============================================================================

//=============================================================================
var Imported = Imported || {} ;
var BBS = BBS || {};
Imported.FlashOption = 1;
BBS.FlashOption = BBS.FlashOption || {};

(function() {

//=============================================================================
// Parameter Variables
//=============================================================================
var parameters = PluginManager.parameters('BBS_FlashOption');
var pDefFlashes = String(parameters['Enable Screen Flashes'] || 'false');

//=============================================================================
// Window_Options
//=============================================================================

var bbs_nf_Window_Options_addGeneralOptions =
Window_Options.prototype.addGeneralOptions;
Window_Options.prototype.addGeneralOptions = function() {
bbs_nf_Window_Options_addGeneralOptions.call(this);
this.addCommand('Screen Flashes?', 'flashes');
};

//=============================================================================
// ConfigManager
//=============================================================================

getDefaultFlashOption = function() {
if (pDefFlashes.match(/true/i)) {
return true;
} else if (pDefFlashes.match(/false/i)) {
return false;
} else {
return Utils.isNwjs();
}
};

ConfigManager.flashes = getDefaultFlashOption();

var bbs_nf_Configmanager_makeData = ConfigManager.makeData;
ConfigManager.makeData = function() {
var config = bbs_nf_Configmanager_makeData.call(this);
config.flashes = this.flashes;
return config;
};

var bbs_nf_Configmanager_applyData = ConfigManager.applyData;
ConfigManager.applyData = function(config) {
bbs_nf_Configmanager_applyData.call(this, config);
this.flashes = this.readConfigFlashes(config, 'flashes');
};

ConfigManager.readConfigFlashes = function(config, name) {
var value = config[name];
if (value !== undefined) {
return value;
} else {
return getDefaultFlashOption();
}
};

//=============================================================================
// Game_Interpreter
//=============================================================================
// Flash Screen
var bbs_nf_Game_Interpreter_command224 = Game_Interpreter.prototype.command224;
Game_Interpreter.prototype.command224 = function() {
if(ConfigManager.flashes === true) {
bbs_nf_Game_Interpreter_command224.call(this);
}

return true;
};

})(BBS.FlashOption);
//=============================================================================
// End of File
//=============================================================================



Change Log
1.01


  - Plugin finished.


Known Bugs / TODO


Suggestions, bug reports, and feature requests are welcomed!


Compatibility Issues


None known.


Credit and Thanks
- Micheal Morris @Blue Booth Studios


Author's Notes
Free for non-commercial and commercial usage as long as credit is given.  Please spread the love for those with sensitive eyes!


View attachment BBS_FlashOption.js
 
Last edited by a moderator:

solaris1111

Veteran
Veteran
Joined
Jan 1, 2014
Messages
115
Reaction score
20
First Language
French
Primarily Uses
This is a very good idea! Thank you for that plugin!
 

bluebooth

Veteran
Veteran
Joined
Nov 12, 2015
Messages
95
Reaction score
115
First Language
English
Primarily Uses
N/A
You're very welcome!  As someone with sensitive eyes myself (I find screen flashes painful), it's an option I wish more games had.  Thank you for making use of it!
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Profile Posts

Every time the official RMWeb account makes a post, I think it's @Eliaquim writing it!

It's driving me crazy, but it's also wonderfully hilarious.
// Looks at Elfkisser, realizes he'd have to either install Windows 10 or compile it for Linux
// Didn't install Elfkisser.
Too much effort for a curiosity. :popcorn:
I was just high-fiving myself for all I've learnt in the engine, and how far I've come, only to forget to remove the Immortal state from a semi-scripted battle. Now the enemy never dies and I feel so smart >.>
Playtest your stuff. Always playtest.
just spent FOREVER troubleshooting an issue with my keyboard... turns out the cord was just loose OTL

Forum statistics

Threads
99,224
Messages
963,224
Members
130,813
Latest member
Gremter
Top