initial commit
This commit is contained in:
@@ -0,0 +1 @@
|
||||
node_modules
|
||||
+157
@@ -0,0 +1,157 @@
|
||||
# GNU LESSER GENERAL PUBLIC LICENSE
|
||||
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc.
|
||||
<https://fsf.org/>
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies of this
|
||||
license document, but changing it is not allowed.
|
||||
|
||||
This version of the GNU Lesser General Public License incorporates the
|
||||
terms and conditions of version 3 of the GNU General Public License,
|
||||
supplemented by the additional permissions listed below.
|
||||
|
||||
## 0. Additional Definitions.
|
||||
|
||||
As used herein, "this License" refers to version 3 of the GNU Lesser
|
||||
General Public License, and the "GNU GPL" refers to version 3 of the
|
||||
GNU General Public License.
|
||||
|
||||
"The Library" refers to a covered work governed by this License, other
|
||||
than an Application or a Combined Work as defined below.
|
||||
|
||||
An "Application" is any work that makes use of an interface provided
|
||||
by the Library, but which is not otherwise based on the Library.
|
||||
Defining a subclass of a class defined by the Library is deemed a mode
|
||||
of using an interface provided by the Library.
|
||||
|
||||
A "Combined Work" is a work produced by combining or linking an
|
||||
Application with the Library. The particular version of the Library
|
||||
with which the Combined Work was made is also called the "Linked
|
||||
Version".
|
||||
|
||||
The "Minimal Corresponding Source" for a Combined Work means the
|
||||
Corresponding Source for the Combined Work, excluding any source code
|
||||
for portions of the Combined Work that, considered in isolation, are
|
||||
based on the Application, and not on the Linked Version.
|
||||
|
||||
The "Corresponding Application Code" for a Combined Work means the
|
||||
object code and/or source code for the Application, including any data
|
||||
and utility programs needed for reproducing the Combined Work from the
|
||||
Application, but excluding the System Libraries of the Combined Work.
|
||||
|
||||
## 1. Exception to Section 3 of the GNU GPL.
|
||||
|
||||
You may convey a covered work under sections 3 and 4 of this License
|
||||
without being bound by section 3 of the GNU GPL.
|
||||
|
||||
## 2. Conveying Modified Versions.
|
||||
|
||||
If you modify a copy of the Library, and, in your modifications, a
|
||||
facility refers to a function or data to be supplied by an Application
|
||||
that uses the facility (other than as an argument passed when the
|
||||
facility is invoked), then you may convey a copy of the modified
|
||||
version:
|
||||
|
||||
- a) under this License, provided that you make a good faith effort
|
||||
to ensure that, in the event an Application does not supply the
|
||||
function or data, the facility still operates, and performs
|
||||
whatever part of its purpose remains meaningful, or
|
||||
- b) under the GNU GPL, with none of the additional permissions of
|
||||
this License applicable to that copy.
|
||||
|
||||
## 3. Object Code Incorporating Material from Library Header Files.
|
||||
|
||||
The object code form of an Application may incorporate material from a
|
||||
header file that is part of the Library. You may convey such object
|
||||
code under terms of your choice, provided that, if the incorporated
|
||||
material is not limited to numerical parameters, data structure
|
||||
layouts and accessors, or small macros, inline functions and templates
|
||||
(ten or fewer lines in length), you do both of the following:
|
||||
|
||||
- a) Give prominent notice with each copy of the object code that
|
||||
the Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
- b) Accompany the object code with a copy of the GNU GPL and this
|
||||
license document.
|
||||
|
||||
## 4. Combined Works.
|
||||
|
||||
You may convey a Combined Work under terms of your choice that, taken
|
||||
together, effectively do not restrict modification of the portions of
|
||||
the Library contained in the Combined Work and reverse engineering for
|
||||
debugging such modifications, if you also do each of the following:
|
||||
|
||||
- a) Give prominent notice with each copy of the Combined Work that
|
||||
the Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
- b) Accompany the Combined Work with a copy of the GNU GPL and this
|
||||
license document.
|
||||
- c) For a Combined Work that displays copyright notices during
|
||||
execution, include the copyright notice for the Library among
|
||||
these notices, as well as a reference directing the user to the
|
||||
copies of the GNU GPL and this license document.
|
||||
- d) Do one of the following:
|
||||
- 0) Convey the Minimal Corresponding Source under the terms of
|
||||
this License, and the Corresponding Application Code in a form
|
||||
suitable for, and under terms that permit, the user to
|
||||
recombine or relink the Application with a modified version of
|
||||
the Linked Version to produce a modified Combined Work, in the
|
||||
manner specified by section 6 of the GNU GPL for conveying
|
||||
Corresponding Source.
|
||||
- 1) Use a suitable shared library mechanism for linking with
|
||||
the Library. A suitable mechanism is one that (a) uses at run
|
||||
time a copy of the Library already present on the user's
|
||||
computer system, and (b) will operate properly with a modified
|
||||
version of the Library that is interface-compatible with the
|
||||
Linked Version.
|
||||
- e) Provide Installation Information, but only if you would
|
||||
otherwise be required to provide such information under section 6
|
||||
of the GNU GPL, and only to the extent that such information is
|
||||
necessary to install and execute a modified version of the
|
||||
Combined Work produced by recombining or relinking the Application
|
||||
with a modified version of the Linked Version. (If you use option
|
||||
4d0, the Installation Information must accompany the Minimal
|
||||
Corresponding Source and Corresponding Application Code. If you
|
||||
use option 4d1, you must provide the Installation Information in
|
||||
the manner specified by section 6 of the GNU GPL for conveying
|
||||
Corresponding Source.)
|
||||
|
||||
## 5. Combined Libraries.
|
||||
|
||||
You may place library facilities that are a work based on the Library
|
||||
side by side in a single library together with other library
|
||||
facilities that are not Applications and are not covered by this
|
||||
License, and convey such a combined library under terms of your
|
||||
choice, if you do both of the following:
|
||||
|
||||
- a) Accompany the combined library with a copy of the same work
|
||||
based on the Library, uncombined with any other library
|
||||
facilities, conveyed under the terms of this License.
|
||||
- b) Give prominent notice with the combined library that part of it
|
||||
is a work based on the Library, and explaining where to find the
|
||||
accompanying uncombined form of the same work.
|
||||
|
||||
## 6. Revised Versions of the GNU Lesser General Public License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions
|
||||
of the GNU Lesser General Public License from time to time. Such new
|
||||
versions will be similar in spirit to the present version, but may
|
||||
differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Library
|
||||
as you received it specifies that a certain numbered version of the
|
||||
GNU Lesser General Public License "or any later version" applies to
|
||||
it, you have the option of following the terms and conditions either
|
||||
of that published version or of any later version published by the
|
||||
Free Software Foundation. If the Library as you received it does not
|
||||
specify a version number of the GNU Lesser General Public License, you
|
||||
may choose any version of the GNU Lesser General Public License ever
|
||||
published by the Free Software Foundation.
|
||||
|
||||
If the Library as you received it specifies that a proxy can decide
|
||||
whether future versions of the GNU Lesser General Public License shall
|
||||
apply, that proxy's public statement of acceptance of any version is
|
||||
permanent authorization for you to choose that version for the
|
||||
Library.
|
||||
@@ -0,0 +1,7 @@
|
||||
# Sugoi Font Override
|
||||
Adds Font Overrides to Options
|
||||
# Usage
|
||||
Download the plugin from releases and put it in the plugins folder of your project.
|
||||
Create an `alt_fonts` folder in your project folder and place your extra fonts inside.
|
||||
Playtest the game, the plugin will generate an `alt_fonts/index.json` file for the web/mobile distro.
|
||||
Your game will now have an extra option to allow the player to override the default font.
|
||||
@@ -0,0 +1,137 @@
|
||||
/*:
|
||||
* @target MZ
|
||||
* @plugindesc Adds Font Overrides to Options
|
||||
* @author SugoiDogo
|
||||
* @help SugoiFontSettings.js
|
||||
*
|
||||
* Adds Font Overrides to Options
|
||||
*
|
||||
* Create the folder alt_fonts in your project folder,
|
||||
* add your fonts to that folder, and this plugin will
|
||||
* add the option to override game fonts with alt fonts.
|
||||
* Useful for accessibility fonts, etc.
|
||||
*/
|
||||
{
|
||||
const option_name = 'Font Override'
|
||||
const font_symbol = 'font_override'
|
||||
const disabled = 'disabled'
|
||||
const alt_fonts = 'alt_fonts/'
|
||||
const fonts_index = 'index.json'
|
||||
const fonts = [disabled]
|
||||
let font = fonts[0]
|
||||
|
||||
if (require) {
|
||||
const fs = require('fs')
|
||||
fs.mkdirSync(alt_fonts,{recursive:true})
|
||||
const fontFileNames = fs.readdirSync(alt_fonts)
|
||||
fs.writeFileSync(alt_fonts + fonts_index, JSON.stringify(fontFileNames))
|
||||
}
|
||||
|
||||
fetch(encodeURI(alt_fonts + fonts_index))
|
||||
.then(response => response.json())
|
||||
.then(/** @type {string[]} */ fontFileNames => {
|
||||
for (const fontFileName of fontFileNames) {
|
||||
const fontName = fontFileName.split('.')[0]
|
||||
const fontURL = encodeURI(alt_fonts + fontFileName)
|
||||
// @ts-ignore FontManager is not documented
|
||||
FontManager.startLoading(fontName, fontURL)
|
||||
fonts.push(fontName)
|
||||
}
|
||||
})
|
||||
|
||||
const addGeneralOptions = Window_Options.prototype.addGeneralOptions
|
||||
Window_Options.prototype.addGeneralOptions = function () {
|
||||
addGeneralOptions.call(this);
|
||||
this.addCommand(option_name, font_symbol, true)
|
||||
}
|
||||
|
||||
const statusText = Window_Options.prototype.statusText
|
||||
Window_Options.prototype.statusText = function (/** @type {number} */ index) {
|
||||
const symbol = this.commandSymbol(index)
|
||||
if (symbol === font_symbol) {
|
||||
return font
|
||||
}
|
||||
return statusText.call(this, index)
|
||||
}
|
||||
|
||||
function getNextFont(forward = true) {
|
||||
let index = fonts.indexOf(font)
|
||||
if (forward) {
|
||||
index++
|
||||
} else {
|
||||
index--
|
||||
}
|
||||
index %= fonts.length
|
||||
return fonts[index]
|
||||
}
|
||||
|
||||
const processOk = Window_Options.prototype.processOk
|
||||
Window_Options.prototype.processOk = function () {
|
||||
const index = this.index();
|
||||
const symbol = this.commandSymbol(index);
|
||||
if (symbol === font_symbol) {
|
||||
// @ts-ignore changeValue should have `value: any`
|
||||
this.changeValue(font_symbol, getNextFont())
|
||||
} else {
|
||||
return processOk.call(this)
|
||||
}
|
||||
}
|
||||
|
||||
const cursorRight = Window_Options.prototype.cursorRight
|
||||
Window_Options.prototype.cursorRight = function (/** @type {boolean} */ wrap) {
|
||||
const index = this.index();
|
||||
const symbol = this.commandSymbol(index);
|
||||
if (symbol === font_symbol) {
|
||||
// @ts-ignore changeValue should have `value: any`
|
||||
this.changeValue(font_symbol, getNextFont())
|
||||
} else {
|
||||
return cursorRight.call(this, wrap)
|
||||
}
|
||||
}
|
||||
|
||||
const cursorLeft = Window_Options.prototype.cursorLeft
|
||||
Window_Options.prototype.cursorLeft = function (/** @type {boolean} */ wrap) {
|
||||
const index = this.index();
|
||||
const symbol = this.commandSymbol(index);
|
||||
if (symbol === font_symbol) {
|
||||
// @ts-ignore changeValue should have `value: any`
|
||||
this.changeValue(font_symbol, getNextFont(false))
|
||||
} else {
|
||||
return cursorLeft.call(this, wrap)
|
||||
}
|
||||
}
|
||||
|
||||
Object.defineProperty(ConfigManager, font_symbol, {
|
||||
get: function () {
|
||||
return font
|
||||
},
|
||||
set: function (value) {
|
||||
font = value
|
||||
},
|
||||
configurable: true
|
||||
})
|
||||
|
||||
const makeData = ConfigManager.makeData
|
||||
ConfigManager.makeData = function () {
|
||||
const config = makeData.call(this)
|
||||
config[font_symbol] = font
|
||||
return config
|
||||
}
|
||||
|
||||
const applyData = ConfigManager.applyData
|
||||
ConfigManager.applyData = function (config) {
|
||||
applyData.call(this, config)
|
||||
if (font_symbol in config && typeof config[font_symbol] === 'string') {
|
||||
font = config[font_symbol]
|
||||
}
|
||||
}
|
||||
|
||||
const mainFontFace = Game_System.prototype.mainFontFace
|
||||
Game_System.prototype.mainFontFace = function () {
|
||||
if (font === disabled) {
|
||||
return mainFontFace.call(this)
|
||||
} else {
|
||||
return font
|
||||
}
|
||||
}
|
||||
}
|
||||
Generated
+61
@@ -0,0 +1,61 @@
|
||||
{
|
||||
"name": "rmmz-sugoisubtitles",
|
||||
"version": "1.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "rmmz-sugoisubtitles",
|
||||
"version": "1.0.0",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"@types/node": "^24.10.1",
|
||||
"@types/web": "^0.0.294",
|
||||
"nwjs-types": "^1.0.0",
|
||||
"rpgmaker-mz-types": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/node": {
|
||||
"version": "24.10.1",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz",
|
||||
"integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"undici-types": "~7.16.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/web": {
|
||||
"version": "0.0.294",
|
||||
"resolved": "https://registry.npmjs.org/@types/web/-/web-0.0.294.tgz",
|
||||
"integrity": "sha512-prZi2M3jd/lGeOhW9P3txXfn6/nXIJRn+w/aFHz94/dl04riO5V99n+sKSeIciq7FM2XY6wPWoNhNbm6S/AdMQ==",
|
||||
"license": "Apache-2.0"
|
||||
},
|
||||
"node_modules/nwjs-types": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/nwjs-types/-/nwjs-types-1.0.0.tgz",
|
||||
"integrity": "sha512-lMOCPWuUIK5/g+3cPj/E1Z1dw+kjCpdT+7s9LqbY4AM9WMy76QOZ3Kk+c983GTKadkRrWazOKThhTUDgpl898A==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/node": "^11.11.3"
|
||||
}
|
||||
},
|
||||
"node_modules/nwjs-types/node_modules/@types/node": {
|
||||
"version": "11.15.54",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-11.15.54.tgz",
|
||||
"integrity": "sha512-1RWYiq+5UfozGsU6MwJyFX6BtktcT10XRjvcAQmskCtMcW3tPske88lM/nHv7BQG1w9KBXI1zPGuu5PnNCX14g==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/rpgmaker-mz-types": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/rpgmaker-mz-types/-/rpgmaker-mz-types-1.0.0.tgz",
|
||||
"integrity": "sha512-oaPUL8WvmN9WrvhWXtkpTJrXZJVw8pgCqXOylE7L+fpDI5A4udItx53hDTd5ApPmaHNeX1iewTI9i9mXDgeM3Q==",
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/undici-types": {
|
||||
"version": "7.16.0",
|
||||
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz",
|
||||
"integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==",
|
||||
"license": "MIT"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "rmmz-sugoisubtitles",
|
||||
"version": "1.0.0",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"type": "commonjs",
|
||||
"dependencies": {
|
||||
"@types/node": "^24.10.1",
|
||||
"@types/web": "^0.0.294",
|
||||
"nwjs-types": "^1.0.0",
|
||||
"rpgmaker-mz-types": "^1.0.0"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"checkJs": true,
|
||||
"noEmit": true,
|
||||
"target": "es2020",
|
||||
"module": "es2020",
|
||||
"types": [
|
||||
"@types/web",
|
||||
"@types/node",
|
||||
"nwjs-types",
|
||||
"rpgmaker-mz-types"
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user