Revert to PIXI4
This commit is contained in:
parent
35dcbf3276
commit
a7d6c0355c
21 changed files with 44598 additions and 88738 deletions
6
package-lock.json
generated
6
package-lock.json
generated
|
@ -92,9 +92,9 @@
|
|||
}
|
||||
},
|
||||
"node_modules/android-versions": {
|
||||
"version": "1.8.2",
|
||||
"resolved": "https://registry.npmjs.org/android-versions/-/android-versions-1.8.2.tgz",
|
||||
"integrity": "sha512-2MT/Y/mR3BLSbR9E3ugwvE/aA4k84XtjG2Iusu4pRKt4FwfpEvIEAHzm7ZBhL3/aTVNdx3PzZ+sAiK+Dbc4r9A==",
|
||||
"version": "1.9.0",
|
||||
"resolved": "https://registry.npmjs.org/android-versions/-/android-versions-1.9.0.tgz",
|
||||
"integrity": "sha512-13O2B6PQMEM4ej9n13ePRQeckrCoKbZrvuzlLvK+9s2QmncpHDbYzZxhgapN32sJNoifN6VAHexLnd/6CYrs7Q==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"semver": "^7.5.2"
|
||||
|
|
|
@ -11,6 +11,6 @@
|
|||
"./plugins_dev/*.js",
|
||||
"./plugins/*.js",
|
||||
"libs/yaml.js",
|
||||
"require.js"
|
||||
"porting/require.js"
|
||||
]
|
||||
}
|
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
9
www/js/libs/pixi-legacy.min.js
vendored
9
www/js/libs/pixi-legacy.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,404 +1,428 @@
|
|||
var __extends = (this && this.__extends) || (function () {
|
||||
var extendStatics = function (d, b) {
|
||||
extendStatics = Object.setPrototypeOf ||
|
||||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
||||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
||||
return extendStatics(d, b);
|
||||
};
|
||||
return function (d, b) {
|
||||
extendStatics(d, b);
|
||||
function __() { this.constructor = d; }
|
||||
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
||||
};
|
||||
})();
|
||||
var pixi_picture;
|
||||
(function (pixi_picture) {
|
||||
var BackdropFilter = (function (_super) {
|
||||
__extends(BackdropFilter, _super);
|
||||
function BackdropFilter() {
|
||||
var _this = _super !== null && _super.apply(this, arguments) || this;
|
||||
_this.backdropUniformName = null;
|
||||
_this._backdropActive = false;
|
||||
_this.clearColor = null;
|
||||
return _this;
|
||||
}
|
||||
return BackdropFilter;
|
||||
}(PIXI.Filter));
|
||||
pixi_picture.BackdropFilter = BackdropFilter;
|
||||
var filterFrag = "\nvarying vec2 vTextureCoord;\n\nuniform sampler2D uSampler;\nuniform sampler2D uBackdrop;\n\n%UNIFORM_CODE%\n\nvoid main(void)\n{\n vec4 b_src = texture2D(uSampler, vTextureCoord);\n vec4 b_dest = texture2D(uBackdrop, vTextureCoord);\n vec4 b_res = b_dest;\n \n %BLEND_CODE%\n\n gl_FragColor = b_res;\n}";
|
||||
var BlendFilter = (function (_super) {
|
||||
__extends(BlendFilter, _super);
|
||||
function BlendFilter(shaderParts) {
|
||||
var _this = this;
|
||||
var fragCode = filterFrag;
|
||||
fragCode = fragCode.replace('%UNIFORM_CODE%', shaderParts.uniformCode || "");
|
||||
fragCode = fragCode.replace('%BLEND_CODE%', shaderParts.blendCode || "");
|
||||
_this = _super.call(this, undefined, fragCode, shaderParts.uniforms) || this;
|
||||
_this.backdropUniformName = 'uBackdrop';
|
||||
return _this;
|
||||
}
|
||||
return BlendFilter;
|
||||
}(BackdropFilter));
|
||||
pixi_picture.BlendFilter = BlendFilter;
|
||||
})(pixi_picture || (pixi_picture = {}));
|
||||
var pixi_picture;
|
||||
(function (pixi_picture) {
|
||||
function containsRect(rectOut, rectIn) {
|
||||
var r1 = rectIn.x + rectIn.width;
|
||||
var b1 = rectIn.y + rectIn.height;
|
||||
var r2 = rectOut.x + rectOut.width;
|
||||
var b2 = rectOut.y + rectOut.height;
|
||||
return (rectIn.x >= rectOut.x) &&
|
||||
(rectIn.x <= r2) &&
|
||||
(rectIn.y >= rectOut.y) &&
|
||||
(rectIn.y <= b2) &&
|
||||
(r1 >= rectOut.x) &&
|
||||
(r1 <= r2) &&
|
||||
(b1 >= rectOut.y) &&
|
||||
(b1 <= b2);
|
||||
}
|
||||
PIXI.systems.TextureSystem.prototype.bindForceLocation = function (texture, location) {
|
||||
if (location === void 0) { location = 0; }
|
||||
var gl = this.gl;
|
||||
if (this.currentLocation !== location) {
|
||||
this.currentLocation = location;
|
||||
gl.activeTexture(gl.TEXTURE0 + location);
|
||||
}
|
||||
this.bind(texture, location);
|
||||
};
|
||||
function pushWithCheck(target, filters, checkEmptyBounds) {
|
||||
if (checkEmptyBounds === void 0) { checkEmptyBounds = true; }
|
||||
var renderer = this.renderer;
|
||||
var filterStack = this.defaultFilterStack;
|
||||
var state = this.statePool.pop() || new PIXI.FilterState();
|
||||
var resolution = filters[0].resolution;
|
||||
var padding = filters[0].padding;
|
||||
var autoFit = filters[0].autoFit;
|
||||
var legacy = filters[0].legacy;
|
||||
for (var i = 1; i < filters.length; i++) {
|
||||
var filter = filters[i];
|
||||
resolution = Math.min(resolution, filter.resolution);
|
||||
padding = this.useMaxPadding
|
||||
? Math.max(padding, filter.padding)
|
||||
: padding + filter.padding;
|
||||
autoFit = autoFit || filter.autoFit;
|
||||
legacy = legacy || filter.legacy;
|
||||
}
|
||||
if (filterStack.length === 1) {
|
||||
this.defaultFilterStack[0].renderTexture = renderer.renderTexture.current;
|
||||
}
|
||||
filterStack.push(state);
|
||||
state.resolution = resolution;
|
||||
state.legacy = legacy;
|
||||
state.target = target;
|
||||
state.sourceFrame.copyFrom(target.filterArea || target.getBounds(true));
|
||||
var canUseBackdrop = true;
|
||||
state.sourceFrame.pad(padding);
|
||||
if (autoFit) {
|
||||
state.sourceFrame.fit(this.renderer.renderTexture.sourceFrame);
|
||||
}
|
||||
else {
|
||||
canUseBackdrop = containsRect(this.renderer.renderTexture.sourceFrame, state.sourceFrame);
|
||||
}
|
||||
if (checkEmptyBounds && state.sourceFrame.width <= 1 && state.sourceFrame.height <= 1) {
|
||||
filterStack.pop();
|
||||
state.clear();
|
||||
this.statePool.push(state);
|
||||
return false;
|
||||
}
|
||||
state.sourceFrame.ceil(resolution);
|
||||
if (canUseBackdrop) {
|
||||
var backdrop = null;
|
||||
for (var i = 0; i < filters.length; i++) {
|
||||
var bName = filters[i].backdropUniformName;
|
||||
if (bName) {
|
||||
if (backdrop === null) {
|
||||
backdrop = this.prepareBackdrop(state.sourceFrame);
|
||||
}
|
||||
filters[i].uniforms[bName] = backdrop;
|
||||
if (backdrop) {
|
||||
filters[i]._backdropActive = true;
|
||||
}
|
||||
}
|
||||
var __extends = (this && this.__extends) || function (d, b) {
|
||||
for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
|
||||
function __() { this.constructor = d; }
|
||||
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
||||
};
|
||||
var PIXI;
|
||||
(function (PIXI) {
|
||||
var extras;
|
||||
(function (extras) {
|
||||
var shaderLib = [
|
||||
{
|
||||
vertUniforms: "",
|
||||
vertCode: "vTextureCoord = aTextureCoord;",
|
||||
fragUniforms: "uniform vec4 uTextureClamp;",
|
||||
fragCode: "vec2 textureCoord = clamp(vTextureCoord, uTextureClamp.xy, uTextureClamp.zw);"
|
||||
},
|
||||
{
|
||||
vertUniforms: "uniform mat3 uTransform;",
|
||||
vertCode: "vTextureCoord = (uTransform * vec3(aTextureCoord, 1.0)).xy;",
|
||||
fragUniforms: "",
|
||||
fragCode: "vec2 textureCoord = vTextureCoord;"
|
||||
},
|
||||
{
|
||||
vertUniforms: "uniform mat3 uTransform;",
|
||||
vertCode: "vTextureCoord = (uTransform * vec3(aTextureCoord, 1.0)).xy;",
|
||||
fragUniforms: "uniform mat3 uMapCoord;\nuniform vec4 uClampFrame;\nuniform vec2 uClampOffset;",
|
||||
fragCode: "vec2 textureCoord = mod(vTextureCoord - uClampOffset, vec2(1.0, 1.0)) + uClampOffset;" +
|
||||
"\ntextureCoord = (uMapCoord * vec3(textureCoord, 1.0)).xy;" +
|
||||
"\ntextureCoord = clamp(textureCoord, uClampFrame.xy, uClampFrame.zw);"
|
||||
}
|
||||
}
|
||||
state.renderTexture = this.getOptimalFilterTexture(state.sourceFrame.width, state.sourceFrame.height, resolution);
|
||||
state.filters = filters;
|
||||
state.destinationFrame.width = state.renderTexture.width;
|
||||
state.destinationFrame.height = state.renderTexture.height;
|
||||
var destinationFrame = this.tempRect;
|
||||
destinationFrame.width = state.sourceFrame.width;
|
||||
destinationFrame.height = state.sourceFrame.height;
|
||||
state.renderTexture.filterFrame = state.sourceFrame;
|
||||
renderer.renderTexture.bind(state.renderTexture, state.sourceFrame, destinationFrame);
|
||||
renderer.renderTexture.clear(filters[filters.length - 1].clearColor);
|
||||
return true;
|
||||
}
|
||||
function push(target, filters) {
|
||||
return this.pushWithCheck(target, filters, false);
|
||||
}
|
||||
function pop() {
|
||||
var filterStack = this.defaultFilterStack;
|
||||
var state = filterStack.pop();
|
||||
var filters = state.filters;
|
||||
this.activeState = state;
|
||||
var globalUniforms = this.globalUniforms.uniforms;
|
||||
globalUniforms.outputFrame = state.sourceFrame;
|
||||
globalUniforms.resolution = state.resolution;
|
||||
var inputSize = globalUniforms.inputSize;
|
||||
var inputPixel = globalUniforms.inputPixel;
|
||||
var inputClamp = globalUniforms.inputClamp;
|
||||
inputSize[0] = state.destinationFrame.width;
|
||||
inputSize[1] = state.destinationFrame.height;
|
||||
inputSize[2] = 1.0 / inputSize[0];
|
||||
inputSize[3] = 1.0 / inputSize[1];
|
||||
inputPixel[0] = inputSize[0] * state.resolution;
|
||||
inputPixel[1] = inputSize[1] * state.resolution;
|
||||
inputPixel[2] = 1.0 / inputPixel[0];
|
||||
inputPixel[3] = 1.0 / inputPixel[1];
|
||||
inputClamp[0] = 0.5 * inputPixel[2];
|
||||
inputClamp[1] = 0.5 * inputPixel[3];
|
||||
inputClamp[2] = (state.sourceFrame.width * inputSize[2]) - (0.5 * inputPixel[2]);
|
||||
inputClamp[3] = (state.sourceFrame.height * inputSize[3]) - (0.5 * inputPixel[3]);
|
||||
if (state.legacy) {
|
||||
var filterArea = globalUniforms.filterArea;
|
||||
filterArea[0] = state.destinationFrame.width;
|
||||
filterArea[1] = state.destinationFrame.height;
|
||||
filterArea[2] = state.sourceFrame.x;
|
||||
filterArea[3] = state.sourceFrame.y;
|
||||
globalUniforms.filterClamp = globalUniforms.inputClamp;
|
||||
}
|
||||
this.globalUniforms.update();
|
||||
var lastState = filterStack[filterStack.length - 1];
|
||||
if (state.renderTexture.framebuffer.multisample > 1) {
|
||||
this.renderer.framebuffer.blit();
|
||||
}
|
||||
if (filters.length === 1) {
|
||||
filters[0].apply(this, state.renderTexture, lastState.renderTexture, PIXI.CLEAR_MODES.BLEND, state);
|
||||
this.returnFilterTexture(state.renderTexture);
|
||||
}
|
||||
else {
|
||||
var flip = state.renderTexture;
|
||||
var flop = this.getOptimalFilterTexture(flip.width, flip.height, state.resolution);
|
||||
flop.filterFrame = flip.filterFrame;
|
||||
var i = 0;
|
||||
for (i = 0; i < filters.length - 1; ++i) {
|
||||
filters[i].apply(this, flip, flop, PIXI.CLEAR_MODES.CLEAR, state);
|
||||
var t = flip;
|
||||
flip = flop;
|
||||
flop = t;
|
||||
];
|
||||
var PictureShader = (function (_super) {
|
||||
__extends(PictureShader, _super);
|
||||
function PictureShader(gl, vert, frag, tilingMode) {
|
||||
var lib = shaderLib[tilingMode];
|
||||
_super.call(this, gl, vert.replace(/%SPRITE_UNIFORMS%/gi, lib.vertUniforms)
|
||||
.replace(/%SPRITE_CODE%/gi, lib.vertCode), frag.replace(/%SPRITE_UNIFORMS%/gi, lib.fragUniforms)
|
||||
.replace(/%SPRITE_CODE%/gi, lib.fragCode));
|
||||
this.bind();
|
||||
this.tilingMode = tilingMode;
|
||||
this.tempQuad = new PIXI.Quad(gl);
|
||||
this.tempQuad.initVao(this);
|
||||
this.uniforms.uColor = new Float32Array([1, 1, 1, 1]);
|
||||
this.uniforms.uSampler = [0, 1];
|
||||
}
|
||||
filters[i].apply(this, flip, lastState.renderTexture, PIXI.CLEAR_MODES.BLEND, state);
|
||||
this.returnFilterTexture(flip);
|
||||
this.returnFilterTexture(flop);
|
||||
}
|
||||
var backdropFree = false;
|
||||
for (var i = 0; i < filters.length; i++) {
|
||||
if (filters[i]._backdropActive) {
|
||||
var bName = filters[i].backdropUniformName;
|
||||
if (!backdropFree) {
|
||||
this.returnFilterTexture(filters[i].uniforms[bName]);
|
||||
backdropFree = true;
|
||||
}
|
||||
filters[i].uniforms[bName] = null;
|
||||
filters[i]._backdropActive = false;
|
||||
PictureShader.blendVert = "\nattribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\nattribute vec4 aColor;\n\nuniform mat3 projectionMatrix;\nuniform mat3 mapMatrix;\n\nvarying vec2 vTextureCoord;\nvarying vec2 vMapCoord;\n%SPRITE_UNIFORMS%\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n %SPRITE_CODE%\n vMapCoord = (mapMatrix * vec3(aVertexPosition, 1.0)).xy;\n}\n";
|
||||
return PictureShader;
|
||||
}(PIXI.Shader));
|
||||
extras.PictureShader = PictureShader;
|
||||
})(extras = PIXI.extras || (PIXI.extras = {}));
|
||||
})(PIXI || (PIXI = {}));
|
||||
var PIXI;
|
||||
(function (PIXI) {
|
||||
var extras;
|
||||
(function (extras) {
|
||||
var overlayFrag = "\nvarying vec2 vTextureCoord;\nvarying vec2 vMapCoord;\nvarying vec4 vColor;\n\nuniform sampler2D uSampler[2];\nuniform vec4 uColor;\n%SPRITE_UNIFORMS%\n\nvoid main(void)\n{\n %SPRITE_CODE%\n vec4 source = texture2D(uSampler[0], textureCoord) * uColor;\n vec4 target = texture2D(uSampler[1], vMapCoord);\n\n //reverse hardlight\n if (source.a == 0.0) {\n gl_FragColor = vec4(0, 0, 0, 0);\n return;\n }\n //yeah, premultiplied\n vec3 Cb = source.rgb/source.a, Cs;\n if (target.a > 0.0) {\n Cs = target.rgb / target.a;\n }\n vec3 multiply = Cb * Cs * 2.0;\n vec3 Cs2 = Cs * 2.0 - 1.0;\n vec3 screen = Cb + Cs2 - Cb * Cs2;\n vec3 B;\n if (Cb.r <= 0.5) {\n B.r = multiply.r;\n } else {\n B.r = screen.r;\n }\n if (Cb.g <= 0.5) {\n B.g = multiply.g;\n } else {\n B.g = screen.g;\n }\n if (Cb.b <= 0.5) {\n B.b = multiply.b;\n } else {\n B.b = screen.b;\n }\n vec4 res;\n res.xyz = (1.0 - source.a) * Cs + source.a * B;\n res.a = source.a + target.a * (1.0-source.a);\n gl_FragColor = vec4(res.xyz * res.a, res.a);\n}\n";
|
||||
var HardLightShader = (function (_super) {
|
||||
__extends(HardLightShader, _super);
|
||||
function HardLightShader(gl, tilingMode) {
|
||||
_super.call(this, gl, extras.PictureShader.blendVert, overlayFrag, tilingMode);
|
||||
}
|
||||
return HardLightShader;
|
||||
}(extras.PictureShader));
|
||||
extras.HardLightShader = HardLightShader;
|
||||
})(extras = PIXI.extras || (PIXI.extras = {}));
|
||||
})(PIXI || (PIXI = {}));
|
||||
var PIXI;
|
||||
(function (PIXI) {
|
||||
var extras;
|
||||
(function (extras) {
|
||||
function mapFilterBlendModesToPixi(gl, array) {
|
||||
if (array === void 0) { array = []; }
|
||||
array[PIXI.BLEND_MODES.OVERLAY] = [new extras.OverlayShader(gl, 0), new extras.OverlayShader(gl, 1), new extras.OverlayShader(gl, 2)];
|
||||
array[PIXI.BLEND_MODES.HARD_LIGHT] = [new extras.HardLightShader(gl, 0), new extras.HardLightShader(gl, 1), new extras.HardLightShader(gl, 2)];
|
||||
return array;
|
||||
}
|
||||
state.clear();
|
||||
this.statePool.push(state);
|
||||
}
|
||||
var hadBackbufferError = false;
|
||||
function prepareBackdrop(bounds) {
|
||||
var renderer = this.renderer;
|
||||
var renderTarget = renderer.renderTexture.current;
|
||||
var fr = this.renderer.renderTexture.sourceFrame;
|
||||
if (!renderTarget) {
|
||||
if (!hadBackbufferError) {
|
||||
hadBackbufferError = true;
|
||||
console.warn('pixi-picture: you are trying to use Blend Filter on main framebuffer! That wont work.');
|
||||
extras.mapFilterBlendModesToPixi = mapFilterBlendModesToPixi;
|
||||
})(extras = PIXI.extras || (PIXI.extras = {}));
|
||||
})(PIXI || (PIXI = {}));
|
||||
var PIXI;
|
||||
(function (PIXI) {
|
||||
var extras;
|
||||
(function (extras) {
|
||||
var normalFrag = "\nvarying vec2 vTextureCoord;\nvarying vec4 vColor;\n\nuniform sampler2D uSampler[2];\nuniform vec4 uColor;\n%SPRITE_UNIFORMS%\n\nvoid main(void)\n{\n %SPRITE_CODE%\n\n vec4 sample = texture2D(uSampler[0], textureCoord);\n gl_FragColor = sample * uColor;\n}\n";
|
||||
var normalVert = "\nattribute vec2 aVertexPosition;\nattribute vec2 aTextureCoord;\nattribute vec4 aColor;\n\nuniform mat3 projectionMatrix;\n\nvarying vec2 vTextureCoord;\n%SPRITE_UNIFORMS%\n\nvoid main(void)\n{\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\n %SPRITE_CODE%\n}\n";
|
||||
var NormalShader = (function (_super) {
|
||||
__extends(NormalShader, _super);
|
||||
function NormalShader(gl, tilingMode) {
|
||||
_super.call(this, gl, normalVert, normalFrag, tilingMode);
|
||||
}
|
||||
return null;
|
||||
return NormalShader;
|
||||
}(extras.PictureShader));
|
||||
extras.NormalShader = NormalShader;
|
||||
})(extras = PIXI.extras || (PIXI.extras = {}));
|
||||
})(PIXI || (PIXI = {}));
|
||||
var PIXI;
|
||||
(function (PIXI) {
|
||||
var extras;
|
||||
(function (extras) {
|
||||
var overlayFrag = "\nvarying vec2 vTextureCoord;\nvarying vec2 vMapCoord;\nvarying vec4 vColor;\n\nuniform sampler2D uSampler[2];\nuniform vec4 uColor;\n%SPRITE_UNIFORMS%\n\nvoid main(void)\n{\n %SPRITE_CODE%\n vec4 source = texture2D(uSampler[0], textureCoord) * uColor;\n vec4 target = texture2D(uSampler[1], vMapCoord);\n\n //reverse hardlight\n if (source.a == 0.0) {\n gl_FragColor = vec4(0, 0, 0, 0);\n return;\n }\n //yeah, premultiplied\n vec3 Cb = source.rgb/source.a, Cs;\n if (target.a > 0.0) {\n Cs = target.rgb / target.a;\n }\n vec3 multiply = Cb * Cs * 2.0;\n vec3 Cb2 = Cb * 2.0 - 1.0;\n vec3 screen = Cb2 + Cs - Cb2 * Cs;\n vec3 B;\n if (Cs.r <= 0.5) {\n B.r = multiply.r;\n } else {\n B.r = screen.r;\n }\n if (Cs.g <= 0.5) {\n B.g = multiply.g;\n } else {\n B.g = screen.g;\n }\n if (Cs.b <= 0.5) {\n B.b = multiply.b;\n } else {\n B.b = screen.b;\n }\n vec4 res;\n res.xyz = (1.0 - source.a) * Cs + source.a * B;\n res.a = source.a + target.a * (1.0-source.a);\n gl_FragColor = vec4(res.xyz * res.a, res.a);\n}\n";
|
||||
var OverlayShader = (function (_super) {
|
||||
__extends(OverlayShader, _super);
|
||||
function OverlayShader(gl, tilingMode) {
|
||||
_super.call(this, gl, extras.PictureShader.blendVert, overlayFrag, tilingMode);
|
||||
}
|
||||
return OverlayShader;
|
||||
}(extras.PictureShader));
|
||||
extras.OverlayShader = OverlayShader;
|
||||
})(extras = PIXI.extras || (PIXI.extras = {}));
|
||||
})(PIXI || (PIXI = {}));
|
||||
var PIXI;
|
||||
(function (PIXI) {
|
||||
var extras;
|
||||
(function (extras) {
|
||||
function nextPow2(v) {
|
||||
v += (v === 0) ? 1 : 0;
|
||||
--v;
|
||||
v |= v >>> 1;
|
||||
v |= v >>> 2;
|
||||
v |= v >>> 4;
|
||||
v |= v >>> 8;
|
||||
v |= v >>> 16;
|
||||
return v + 1;
|
||||
}
|
||||
var resolution = renderTarget.baseTexture.resolution;
|
||||
var x = (bounds.x - fr.x) * resolution;
|
||||
var y = (bounds.y - fr.y) * resolution;
|
||||
var w = (bounds.width) * resolution;
|
||||
var h = (bounds.height) * resolution;
|
||||
var gl = renderer.gl;
|
||||
var rt = this.getOptimalFilterTexture(w, h, 1);
|
||||
rt.filterFrame = fr;
|
||||
renderer.texture.bindForceLocation(rt.baseTexture, 0);
|
||||
gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0, 0, x, y, w, h);
|
||||
return rt;
|
||||
}
|
||||
PIXI.systems.FilterSystem.prototype.push = push;
|
||||
PIXI.systems.FilterSystem.prototype.pushWithCheck = pushWithCheck;
|
||||
PIXI.systems.FilterSystem.prototype.pop = pop;
|
||||
PIXI.systems.FilterSystem.prototype.prepareBackdrop = prepareBackdrop;
|
||||
})(pixi_picture || (pixi_picture = {}));
|
||||
var pixi_picture;
|
||||
(function (pixi_picture) {
|
||||
var MASK_CHANNEL;
|
||||
(function (MASK_CHANNEL) {
|
||||
MASK_CHANNEL[MASK_CHANNEL["RED"] = 0] = "RED";
|
||||
MASK_CHANNEL[MASK_CHANNEL["GREEN"] = 1] = "GREEN";
|
||||
MASK_CHANNEL[MASK_CHANNEL["BLUE"] = 2] = "BLUE";
|
||||
MASK_CHANNEL[MASK_CHANNEL["ALPHA"] = 3] = "ALPHA";
|
||||
})(MASK_CHANNEL = pixi_picture.MASK_CHANNEL || (pixi_picture.MASK_CHANNEL = {}));
|
||||
var MaskConfig = (function () {
|
||||
function MaskConfig(maskBefore, channel) {
|
||||
if (maskBefore === void 0) { maskBefore = false; }
|
||||
if (channel === void 0) { channel = MASK_CHANNEL.ALPHA; }
|
||||
this.maskBefore = maskBefore;
|
||||
this.uniformCode = 'uniform vec4 uChannel;';
|
||||
this.uniforms = {
|
||||
uChannel: new Float32Array([0, 0, 0, 0]),
|
||||
var PictureRenderer = (function (_super) {
|
||||
__extends(PictureRenderer, _super);
|
||||
function PictureRenderer(renderer) {
|
||||
_super.call(this, renderer);
|
||||
}
|
||||
PictureRenderer.prototype.onContextChange = function () {
|
||||
var gl = this.renderer.gl;
|
||||
this.drawModes = extras.mapFilterBlendModesToPixi(gl);
|
||||
this.normalShader = [new extras.NormalShader(gl, 0), new extras.NormalShader(gl, 1), new extras.NormalShader(gl, 2)];
|
||||
this._tempClamp = new Float32Array(4);
|
||||
this._tempColor = new Float32Array(4);
|
||||
this._tempRect = new PIXI.Rectangle();
|
||||
this._tempRect2 = new PIXI.Rectangle();
|
||||
this._tempRect3 = new PIXI.Rectangle();
|
||||
this._tempMatrix = new PIXI.Matrix();
|
||||
this._tempMatrix2 = new PIXI.Matrix();
|
||||
this._bigBuf = new Uint8Array(1 << 20);
|
||||
this._renderTexture = new PIXI.BaseRenderTexture(1024, 1024);
|
||||
};
|
||||
this.blendCode = "b_res = dot(b_src, uChannel) * b_dest;";
|
||||
this.uniforms.uChannel[channel] = 1.0;
|
||||
}
|
||||
return MaskConfig;
|
||||
}());
|
||||
pixi_picture.MaskConfig = MaskConfig;
|
||||
var MaskFilter = (function (_super) {
|
||||
__extends(MaskFilter, _super);
|
||||
function MaskFilter(baseFilter, config) {
|
||||
if (config === void 0) { config = new MaskConfig(); }
|
||||
var _this = _super.call(this, config) || this;
|
||||
_this.baseFilter = baseFilter;
|
||||
_this.config = config;
|
||||
_this.padding = baseFilter.padding;
|
||||
return _this;
|
||||
}
|
||||
MaskFilter.prototype.apply = function (filterManager, input, output, clearMode) {
|
||||
var target = filterManager.getFilterTexture(input);
|
||||
if (this.config.maskBefore) {
|
||||
var blendMode = this.state.blendMode;
|
||||
this.state.blendMode = PIXI.BLEND_MODES.NONE;
|
||||
filterManager.applyFilter(this, input, target, PIXI.CLEAR_MODES.YES);
|
||||
this.baseFilter.blendMode = blendMode;
|
||||
this.baseFilter.apply(filterManager, target, output, clearMode);
|
||||
this.state.blendMode = blendMode;
|
||||
}
|
||||
else {
|
||||
var uBackdrop = this.uniforms.uBackdrop;
|
||||
this.baseFilter.apply(filterManager, uBackdrop, target, PIXI.CLEAR_MODES.YES);
|
||||
this.uniforms.uBackdrop = target;
|
||||
filterManager.applyFilter(this, input, output, clearMode);
|
||||
this.uniforms.uBackdrop = uBackdrop;
|
||||
}
|
||||
filterManager.returnFilterTexture(target);
|
||||
};
|
||||
return MaskFilter;
|
||||
}(pixi_picture.BlendFilter));
|
||||
pixi_picture.MaskFilter = MaskFilter;
|
||||
})(pixi_picture || (pixi_picture = {}));
|
||||
var pixi_picture;
|
||||
(function (pixi_picture) {
|
||||
var blends;
|
||||
(function (blends) {
|
||||
blends.NPM_BLEND = "if (b_src.a == 0.0) {\n gl_FragColor = vec4(0, 0, 0, 0);\n return;\n}\nvec3 Cb = b_src.rgb / b_src.a, Cs;\nif (b_dest.a > 0.0) {\n Cs = b_dest.rgb / b_dest.a;\n}\n%NPM_BLEND%\nb_res.a = b_src.a + b_dest.a * (1.0-b_src.a);\nb_res.rgb = (1.0 - b_src.a) * Cs + b_src.a * B;\nb_res.rgb *= b_res.a;\n";
|
||||
blends.OVERLAY_PART = "vec3 multiply = Cb * Cs * 2.0;\nvec3 Cb2 = Cb * 2.0 - 1.0;\nvec3 screen = Cb2 + Cs - Cb2 * Cs;\nvec3 B;\nif (Cs.r <= 0.5) {\n B.r = multiply.r;\n} else {\n B.r = screen.r;\n}\nif (Cs.g <= 0.5) {\n B.g = multiply.g;\n} else {\n B.g = screen.g;\n}\nif (Cs.b <= 0.5) {\n B.b = multiply.b;\n} else {\n B.b = screen.b;\n}\n";
|
||||
blends.HARDLIGHT_PART = "vec3 multiply = Cb * Cs * 2.0;\nvec3 Cs2 = Cs * 2.0 - 1.0;\nvec3 screen = Cb + Cs2 - Cb * Cs2;\nvec3 B;\nif (Cb.r <= 0.5) {\n B.r = multiply.r;\n} else {\n B.r = screen.r;\n}\nif (Cb.g <= 0.5) {\n B.g = multiply.g;\n} else {\n B.g = screen.g;\n}\nif (Cb.b <= 0.5) {\n B.b = multiply.b;\n} else {\n B.b = screen.b;\n}\n";
|
||||
blends.SOFTLIGHT_PART = "vec3 first = Cb - (1.0 - 2.0 * Cs) * Cb * (1.0 - Cb);\nvec3 B;\nvec3 D;\nif (Cs.r <= 0.5)\n{\n B.r = first.r;\n}\nelse\n{\n if (Cb.r <= 0.25)\n {\n D.r = ((16.0 * Cb.r - 12.0) * Cb.r + 4.0) * Cb.r; \n }\n else\n {\n D.r = sqrt(Cb.r);\n }\n B.r = Cb.r + (2.0 * Cs.r - 1.0) * (D.r - Cb.r);\n}\nif (Cs.g <= 0.5)\n{\n B.g = first.g;\n}\nelse\n{\n if (Cb.g <= 0.25)\n {\n D.g = ((16.0 * Cb.g - 12.0) * Cb.g + 4.0) * Cb.g; \n }\n else\n {\n D.g = sqrt(Cb.g);\n }\n B.g = Cb.g + (2.0 * Cs.g - 1.0) * (D.g - Cb.g);\n}\nif (Cs.b <= 0.5)\n{\n B.b = first.b;\n}\nelse\n{\n if (Cb.b <= 0.25)\n {\n D.b = ((16.0 * Cb.b - 12.0) * Cb.b + 4.0) * Cb.b; \n }\n else\n {\n D.b = sqrt(Cb.b);\n }\n B.b = Cb.b + (2.0 * Cs.b - 1.0) * (D.b - Cb.b);\n}\n";
|
||||
blends.MULTIPLY_FULL = "if (b_dest.a > 0.0) {\n vec4 mult;\nmult.a = min(b_src.a + b_dest.a - b_src.a * b_dest.a, 1.0);\n mult.rgb = (b_dest.rgb / b_dest.a) * ((1.0 - b_src.a) + b_src.rgb);\n b_res.rgb = (b_dest.rgb / b_dest.a) * ((1.0 - b_src.a) + b_src.rgb);\n b_res.a = min(b_src.a + b_dest.a - b_src.a * b_dest.a, 1.0);\n b_res.rgb *= mult.a;\n}\n";
|
||||
blends.OVERLAY_FULL = blends.NPM_BLEND.replace("%NPM_BLEND%", blends.OVERLAY_PART);
|
||||
blends.HARDLIGHT_FULL = blends.NPM_BLEND.replace("%NPM_BLEND%", blends.HARDLIGHT_PART);
|
||||
blends.SOFTLIGHT_FULL = blends.NPM_BLEND.replace("%NPM_BLEND%", blends.SOFTLIGHT_PART);
|
||||
blends.blendFullArray = [];
|
||||
blends.blendFullArray[PIXI.BLEND_MODES.MULTIPLY] = blends.MULTIPLY_FULL;
|
||||
blends.blendFullArray[PIXI.BLEND_MODES.OVERLAY] = blends.OVERLAY_FULL;
|
||||
blends.blendFullArray[PIXI.BLEND_MODES.HARD_LIGHT] = blends.HARDLIGHT_FULL;
|
||||
blends.blendFullArray[PIXI.BLEND_MODES.SOFT_LIGHT] = blends.SOFTLIGHT_FULL;
|
||||
})(blends = pixi_picture.blends || (pixi_picture.blends = {}));
|
||||
var filterCache = [];
|
||||
var filterCacheArray = [];
|
||||
function getBlendFilter(blendMode) {
|
||||
if (!blends.blendFullArray[blendMode]) {
|
||||
return null;
|
||||
}
|
||||
if (!filterCache[blendMode]) {
|
||||
filterCache[blendMode] = new pixi_picture.BlendFilter({ blendCode: blends.blendFullArray[blendMode] });
|
||||
}
|
||||
return filterCache[blendMode];
|
||||
}
|
||||
pixi_picture.getBlendFilter = getBlendFilter;
|
||||
function getBlendFilterArray(blendMode) {
|
||||
if (!blends.blendFullArray[blendMode]) {
|
||||
return null;
|
||||
}
|
||||
if (!filterCacheArray[blendMode]) {
|
||||
filterCacheArray[blendMode] = [this.getBlendFilter(blendMode)];
|
||||
}
|
||||
return filterCacheArray[blendMode];
|
||||
}
|
||||
pixi_picture.getBlendFilterArray = getBlendFilterArray;
|
||||
})(pixi_picture || (pixi_picture = {}));
|
||||
var pixi_picture;
|
||||
(function (pixi_picture) {
|
||||
var Sprite = (function (_super) {
|
||||
__extends(Sprite, _super);
|
||||
function Sprite() {
|
||||
return _super !== null && _super.apply(this, arguments) || this;
|
||||
}
|
||||
Sprite.prototype._render = function (renderer) {
|
||||
var texture = this._texture;
|
||||
if (!texture || !texture.valid) {
|
||||
return;
|
||||
}
|
||||
var blendFilterArray = pixi_picture.getBlendFilterArray(this.blendMode);
|
||||
if (blendFilterArray) {
|
||||
renderer.batch.flush();
|
||||
if (!renderer.filter.pushWithCheck(this, blendFilterArray)) {
|
||||
PictureRenderer.prototype.start = function () {
|
||||
};
|
||||
PictureRenderer.prototype.flush = function () {
|
||||
};
|
||||
PictureRenderer.prototype._getRenderTexture = function (minWidth, minHeight) {
|
||||
if (this._renderTexture.width < minWidth ||
|
||||
this._renderTexture.height < minHeight) {
|
||||
minHeight = nextPow2(minWidth);
|
||||
minHeight = nextPow2(minHeight);
|
||||
this._renderTexture.resize(minWidth, minHeight);
|
||||
}
|
||||
return this._renderTexture;
|
||||
};
|
||||
PictureRenderer.prototype._getBuf = function (size) {
|
||||
var buf = this._bigBuf;
|
||||
if (buf.length < size) {
|
||||
size = nextPow2(size);
|
||||
buf = new Uint8Array(size);
|
||||
this._bigBuf = buf;
|
||||
}
|
||||
return buf;
|
||||
};
|
||||
PictureRenderer.prototype.render = function (sprite) {
|
||||
if (!sprite.texture.valid) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
this.calculateVertices();
|
||||
renderer.batch.setObjectRenderer(renderer.plugins[this.pluginName]);
|
||||
renderer.plugins[this.pluginName].render(this);
|
||||
if (blendFilterArray) {
|
||||
renderer.batch.flush();
|
||||
renderer.filter.pop();
|
||||
}
|
||||
};
|
||||
return Sprite;
|
||||
}(PIXI.Sprite));
|
||||
pixi_picture.Sprite = Sprite;
|
||||
})(pixi_picture || (pixi_picture = {}));
|
||||
var pixi_picture;
|
||||
(function (pixi_picture) {
|
||||
var TilingSprite = (function (_super) {
|
||||
__extends(TilingSprite, _super);
|
||||
function TilingSprite() {
|
||||
return _super !== null && _super.apply(this, arguments) || this;
|
||||
}
|
||||
TilingSprite.prototype._render = function (renderer) {
|
||||
var texture = this._texture;
|
||||
if (!texture || !texture.valid) {
|
||||
return;
|
||||
}
|
||||
var blendFilterArray = pixi_picture.getBlendFilterArray(this.blendMode);
|
||||
if (blendFilterArray) {
|
||||
renderer.batch.flush();
|
||||
if (!renderer.filter.pushWithCheck(this, blendFilterArray)) {
|
||||
var tilingMode = 0;
|
||||
if (sprite.tileTransform) {
|
||||
tilingMode = this._isSimpleSprite(sprite) ? 1 : 2;
|
||||
}
|
||||
var blendShader = this.drawModes[sprite.blendMode];
|
||||
if (blendShader) {
|
||||
this._renderBlend(sprite, blendShader[tilingMode]);
|
||||
}
|
||||
else {
|
||||
this._renderNormal(sprite, this.normalShader[tilingMode]);
|
||||
}
|
||||
};
|
||||
PictureRenderer.prototype._renderNormal = function (sprite, shader) {
|
||||
var renderer = this.renderer;
|
||||
renderer.bindShader(shader);
|
||||
renderer.state.setBlendMode(sprite.blendMode);
|
||||
this._renderInner(sprite, shader);
|
||||
};
|
||||
PictureRenderer.prototype._renderBlend = function (sprite, shader) {
|
||||
var renderer = this.renderer;
|
||||
var spriteBounds = sprite.getBounds();
|
||||
var renderTarget = renderer._activeRenderTarget;
|
||||
var matrix = renderTarget.projectionMatrix;
|
||||
var flipX = matrix.a < 0;
|
||||
var flipY = matrix.d < 0;
|
||||
var resolution = renderTarget.resolution;
|
||||
var screen = this._tempRect;
|
||||
var fr = renderTarget.sourceFrame || renderTarget.destinationFrame;
|
||||
screen.x = 0;
|
||||
screen.y = 0;
|
||||
screen.width = fr.width;
|
||||
screen.height = fr.height;
|
||||
var bounds = this._tempRect2;
|
||||
var fbw = fr.width * resolution, fbh = fr.height * resolution;
|
||||
bounds.x = (spriteBounds.x + matrix.tx / matrix.a) * resolution + fbw / 2;
|
||||
bounds.y = (spriteBounds.y + matrix.ty / matrix.d) * resolution + fbh / 2;
|
||||
bounds.width = spriteBounds.width * resolution;
|
||||
bounds.height = spriteBounds.height * resolution;
|
||||
if (flipX) {
|
||||
bounds.y = fbw - bounds.width - bounds.x;
|
||||
}
|
||||
if (flipY) {
|
||||
bounds.y = fbh - bounds.height - bounds.y;
|
||||
}
|
||||
var screenBounds = this._tempRect3;
|
||||
var x_1 = Math.floor(Math.max(screen.x, bounds.x));
|
||||
var x_2 = Math.ceil(Math.min(screen.x + screen.width, bounds.x + bounds.width));
|
||||
var y_1 = Math.floor(Math.max(screen.y, bounds.y));
|
||||
var y_2 = Math.ceil(Math.min(screen.y + screen.height, bounds.y + bounds.height));
|
||||
var pixelsWidth = x_2 - x_1;
|
||||
var pixelsHeight = y_2 - y_1;
|
||||
if (pixelsWidth <= 0 || pixelsHeight <= 0) {
|
||||
return;
|
||||
}
|
||||
var rt = this._getRenderTexture(pixelsWidth, pixelsHeight);
|
||||
renderer.bindTexture(rt, 1, true);
|
||||
var gl = renderer.gl;
|
||||
if (renderer.renderingToScreen && renderTarget.root) {
|
||||
var buf = this._getBuf(pixelsWidth * pixelsHeight * 4);
|
||||
gl.readPixels(x_1, y_1, pixelsWidth, pixelsHeight, gl.RGBA, gl.UNSIGNED_BYTE, this._bigBuf);
|
||||
gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, 0, pixelsWidth, pixelsHeight, gl.RGBA, gl.UNSIGNED_BYTE, this._bigBuf);
|
||||
}
|
||||
else {
|
||||
gl.copyTexSubImage2D(gl.TEXTURE_2D, 0, 0, 0, x_1, y_1, pixelsWidth, pixelsHeight);
|
||||
}
|
||||
renderer.bindShader(shader);
|
||||
renderer.state.setBlendMode(PIXI.BLEND_MODES.NORMAL);
|
||||
if (shader.uniforms.mapMatrix) {
|
||||
var mapMatrix = this._tempMatrix;
|
||||
mapMatrix.a = bounds.width / rt.width / spriteBounds.width;
|
||||
if (flipX) {
|
||||
mapMatrix.a = -mapMatrix.a;
|
||||
mapMatrix.tx = (bounds.x - x_1) / rt.width - (spriteBounds.x + spriteBounds.width) * mapMatrix.a;
|
||||
}
|
||||
else {
|
||||
mapMatrix.tx = (bounds.x - x_1) / rt.width - spriteBounds.x * mapMatrix.a;
|
||||
}
|
||||
mapMatrix.d = bounds.height / rt.height / spriteBounds.height;
|
||||
if (flipY) {
|
||||
mapMatrix.d = -mapMatrix.d;
|
||||
mapMatrix.ty = (bounds.y - y_1) / rt.height - (spriteBounds.y + spriteBounds.height) * mapMatrix.d;
|
||||
}
|
||||
else {
|
||||
mapMatrix.ty = (bounds.y - y_1) / rt.height - spriteBounds.y * mapMatrix.d;
|
||||
}
|
||||
shader.uniforms.mapMatrix = mapMatrix.toArray(true);
|
||||
}
|
||||
this._renderInner(sprite, shader);
|
||||
};
|
||||
PictureRenderer.prototype._renderInner = function (sprite, shader) {
|
||||
var renderer = this.renderer;
|
||||
if (shader.tilingMode > 0) {
|
||||
this._renderWithShader(sprite, shader.tilingMode === 1, shader);
|
||||
}
|
||||
else {
|
||||
this._renderSprite(sprite, shader);
|
||||
}
|
||||
};
|
||||
PictureRenderer.prototype._renderWithShader = function (ts, isSimple, shader) {
|
||||
var quad = shader.tempQuad;
|
||||
var renderer = this.renderer;
|
||||
renderer.bindVao(quad.vao);
|
||||
var vertices = quad.vertices;
|
||||
var _width = ts._width;
|
||||
var _height = ts._height;
|
||||
var _anchorX = ts._anchor._x;
|
||||
var _anchorY = ts._anchor._y;
|
||||
var w0 = _width * (1 - _anchorX);
|
||||
var w1 = _width * -_anchorX;
|
||||
var h0 = _height * (1 - _anchorY);
|
||||
var h1 = _height * -_anchorY;
|
||||
var wt = ts.transform.worldTransform;
|
||||
var a = wt.a;
|
||||
var b = wt.b;
|
||||
var c = wt.c;
|
||||
var d = wt.d;
|
||||
var tx = wt.tx;
|
||||
var ty = wt.ty;
|
||||
vertices[0] = (a * w1) + (c * h1) + tx;
|
||||
vertices[1] = (d * h1) + (b * w1) + ty;
|
||||
vertices[2] = (a * w0) + (c * h1) + tx;
|
||||
vertices[3] = (d * h1) + (b * w0) + ty;
|
||||
vertices[4] = (a * w0) + (c * h0) + tx;
|
||||
vertices[5] = (d * h0) + (b * w0) + ty;
|
||||
vertices[6] = (a * w1) + (c * h0) + tx;
|
||||
vertices[7] = (d * h0) + (b * w1) + ty;
|
||||
vertices = quad.uvs;
|
||||
vertices[0] = vertices[6] = -ts.anchor.x;
|
||||
vertices[1] = vertices[3] = -ts.anchor.y;
|
||||
vertices[2] = vertices[4] = 1.0 - ts.anchor.x;
|
||||
vertices[5] = vertices[7] = 1.0 - ts.anchor.y;
|
||||
quad.upload();
|
||||
var tex = ts._texture;
|
||||
var lt = ts.tileTransform.localTransform;
|
||||
var uv = ts.uvTransform;
|
||||
var mapCoord = uv.mapCoord;
|
||||
var uClampFrame = uv.uClampFrame;
|
||||
var uClampOffset = uv.uClampOffset;
|
||||
var w = tex.width;
|
||||
var h = tex.height;
|
||||
var W = _width;
|
||||
var H = _height;
|
||||
var tempMat = this._tempMatrix2;
|
||||
tempMat.set(lt.a * w / W, lt.b * w / H, lt.c * h / W, lt.d * h / H, lt.tx / W, lt.ty / H);
|
||||
tempMat.invert();
|
||||
if (isSimple) {
|
||||
tempMat.append(mapCoord);
|
||||
}
|
||||
else {
|
||||
shader.uniforms.uMapCoord = mapCoord.toArray(true);
|
||||
shader.uniforms.uClampFrame = uClampFrame;
|
||||
shader.uniforms.uClampOffset = uClampOffset;
|
||||
}
|
||||
shader.uniforms.uTransform = tempMat.toArray(true);
|
||||
var color = this._tempColor;
|
||||
var alpha = ts.worldAlpha;
|
||||
PIXI.utils.hex2rgb(ts.tint, color);
|
||||
color[0] *= alpha;
|
||||
color[1] *= alpha;
|
||||
color[2] *= alpha;
|
||||
color[3] = alpha;
|
||||
shader.uniforms.uColor = color;
|
||||
renderer.bindTexture(tex, 0, true);
|
||||
quad.vao.draw(this.renderer.gl.TRIANGLES, 6, 0);
|
||||
};
|
||||
PictureRenderer.prototype._renderSprite = function (sprite, shader) {
|
||||
var renderer = this.renderer;
|
||||
var quad = shader.tempQuad;
|
||||
renderer.bindVao(quad.vao);
|
||||
var uvs = sprite.texture._uvs;
|
||||
var vertices = quad.vertices;
|
||||
var vd = sprite.vertexData;
|
||||
for (var i = 0; i < 8; i++) {
|
||||
quad.vertices[i] = vd[i];
|
||||
}
|
||||
quad.uvs[0] = uvs.x0;
|
||||
quad.uvs[1] = uvs.y0;
|
||||
quad.uvs[2] = uvs.x1;
|
||||
quad.uvs[3] = uvs.y1;
|
||||
quad.uvs[4] = uvs.x2;
|
||||
quad.uvs[5] = uvs.y2;
|
||||
quad.uvs[6] = uvs.x3;
|
||||
quad.uvs[7] = uvs.y3;
|
||||
quad.upload();
|
||||
var frame = sprite.texture.frame;
|
||||
var base = sprite.texture.baseTexture;
|
||||
var clamp = this._tempClamp;
|
||||
var eps = 0.5 / base.resolution;
|
||||
clamp[0] = (frame.x + eps) / base.width;
|
||||
clamp[1] = (frame.y + eps) / base.height;
|
||||
clamp[2] = (frame.x + frame.width - eps) / base.width;
|
||||
clamp[3] = (frame.y + frame.height - eps) / base.height;
|
||||
shader.uniforms.uTextureClamp = clamp;
|
||||
var color = this._tempColor;
|
||||
PIXI.utils.hex2rgb(sprite.tint, color);
|
||||
var alpha = sprite.worldAlpha;
|
||||
color[0] *= alpha;
|
||||
color[1] *= alpha;
|
||||
color[2] *= alpha;
|
||||
color[3] = alpha;
|
||||
shader.uniforms.uColor = color;
|
||||
renderer.bindTexture(base, 0, true);
|
||||
quad.vao.draw(this.renderer.gl.TRIANGLES, 6, 0);
|
||||
};
|
||||
PictureRenderer.prototype._isSimpleSprite = function (ts) {
|
||||
var renderer = this.renderer;
|
||||
var tex = ts._texture;
|
||||
var baseTex = tex.baseTexture;
|
||||
var isSimple = baseTex.isPowerOfTwo && tex.frame.width === baseTex.width && tex.frame.height === baseTex.height;
|
||||
if (isSimple) {
|
||||
if (!baseTex._glTextures[renderer.CONTEXT_UID]) {
|
||||
if (baseTex.wrapMode === PIXI.WRAP_MODES.CLAMP) {
|
||||
baseTex.wrapMode = PIXI.WRAP_MODES.REPEAT;
|
||||
}
|
||||
}
|
||||
else {
|
||||
isSimple = baseTex.wrapMode !== PIXI.WRAP_MODES.CLAMP;
|
||||
}
|
||||
}
|
||||
return isSimple;
|
||||
};
|
||||
return PictureRenderer;
|
||||
}(PIXI.ObjectRenderer));
|
||||
extras.PictureRenderer = PictureRenderer;
|
||||
PIXI.WebGLRenderer.registerPlugin('picture', PictureRenderer);
|
||||
PIXI.CanvasRenderer.registerPlugin('picture', PIXI.CanvasSpriteRenderer);
|
||||
})(extras = PIXI.extras || (PIXI.extras = {}));
|
||||
})(PIXI || (PIXI = {}));
|
||||
var PIXI;
|
||||
(function (PIXI) {
|
||||
var extras;
|
||||
(function (extras) {
|
||||
var PictureSprite = (function (_super) {
|
||||
__extends(PictureSprite, _super);
|
||||
function PictureSprite(texture) {
|
||||
_super.call(this, texture);
|
||||
this.pluginName = 'picture';
|
||||
}
|
||||
this.tileTransform.updateLocalTransform();
|
||||
this.uvMatrix.update();
|
||||
renderer.batch.setObjectRenderer(renderer.plugins[this.pluginName]);
|
||||
renderer.plugins[this.pluginName].render(this);
|
||||
if (blendFilterArray) {
|
||||
renderer.batch.flush();
|
||||
renderer.filter.pop();
|
||||
return PictureSprite;
|
||||
}(PIXI.Sprite));
|
||||
extras.PictureSprite = PictureSprite;
|
||||
})(extras = PIXI.extras || (PIXI.extras = {}));
|
||||
})(PIXI || (PIXI = {}));
|
||||
var PIXI;
|
||||
(function (PIXI) {
|
||||
var extras;
|
||||
(function (extras) {
|
||||
var PictureTilingSprite = (function (_super) {
|
||||
__extends(PictureTilingSprite, _super);
|
||||
function PictureTilingSprite(texture) {
|
||||
_super.call(this, texture);
|
||||
this.pluginName = 'picture';
|
||||
}
|
||||
};
|
||||
return TilingSprite;
|
||||
}(PIXI.TilingSprite));
|
||||
pixi_picture.TilingSprite = TilingSprite;
|
||||
})(pixi_picture || (pixi_picture = {}));
|
||||
var pixi_picture;
|
||||
(function (pixi_picture) {
|
||||
PIXI.picture = pixi_picture;
|
||||
})(pixi_picture || (pixi_picture = {}));
|
||||
return PictureTilingSprite;
|
||||
}(extras.TilingSprite));
|
||||
extras.PictureTilingSprite = PictureTilingSprite;
|
||||
})(extras = PIXI.extras || (PIXI.extras = {}));
|
||||
})(PIXI || (PIXI = {}));
|
||||
//# sourceMappingURL=pixi-picture.js.map
|
File diff suppressed because it is too large
Load diff
83858
www/js/libs/pixi.js
83858
www/js/libs/pixi.js
File diff suppressed because it is too large
Load diff
File diff suppressed because one or more lines are too long
9
www/js/libs/pixi.min.js
vendored
9
www/js/libs/pixi.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -51,7 +51,7 @@ AEL.Archeia_CoreChanges = AEL.Archeia_CoreChanges || {};
|
|||
//-----------------------------------------------------------------------------
|
||||
// * Pixi Texture Fix
|
||||
//-----------------------------------------------------------------------------
|
||||
PIXI.GLTexture.prototype.upload = function(source)
|
||||
PIXI.glCore.GLTexture.prototype.upload = function(source)
|
||||
{
|
||||
this.bind();
|
||||
|
||||
|
|
|
@ -1902,13 +1902,7 @@ Gamefall.OmoriFixes = Gamefall.OmoriFixes || {};
|
|||
for (let obj of mainWindows) { obj.filters = []; }
|
||||
}
|
||||
else {
|
||||
let hasToneFilter;
|
||||
if (objects[0].filters !== null) {
|
||||
hasToneFilter = objects[0].filters.length > 0;
|
||||
} else {
|
||||
hasToneFilter = false;
|
||||
}
|
||||
|
||||
let hasToneFilter = objects[0].filters.length > 0;
|
||||
if (!hasToneFilter) {
|
||||
for (let obj of mainWindows) { obj.filters = [this._spriteset.getToneFilter()]; }
|
||||
this._usingToneFilter = true;
|
||||
|
|
|
@ -413,7 +413,7 @@ Scene_OmoriTitleScreen.prototype.createTitleCommands = function () {
|
|||
Scene_OmoriTitleScreen.prototype.createOptionWindowsContainer = function () {
|
||||
// Create Help Window Container
|
||||
this._optionsWindowsContainer = new Sprite();
|
||||
this._optionsWindowsContainer.x = 0;
|
||||
this._optionsWindowsContainer.x = 10;
|
||||
this._optionsWindowsContainer.y = -406;
|
||||
this._optionsWindowsContainer.opacity = 255;
|
||||
this.addChild(this._optionsWindowsContainer);
|
||||
|
@ -424,7 +424,7 @@ Scene_OmoriTitleScreen.prototype.createOptionWindowsContainer = function () {
|
|||
Scene_OmoriTitleScreen.prototype.createHelpWindow = function () {
|
||||
// Create Help Window
|
||||
this._helpWindow = new Window_OmoMenuOptionsHelp();
|
||||
this._helpWindow.x = 10;
|
||||
this._helpWindow.x = 0;
|
||||
this._helpWindow.y = Graphics.height - this._helpWindow.height - 10;
|
||||
this._optionsWindowsContainer.addChild(this._helpWindow);
|
||||
};
|
||||
|
@ -434,8 +434,6 @@ Scene_OmoriTitleScreen.prototype.createHelpWindow = function () {
|
|||
Scene_OmoriTitleScreen.prototype.createOptionCategoriesWindow = function () {
|
||||
// Create Options Categories Window
|
||||
this._optionCategoriesWindow = new Window_OmoMenuOptionsCategory();
|
||||
this._optionCategoriesWindow.x = 10;
|
||||
this._optionCategoriesWindow.y = 37;
|
||||
this._optionCategoriesWindow.deactivate();
|
||||
|
||||
this._optionCategoriesWindow.setHandler('ok', this.onCategoryOk.bind(this));
|
||||
|
@ -462,8 +460,6 @@ Scene_OmoriTitleScreen.prototype.createOptionCategoriesWindow = function () {
|
|||
Scene_OmoriTitleScreen.prototype.createGeneralOptionsWindow = function () {
|
||||
// Create General Options Window
|
||||
this._generalOptionsWindow = new Window_OmoMenuOptionsGeneral();
|
||||
this._generalOptionsWindow.x = 10;
|
||||
this._generalOptionsWindow.y = 37;
|
||||
this._generalOptionsWindow.setHandler('cancel', this.onOptionWindowCancel.bind(this));
|
||||
this._generalOptionsWindow.deactivate()
|
||||
// Set Help Window Position
|
||||
|
@ -478,8 +474,6 @@ Scene_OmoriTitleScreen.prototype.createGeneralOptionsWindow = function () {
|
|||
Scene_OmoriTitleScreen.prototype.createAudioOptionsWindow = function () {
|
||||
// Create Audio Options Window
|
||||
this._audioOptionsWindow = new Window_OmoMenuOptionsAudio();
|
||||
this._audioOptionsWindow.x = 10;
|
||||
this._audioOptionsWindow.y = 37;
|
||||
this._audioOptionsWindow.setHandler('cancel', this.onOptionWindowCancel.bind(this));
|
||||
this._audioOptionsWindow.visible = false;
|
||||
this._optionsWindowsContainer.addChild(this._audioOptionsWindow);
|
||||
|
@ -490,8 +484,6 @@ Scene_OmoriTitleScreen.prototype.createAudioOptionsWindow = function () {
|
|||
Scene_OmoriTitleScreen.prototype.createControllerOptionsWindow = function () {
|
||||
// Create Control Options Window
|
||||
this._controlOptionsWindow = new Window_OmoMenuOptionsControls();
|
||||
this._controlOptionsWindow.x = 10;
|
||||
this._controlOptionsWindow.y = 37;
|
||||
this._controlOptionsWindow.setHandler('cancel', this.onOptionWindowCancel.bind(this));
|
||||
this._controlOptionsWindow.visible = false;
|
||||
this._optionsWindowsContainer.addChild(this._controlOptionsWindow);
|
||||
|
@ -502,8 +494,6 @@ Scene_OmoriTitleScreen.prototype.createControllerOptionsWindow = function () {
|
|||
Scene_OmoriTitleScreen.prototype.createSystemOptionsWindow = function () {
|
||||
// Create System Option Window
|
||||
this._systemOptionsWindow = new Window_OmoMenuOptionsSystem();
|
||||
this._systemOptionsWindow.x = 10;
|
||||
this._systemOptionsWindow.y = 37;
|
||||
this._systemOptionsWindow.setHandler('restoreConfig', () => {
|
||||
ConfigManager.restoreDefaultConfig();
|
||||
this._controlOptionsWindow.makeOptionsList()
|
||||
|
@ -598,12 +588,7 @@ Scene_OmoriTitleScreen.prototype.start = function () {
|
|||
this._lightBulbLinesSprite.opacity = 255;
|
||||
for (var i = 0; i < this._titleCommands.length; i++) {
|
||||
var win = this._titleCommands[i];
|
||||
var patch = 40;
|
||||
win.y = (Graphics.height - win.height) - 15;
|
||||
win.x = win.x - patch;
|
||||
win.width = win.width + patch;
|
||||
win.pivot.x = win.pivot.x - patch;
|
||||
win.children[0].width = win.children[0].width - patch;
|
||||
win.opacity = 255;
|
||||
win.contentsOpacity = 255;
|
||||
};
|
||||
|
@ -1011,7 +996,7 @@ Scene_OmoriTitleScreen.prototype.commandOptions = function () {
|
|||
// Set Duration
|
||||
var duration = 35;
|
||||
var obj = this._optionsWindowsContainer;
|
||||
var data = { obj: obj, properties: ['y', 'opacity'], from: { y: obj.y, opacity: obj.opacity }, to: { y: 0, opacity: 255 }, durations: { y: duration, opacity: duration } }
|
||||
var data = { obj: obj, properties: ['y', 'opacity'], from: { y: obj.y, opacity: obj.opacity }, to: { y: 37, opacity: 255 }, durations: { y: duration, opacity: duration } }
|
||||
data.easing = Object_Movement.easeOutCirc;
|
||||
this.move.startMove(data);
|
||||
}.bind(this))
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,7 +1,6 @@
|
|||
//=============================================================================
|
||||
// rpg_managers.js v1.6.2.2
|
||||
// rpg_managers.js v1.6.1
|
||||
//=============================================================================
|
||||
/*jshint esversion: 6 */
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// DataManager
|
||||
|
@ -35,6 +34,7 @@ var $gameMessage = null;
|
|||
var $gameSwitches = null;
|
||||
var $gameVariables = null;
|
||||
var $gameSelfSwitches = null;
|
||||
var $gameSelfVariables = null;
|
||||
var $gameActors = null;
|
||||
var $gameParty = null;
|
||||
var $gameTroop = null;
|
||||
|
@ -76,10 +76,11 @@ DataManager.loadDatabase = function () {
|
|||
}
|
||||
};
|
||||
|
||||
window._dfs = require("fs");
|
||||
DataManager.loadDataFile = function (name, src) {
|
||||
var xhr = new XMLHttpRequest();
|
||||
var url = CS_URL.MapURL('data/' + src);
|
||||
xhr.open('GET', CS_URL.MapURL(url));
|
||||
var url = _dfs.cachedAlternativeName('data/' + src);
|
||||
xhr.open('GET', url);
|
||||
xhr.overrideMimeType('application/json');
|
||||
xhr.onload = function () {
|
||||
if (xhr.status < 400) {
|
||||
|
@ -207,6 +208,7 @@ DataManager.createGameObjects = function () {
|
|||
$gameSwitches = new Game_Switches();
|
||||
$gameVariables = new Game_Variables();
|
||||
$gameSelfSwitches = new Game_SelfSwitches();
|
||||
$gameSelfVariables = new Game_SelfVariables();
|
||||
$gameActors = new Game_Actors();
|
||||
$gameParty = new Game_Party();
|
||||
$gameTroop = new Game_Troop();
|
||||
|
@ -437,6 +439,7 @@ DataManager.makeSaveContents = function () {
|
|||
contents.switches = $gameSwitches;
|
||||
contents.variables = $gameVariables;
|
||||
contents.selfSwitches = $gameSelfSwitches;
|
||||
contents.selfVariables = $gameSelfVariables;
|
||||
contents.actors = $gameActors;
|
||||
contents.party = $gameParty;
|
||||
contents.map = $gameMap;
|
||||
|
@ -451,6 +454,7 @@ DataManager.extractSaveContents = function (contents) {
|
|||
$gameSwitches = contents.switches;
|
||||
$gameVariables = contents.variables;
|
||||
$gameSelfSwitches = contents.selfSwitches;
|
||||
$gameSelfVariables = contents.selfVariables;
|
||||
$gameActors = contents.actors;
|
||||
$gameParty = contents.party;
|
||||
$gameMap = contents.map;
|
||||
|
@ -603,11 +607,9 @@ StorageManager.remove = function (savefileId) {
|
|||
|
||||
StorageManager.backup = function (savefileId) {
|
||||
if (this.exists(savefileId)) {
|
||||
var data;
|
||||
var compressed;
|
||||
if (this.isLocalMode()) {
|
||||
data = this.loadFromLocalFile(savefileId);
|
||||
compressed = LZString.compressToBase64(data);
|
||||
var data = this.loadFromLocalFile(savefileId);
|
||||
var compressed = LZString.compressToBase64(data);
|
||||
var fs = require('fs');
|
||||
var dirPath = this.localFileDirectoryPath();
|
||||
var filePath = this.localFilePath(savefileId) + ".bak";
|
||||
|
@ -616,8 +618,8 @@ StorageManager.backup = function (savefileId) {
|
|||
}
|
||||
fs.writeFileSync(filePath, compressed);
|
||||
} else {
|
||||
data = this.loadFromWebStorage(savefileId);
|
||||
compressed = LZString.compressToBase64(data);
|
||||
var data = this.loadFromWebStorage(savefileId);
|
||||
var compressed = LZString.compressToBase64(data);
|
||||
var key = this.webStorageKey(savefileId) + "bak";
|
||||
localStorage.setItem(key, compressed);
|
||||
}
|
||||
|
@ -648,11 +650,9 @@ StorageManager.cleanBackup = function (savefileId) {
|
|||
|
||||
StorageManager.restoreBackup = function (savefileId) {
|
||||
if (this.backupExists(savefileId)) {
|
||||
var data;
|
||||
var compressed;
|
||||
if (this.isLocalMode()) {
|
||||
data = this.loadFromLocalBackupFile(savefileId);
|
||||
compressed = LZString.compressToBase64(data);
|
||||
var data = this.loadFromLocalBackupFile(savefileId);
|
||||
var compressed = LZString.compressToBase64(data);
|
||||
var fs = require('fs');
|
||||
var dirPath = this.localFileDirectoryPath();
|
||||
var filePath = this.localFilePath(savefileId);
|
||||
|
@ -662,8 +662,8 @@ StorageManager.restoreBackup = function (savefileId) {
|
|||
fs.writeFileSync(filePath, compressed);
|
||||
fs.unlinkSync(filePath + ".bak");
|
||||
} else {
|
||||
data = this.loadFromWebStorageBackup(savefileId);
|
||||
compressed = LZString.compressToBase64(data);
|
||||
var data = this.loadFromWebStorageBackup(savefileId);
|
||||
var compressed = LZString.compressToBase64(data);
|
||||
var key = this.webStorageKey(savefileId);
|
||||
localStorage.setItem(key, compressed);
|
||||
localStorage.removeItem(key + "bak");
|
||||
|
@ -863,7 +863,7 @@ ImageManager.loadTitle2 = function (filename, hue) {
|
|||
|
||||
ImageManager.loadBitmap = function (folder, filename, hue, smooth) {
|
||||
if (filename) {
|
||||
var path = folder + encodeURIComponent(filename) + '.png';
|
||||
var path = folder + filename + '.png';
|
||||
var bitmap = this.loadNormalBitmap(path, hue || 0);
|
||||
bitmap.smooth = smooth;
|
||||
return bitmap;
|
||||
|
@ -1468,7 +1468,7 @@ AudioManager.makeEmptyAudioObject = function () {
|
|||
|
||||
AudioManager.createBuffer = function (folder, name) {
|
||||
var ext = this.audioFileExt();
|
||||
var url = CS_URL.MapURL(this._path + folder + '/' + encodeURIComponent(name) + ext);
|
||||
var url = this._path + folder + '/' + encodeURIComponent(name) + ext;
|
||||
if (this.shouldUseHtml5Audio() && folder === 'bgm') {
|
||||
if (this._blobUrl) Html5Audio.setup(this._blobUrl);
|
||||
else Html5Audio.setup(url);
|
||||
|
@ -1875,20 +1875,15 @@ SceneManager.initInput = function () {
|
|||
};
|
||||
|
||||
SceneManager.initNwjs = function () {
|
||||
try {
|
||||
if (Utils.isNwjs()) {
|
||||
var gui = require('nw.gui');
|
||||
var win = gui.Window.get();
|
||||
if (process.platform === 'darwin' && !win.menu) {
|
||||
var menubar = new gui.Menu({ type: 'menubar' });
|
||||
var option = { hideEdit: true, hideWindow: true };
|
||||
menubar.createMacBuiltin('Game', option);
|
||||
win.menu = menubar;
|
||||
}
|
||||
if (Utils.isNwjs()) {
|
||||
var gui = require('nw.gui');
|
||||
var win = gui.window;
|
||||
if (process.platform === 'darwin' && !win.menu) {
|
||||
var menubar = new gui.Menu({ type: 'menubar' });
|
||||
var option = { hideEdit: true, hideWindow: true };
|
||||
menubar.createMacBuiltin('Game', option);
|
||||
win.menu = menubar;
|
||||
}
|
||||
} catch (ex)
|
||||
{
|
||||
Utils.isNwjs = function () { return false; };
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -1944,11 +1939,11 @@ SceneManager.onKeyDown = function (event) {
|
|||
location.reload();
|
||||
}
|
||||
break;
|
||||
/*case 119: // F8
|
||||
case 119: // F8
|
||||
if (Utils.isNwjs() && Utils.isOptionValid('test')) {
|
||||
require('nw.gui').Window.get().showDevTools();
|
||||
require('nw.gui').window.showDevTools();
|
||||
}
|
||||
break;*/
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
@ -2834,7 +2829,7 @@ PluginManager.setParameters = function (name, parameters) {
|
|||
};
|
||||
|
||||
PluginManager.loadScript = function (name) {
|
||||
var url = CS_URL.MapURL(this._path + name);
|
||||
var url = this._path + name;
|
||||
var script = document.createElement('script');
|
||||
script.type = 'text/javascript';
|
||||
script.src = url;
|
||||
|
@ -2847,3 +2842,4 @@ PluginManager.loadScript = function (name) {
|
|||
PluginManager.onError = function (e) {
|
||||
this._errorUrls.push(e.target._url);
|
||||
};
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,7 +1,6 @@
|
|||
//=============================================================================
|
||||
// rpg_scenes.js v1.6.2.2
|
||||
// rpg_scenes.js v1.6.1
|
||||
//=============================================================================
|
||||
/*jshint esversion: 6 */
|
||||
|
||||
//=============================================================================
|
||||
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
//=============================================================================
|
||||
// rpg_sprites.js v1.6.2.2
|
||||
// rpg_sprites.js v1.6.1
|
||||
//=============================================================================
|
||||
/*jshint esversion: 6 */
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Sprite_Base
|
||||
|
@ -252,9 +251,9 @@ Sprite_Character.prototype.updateBitmap = function () {
|
|||
|
||||
Sprite_Character.prototype.isImageChanged = function () {
|
||||
return (this._tilesetId !== $gameMap.tilesetId() ||
|
||||
this._tileId !== this._character.tileId() ||
|
||||
this._characterName !== this._character.characterName() ||
|
||||
this._characterIndex !== this._character.characterIndex());
|
||||
this._tileId !== this._character.tileId() ||
|
||||
this._characterName !== this._character.characterName() ||
|
||||
this._characterIndex !== this._character.characterIndex());
|
||||
};
|
||||
|
||||
Sprite_Character.prototype.setTileBitmap = function () {
|
||||
|
@ -648,24 +647,24 @@ Sprite_Actor.prototype = Object.create(Sprite_Battler.prototype);
|
|||
Sprite_Actor.prototype.constructor = Sprite_Actor;
|
||||
|
||||
Sprite_Actor.MOTIONS = {
|
||||
walk: { index: 0, loop: true },
|
||||
wait: { index: 1, loop: true },
|
||||
chant: { index: 2, loop: true },
|
||||
guard: { index: 3, loop: true },
|
||||
damage: { index: 4, loop: false },
|
||||
evade: { index: 5, loop: false },
|
||||
thrust: { index: 6, loop: false },
|
||||
swing: { index: 7, loop: false },
|
||||
missile: { index: 8, loop: false },
|
||||
skill: { index: 9, loop: false },
|
||||
spell: { index: 10, loop: false },
|
||||
item: { index: 11, loop: false },
|
||||
escape: { index: 12, loop: true },
|
||||
victory: { index: 13, loop: true },
|
||||
dying: { index: 14, loop: true },
|
||||
abnormal: { index: 15, loop: true },
|
||||
sleep: { index: 16, loop: true },
|
||||
dead: { index: 17, loop: true }
|
||||
walk: { index: 0, loop: true },
|
||||
wait: { index: 1, loop: true },
|
||||
chant: { index: 2, loop: true },
|
||||
guard: { index: 3, loop: true },
|
||||
damage: { index: 4, loop: false },
|
||||
evade: { index: 5, loop: false },
|
||||
thrust: { index: 6, loop: false },
|
||||
swing: { index: 7, loop: false },
|
||||
missile: { index: 8, loop: false },
|
||||
skill: { index: 9, loop: false },
|
||||
spell: { index: 10, loop: false },
|
||||
item: { index: 11, loop: false },
|
||||
escape: { index: 12, loop: true },
|
||||
victory: { index: 13, loop: true },
|
||||
dying: { index: 14, loop: true },
|
||||
abnormal: { index: 15, loop: true },
|
||||
sleep: { index: 16, loop: true },
|
||||
dead: { index: 17, loop: true }
|
||||
};
|
||||
|
||||
Sprite_Actor.prototype.initialize = function (battler) {
|
||||
|
@ -844,10 +843,10 @@ Sprite_Actor.prototype.motionSpeed = function () {
|
|||
|
||||
Sprite_Actor.prototype.refreshMotion = function () {
|
||||
var actor = this._actor;
|
||||
var motionGuard = Sprite_Actor.MOTIONS.guard;
|
||||
var motionGuard = Sprite_Actor.MOTIONS['guard'];
|
||||
if (actor) {
|
||||
if (this._motion === motionGuard && !BattleManager.isInputting()) {
|
||||
return;
|
||||
return;
|
||||
}
|
||||
var stateMotion = actor.stateMotionIndex();
|
||||
if (actor.isInputting() || actor.isActing()) {
|
||||
|
@ -1020,27 +1019,27 @@ Sprite_Enemy.prototype.setupEffect = function () {
|
|||
Sprite_Enemy.prototype.startEffect = function (effectType) {
|
||||
this._effectType = effectType;
|
||||
switch (this._effectType) {
|
||||
case 'appear':
|
||||
this.startAppear();
|
||||
break;
|
||||
case 'disappear':
|
||||
this.startDisappear();
|
||||
break;
|
||||
case 'whiten':
|
||||
this.startWhiten();
|
||||
break;
|
||||
case 'blink':
|
||||
this.startBlink();
|
||||
break;
|
||||
case 'collapse':
|
||||
this.startCollapse();
|
||||
break;
|
||||
case 'bossCollapse':
|
||||
this.startBossCollapse();
|
||||
break;
|
||||
case 'instantCollapse':
|
||||
this.startInstantCollapse();
|
||||
break;
|
||||
case 'appear':
|
||||
this.startAppear();
|
||||
break;
|
||||
case 'disappear':
|
||||
this.startDisappear();
|
||||
break;
|
||||
case 'whiten':
|
||||
this.startWhiten();
|
||||
break;
|
||||
case 'blink':
|
||||
this.startBlink();
|
||||
break;
|
||||
case 'collapse':
|
||||
this.startCollapse();
|
||||
break;
|
||||
case 'bossCollapse':
|
||||
this.startBossCollapse();
|
||||
break;
|
||||
case 'instantCollapse':
|
||||
this.startInstantCollapse();
|
||||
break;
|
||||
}
|
||||
this.revertToNormal();
|
||||
};
|
||||
|
@ -1083,27 +1082,27 @@ Sprite_Enemy.prototype.updateEffect = function () {
|
|||
if (this._effectDuration > 0) {
|
||||
this._effectDuration--;
|
||||
switch (this._effectType) {
|
||||
case 'whiten':
|
||||
this.updateWhiten();
|
||||
break;
|
||||
case 'blink':
|
||||
this.updateBlink();
|
||||
break;
|
||||
case 'appear':
|
||||
this.updateAppear();
|
||||
break;
|
||||
case 'disappear':
|
||||
this.updateDisappear();
|
||||
break;
|
||||
case 'collapse':
|
||||
this.updateCollapse();
|
||||
break;
|
||||
case 'bossCollapse':
|
||||
this.updateBossCollapse();
|
||||
break;
|
||||
case 'instantCollapse':
|
||||
this.updateInstantCollapse();
|
||||
break;
|
||||
case 'whiten':
|
||||
this.updateWhiten();
|
||||
break;
|
||||
case 'blink':
|
||||
this.updateBlink();
|
||||
break;
|
||||
case 'appear':
|
||||
this.updateAppear();
|
||||
break;
|
||||
case 'disappear':
|
||||
this.updateDisappear();
|
||||
break;
|
||||
case 'collapse':
|
||||
this.updateCollapse();
|
||||
break;
|
||||
case 'bossCollapse':
|
||||
this.updateBossCollapse();
|
||||
break;
|
||||
case 'instantCollapse':
|
||||
this.updateInstantCollapse();
|
||||
break;
|
||||
}
|
||||
if (this._effectDuration === 0) {
|
||||
this._effectType = null;
|
||||
|
@ -1395,7 +1394,7 @@ Sprite_Animation.prototype.updateFrame = function () {
|
|||
|
||||
Sprite_Animation.prototype.currentFrameIndex = function () {
|
||||
return (this._animation.frames.length -
|
||||
Math.floor((this._duration + this._rate - 1) / this._rate));
|
||||
Math.floor((this._duration + this._rate - 1) / this._rate));
|
||||
};
|
||||
|
||||
Sprite_Animation.prototype.updateAllCellSprites = function (frame) {
|
||||
|
@ -1422,10 +1421,10 @@ Sprite_Animation.prototype.updateCellSprite = function (sprite, cell) {
|
|||
sprite.rotation = cell[4] * Math.PI / 180;
|
||||
sprite.scale.x = cell[3] / 100;
|
||||
|
||||
if (cell[5]) {
|
||||
if(cell[5]){
|
||||
sprite.scale.x *= -1;
|
||||
}
|
||||
if (mirror) {
|
||||
if(mirror){
|
||||
sprite.x *= -1;
|
||||
sprite.rotation *= -1;
|
||||
sprite.scale.x *= -1;
|
||||
|
@ -1443,15 +1442,15 @@ Sprite_Animation.prototype.updateCellSprite = function (sprite, cell) {
|
|||
Sprite_Animation.prototype.processTimingData = function (timing) {
|
||||
var duration = timing.flashDuration * this._rate;
|
||||
switch (timing.flashScope) {
|
||||
case 1:
|
||||
this.startFlash(timing.flashColor, duration);
|
||||
break;
|
||||
case 2:
|
||||
this.startScreenFlash(timing.flashColor, duration);
|
||||
break;
|
||||
case 3:
|
||||
this.startHiding(duration);
|
||||
break;
|
||||
case 1:
|
||||
this.startFlash(timing.flashColor, duration);
|
||||
break;
|
||||
case 2:
|
||||
this.startScreenFlash(timing.flashColor, duration);
|
||||
break;
|
||||
case 3:
|
||||
this.startHiding(duration);
|
||||
break;
|
||||
}
|
||||
if (!this._duplicated && timing.se) {
|
||||
AudioManager.playSe(timing.se);
|
||||
|
@ -1614,7 +1613,7 @@ Sprite_StateIcon.prototype.initialize = function () {
|
|||
this.loadBitmap();
|
||||
};
|
||||
|
||||
Sprite_StateIcon._iconWidth = 32;
|
||||
Sprite_StateIcon._iconWidth = 32;
|
||||
Sprite_StateIcon._iconHeight = 32;
|
||||
|
||||
Sprite_StateIcon.prototype.initMembers = function () {
|
||||
|
@ -1908,9 +1907,6 @@ function Sprite_Picture() {
|
|||
Sprite_Picture.prototype = Object.create(Sprite.prototype);
|
||||
Sprite_Picture.prototype.constructor = Sprite_Picture;
|
||||
|
||||
Sprite_Picture.prototype._renderCanvas_PIXI = PIXI.picture.Sprite.prototype._renderCanvas;
|
||||
Sprite_Picture.prototype._render_PIXI = PIXI.picture.Sprite.prototype._render;
|
||||
|
||||
Sprite_Picture.prototype.initialize = function (pictureId) {
|
||||
Sprite.prototype.initialize.call(this);
|
||||
this._pictureId = pictureId;
|
||||
|
@ -2075,7 +2071,7 @@ Sprite_Destination.prototype.initialize = function () {
|
|||
|
||||
Sprite_Destination.prototype.update = function () {
|
||||
Sprite.prototype.update.call(this);
|
||||
if ($gameTemp.isDestinationValid()) {
|
||||
if ($gameTemp.isDestinationValid()){
|
||||
this.updatePosition();
|
||||
this.updateAnimation();
|
||||
this.visible = true;
|
||||
|
@ -2382,14 +2378,14 @@ Spriteset_Map.prototype._canvasReAddParallax = function () {
|
|||
this._parallax = new TilingSprite();
|
||||
this._parallax.move(0, 0, Graphics.width, Graphics.height);
|
||||
this._parallax.bitmap = ImageManager.loadParallax(this._parallaxName);
|
||||
this._baseSprite.addChildAt(this._parallax, index);
|
||||
this._baseSprite.addChildAt(this._parallax,index);
|
||||
};
|
||||
|
||||
Spriteset_Map.prototype.updateParallax = function () {
|
||||
if (this._parallaxName !== $gameMap.parallaxName()) {
|
||||
this._parallaxName = $gameMap.parallaxName();
|
||||
|
||||
if (this._parallax.bitmap && Graphics.isWebGL() !== true) {
|
||||
if (this._parallax.bitmap && Graphics.isWebGL() != true) {
|
||||
this._canvasReAddParallax();
|
||||
} else {
|
||||
this._parallax.bitmap = ImageManager.loadParallax(this._parallaxName);
|
||||
|
@ -2404,14 +2400,6 @@ Spriteset_Map.prototype.updateParallax = function () {
|
|||
Spriteset_Map.prototype.updateTilemap = function () {
|
||||
this._tilemap.origin.x = $gameMap.displayX() * $gameMap.tileWidth();
|
||||
this._tilemap.origin.y = $gameMap.displayY() * $gameMap.tileHeight();
|
||||
/* removed in 1.6.2 - But apparently is still needed for some games */
|
||||
if (this._tilemap.bitmaps) {
|
||||
if (!this.isTilesetReady && this._tilemap.bitmaps.every(bitmap => bitmap.isRequestReady())) {
|
||||
this._tilemap.refresh();
|
||||
this._tilemap.refreshTileset();
|
||||
this.isTilesetReady = true;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
Spriteset_Map.prototype.updateShadow = function () {
|
||||
|
@ -2566,57 +2554,57 @@ Spriteset_Battle.prototype.overworldBattleback2Name = function () {
|
|||
|
||||
Spriteset_Battle.prototype.normalBattleback1Name = function () {
|
||||
return (this.terrainBattleback1Name(this.autotileType(1)) ||
|
||||
this.terrainBattleback1Name(this.autotileType(0)) ||
|
||||
this.defaultBattleback1Name());
|
||||
this.terrainBattleback1Name(this.autotileType(0)) ||
|
||||
this.defaultBattleback1Name());
|
||||
};
|
||||
|
||||
Spriteset_Battle.prototype.normalBattleback2Name = function () {
|
||||
return (this.terrainBattleback2Name(this.autotileType(1)) ||
|
||||
this.terrainBattleback2Name(this.autotileType(0)) ||
|
||||
this.defaultBattleback2Name());
|
||||
this.terrainBattleback2Name(this.autotileType(0)) ||
|
||||
this.defaultBattleback2Name());
|
||||
};
|
||||
|
||||
Spriteset_Battle.prototype.terrainBattleback1Name = function (type) {
|
||||
switch (type) {
|
||||
case 24: case 25:
|
||||
return 'Wasteland';
|
||||
case 26: case 27:
|
||||
return 'DirtField';
|
||||
case 32: case 33:
|
||||
return 'Desert';
|
||||
case 34:
|
||||
return 'Lava1';
|
||||
case 35:
|
||||
return 'Lava2';
|
||||
case 40: case 41:
|
||||
return 'Snowfield';
|
||||
case 42:
|
||||
return 'Clouds';
|
||||
case 4: case 5:
|
||||
return 'PoisonSwamp';
|
||||
default:
|
||||
return null;
|
||||
case 24: case 25:
|
||||
return 'Wasteland';
|
||||
case 26: case 27:
|
||||
return 'DirtField';
|
||||
case 32: case 33:
|
||||
return 'Desert';
|
||||
case 34:
|
||||
return 'Lava1';
|
||||
case 35:
|
||||
return 'Lava2';
|
||||
case 40: case 41:
|
||||
return 'Snowfield';
|
||||
case 42:
|
||||
return 'Clouds';
|
||||
case 4: case 5:
|
||||
return 'PoisonSwamp';
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
Spriteset_Battle.prototype.terrainBattleback2Name = function (type) {
|
||||
switch (type) {
|
||||
case 20: case 21:
|
||||
return 'Forest';
|
||||
case 22: case 30: case 38:
|
||||
return 'Cliff';
|
||||
case 24: case 25: case 26: case 27:
|
||||
return 'Wasteland';
|
||||
case 32: case 33:
|
||||
return 'Desert';
|
||||
case 34: case 35:
|
||||
return 'Lava';
|
||||
case 40: case 41:
|
||||
return 'Snowfield';
|
||||
case 42:
|
||||
return 'Clouds';
|
||||
case 4: case 5:
|
||||
return 'PoisonSwamp';
|
||||
case 20: case 21:
|
||||
return 'Forest';
|
||||
case 22: case 30: case 38:
|
||||
return 'Cliff';
|
||||
case 24: case 25: case 26: case 27:
|
||||
return 'Wasteland';
|
||||
case 32: case 33:
|
||||
return 'Desert';
|
||||
case 34: case 35:
|
||||
return 'Lava';
|
||||
case 40: case 41:
|
||||
return 'Snowfield';
|
||||
case 42:
|
||||
return 'Clouds';
|
||||
case 4: case 5:
|
||||
return 'PoisonSwamp';
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
//=============================================================================
|
||||
// rpg_windows.js v1.6.2.2
|
||||
// rpg_windows.js v1.6.1
|
||||
//=============================================================================
|
||||
/*jshint esversion: 6 */
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Window_Base
|
||||
|
@ -285,6 +284,9 @@ Window_Base.prototype.convertEscapeCharacters = function (text) {
|
|||
text = text.replace(/\x1bV\[(\d+)\]/gi, function () {
|
||||
return $gameVariables.value(parseInt(arguments[1]));
|
||||
}.bind(this));
|
||||
text = text.replace(/\x1bSV\[(\d+)\]/gi, function () {
|
||||
return $gameMap.selfVariableValue(parseInt(arguments[1]));
|
||||
}.bind(this));
|
||||
text = text.replace(/\x1bN\[(\d+)\]/gi, function () {
|
||||
return this.actorName(parseInt(arguments[1]));
|
||||
}.bind(this));
|
||||
|
@ -1481,7 +1483,7 @@ Window_Help.prototype.constructor = Window_Help;
|
|||
|
||||
Window_Help.prototype.initialize = function (numLines) {
|
||||
var width = Graphics.boxWidth;
|
||||
var height = this.fittingHeight(numLines || 2);
|
||||
var height = this.fittingHeight(numLines || 3);
|
||||
Window_Base.prototype.initialize.call(this, 0, 0, width, height);
|
||||
this._text = '';
|
||||
};
|
||||
|
@ -3071,7 +3073,7 @@ Window_ShopNumber.prototype.setup = function (item, max, price) {
|
|||
this._price = price;
|
||||
this._number = 1;
|
||||
this.placeButtons();
|
||||
this.updateButtonsVisibility();
|
||||
this.updateButtonsVisiblity();
|
||||
this.refresh();
|
||||
};
|
||||
|
||||
|
@ -3119,7 +3121,7 @@ Window_ShopNumber.prototype.placeButtons = function () {
|
|||
}
|
||||
};
|
||||
|
||||
Window_ShopNumber.prototype.updateButtonsVisibility = function () {
|
||||
Window_ShopNumber.prototype.updateButtonsVisiblity = function () {
|
||||
if (TouchInput.date > Input.date) {
|
||||
this.showButtons();
|
||||
} else {
|
||||
|
@ -3127,8 +3129,6 @@ Window_ShopNumber.prototype.updateButtonsVisibility = function () {
|
|||
}
|
||||
};
|
||||
|
||||
Window_ShopNumber.prototype.updateButtonsVisiblity = Window_ShopNumber.prototype.updateButtonsVisibility;
|
||||
|
||||
Window_ShopNumber.prototype.showButtons = function () {
|
||||
for (var i = 0; i < this._buttons.length; i++) {
|
||||
this._buttons[i].visible = true;
|
||||
|
@ -3975,7 +3975,7 @@ Window_NumberInput.prototype.start = function () {
|
|||
this._number = this._number.clamp(0, Math.pow(10, this._maxDigits) - 1);
|
||||
this.updatePlacement();
|
||||
this.placeButtons();
|
||||
this.updateButtonsVisibility();
|
||||
this.updateButtonsVisiblity();
|
||||
this.createContents();
|
||||
this.refresh();
|
||||
this.open();
|
||||
|
@ -4057,7 +4057,7 @@ Window_NumberInput.prototype.placeButtons = function () {
|
|||
}
|
||||
};
|
||||
|
||||
Window_NumberInput.prototype.updateButtonsVisibility = function () {
|
||||
Window_NumberInput.prototype.updateButtonsVisiblity = function () {
|
||||
if (TouchInput.date > Input.date) {
|
||||
this.showButtons();
|
||||
} else {
|
||||
|
@ -4065,8 +4065,6 @@ Window_NumberInput.prototype.updateButtonsVisibility = function () {
|
|||
}
|
||||
};
|
||||
|
||||
Window_NumberInput.prototype.updateButtonsVisiblity = Window_NumberInput.prototype.updateButtonsVisibility;
|
||||
|
||||
Window_NumberInput.prototype.showButtons = function () {
|
||||
for (var i = 0; i < this._buttons.length; i++) {
|
||||
this._buttons[i].visible = true;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue