Skip to content
Snippets Groups Projects
Commit eb3181ca authored by Pregmodder's avatar Pregmodder
Browse files

Merge branch 'sc2' into 'pregmod-master'

update SugarCube to v2.33.0

See merge request pregmodfan/fc-pregmod!7310
parents 0d1a530f e924eda1
No related branches found
No related tags found
No related merge requests found
......@@ -27,7 +27,7 @@ index 94f98a2..3dcb81a 100644
[SugarCube](http://www.motoslave.net/sugarcube/) is a free (gratis and libre) story format for [Twine/Twee](http://twinery.org/).
diff --git a/build.js b/build.js
index bd4421f..1a64744 100644
index 955b617..acd80f5 100644
--- a/build.js
+++ b/build.js
@@ -30,6 +30,7 @@ const CONFIG = {
......@@ -325,25 +325,25 @@ index 75408a3..3993e1e 100644
}
diff --git a/src/macros/macrocontext.js b/src/macros/macrocontext.js
index addd272..8b9758c 100644
index bd211cd..712e9e1 100644
--- a/src/macros/macrocontext.js
+++ b/src/macros/macrocontext.js
@@ -272,8 +272,8 @@ var MacroContext = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -277,8 +277,8 @@ var MacroContext = (() => { // eslint-disable-line no-unused-vars, no-var
this._debugViewEnabled = false;
}
- error(message, source) {
- return throwError(this._output, `<<${this.name}>>: ${message}`, source ? source : this.source);
- return throwError(this._output, `<<${this.displayName}>>: ${message}`, source ? source : this.source);
+ error(message, source, stack) {
+ return throwError(this._output, `<<${this.name}>>: ${message}`, source ? source : this.source, stack);
+ return throwError(this._output, `<<${this.displayName}>>: ${message}`, source ? source : this.source, stack);
}
}
diff --git a/src/macros/macrolib.js b/src/macros/macrolib.js
index 3608880..b5cbf1d 100644
index fe79b44..12a733e 100644
--- a/src/macros/macrolib.js
+++ b/src/macros/macrolib.js
@@ -89,7 +89,7 @@
@@ -90,7 +90,7 @@
Scripting.evalJavaScript(this.args.full);
}
catch (ex) {
......@@ -352,7 +352,7 @@ index 3608880..b5cbf1d 100644
}
// Custom debug view setup.
@@ -347,7 +347,7 @@
@@ -351,7 +351,7 @@
}
}
catch (ex) {
......@@ -361,7 +361,7 @@ index 3608880..b5cbf1d 100644
}
}
});
@@ -487,7 +487,7 @@
@@ -769,7 +769,7 @@
}
}
catch (ex) {
......@@ -384,7 +384,7 @@ index bc8b018..df7285c 100644
/*
diff --git a/src/passage.js b/src/passage.js
index aa5c2f2..15d4221 100644
index 1b048bb..0517b35 100644
--- a/src/passage.js
+++ b/src/passage.js
@@ -222,8 +222,10 @@ var Passage = (() => { // eslint-disable-line no-unused-vars, no-var
......@@ -401,10 +401,10 @@ index aa5c2f2..15d4221 100644
return frag;
}
diff --git a/src/save.js b/src/save.js
index 5ac0446..a1191d4 100644
index b6cca52..adbf7f1 100644
--- a/src/save.js
+++ b/src/save.js
@@ -30,12 +30,66 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -38,12 +38,66 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
return false;
}
......@@ -474,7 +474,7 @@ index 5ac0446..a1191d4 100644
saves = {
autosave : null,
slots : saves
@@ -45,6 +99,7 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -53,6 +107,7 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
/* /legacy */
// Handle the author changing the number of save slots.
......@@ -482,7 +482,7 @@ index 5ac0446..a1191d4 100644
if (Config.saves.slots !== saves.slots.length) {
if (Config.saves.slots < saves.slots.length) {
// Attempt to decrease the number of slots; this will only compact
@@ -69,10 +124,11 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -77,10 +132,11 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
updated = true;
}
......@@ -495,7 +495,7 @@ index 5ac0446..a1191d4 100644
updated = true;
}
@@ -90,29 +146,39 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -98,29 +154,39 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
/* /legacy */
// If the saves object was updated, then update the store.
......@@ -542,7 +542,7 @@ index 5ac0446..a1191d4 100644
return true;
}
@@ -120,7 +186,6 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -128,7 +194,6 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
return autosaveOk() || slotsOk();
}
......@@ -550,7 +550,7 @@ index 5ac0446..a1191d4 100644
/*******************************************************************************************************************
Autosave Functions.
*******************************************************************************************************************/
@@ -129,28 +194,21 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -137,28 +202,21 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
}
function autosaveHas() {
......@@ -584,7 +584,7 @@ index 5ac0446..a1191d4 100644
}
function autosaveSave(title, metadata) {
@@ -158,25 +216,38 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -166,25 +224,38 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
return false;
}
......@@ -606,11 +606,11 @@ index 5ac0446..a1191d4 100644
supplemental.metadata = metadata;
}
- saves.autosave = _marshal(supplemental);
- saves.autosave = _marshal(supplemental, { type : Type.Autosave });
-
- return _savesObjSave(saves);
+ try {
+ return storage.set('autosave', _marshal(supplemental), false);
+ return storage.set('autosave', _marshal(supplemental, { type : Type.Autosave }), false);
+ } catch (ex) {
+ index.autosave = null;
+ indexSave(index);
......@@ -630,7 +630,7 @@ index 5ac0446..a1191d4 100644
}
@@ -196,14 +267,15 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -204,14 +275,15 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
return 0;
}
......@@ -650,7 +650,7 @@ index 5ac0446..a1191d4 100644
return count;
}
@@ -216,9 +288,9 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -224,9 +296,9 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
return false;
}
......@@ -662,7 +662,7 @@ index 5ac0446..a1191d4 100644
return false;
}
@@ -226,31 +298,19 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -234,31 +306,19 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
}
function slotsGet(slot) {
......@@ -700,7 +700,7 @@ index 5ac0446..a1191d4 100644
}
function slotsSave(slot, title, metadata) {
@@ -269,24 +329,37 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -277,24 +337,37 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
return false;
}
......@@ -731,11 +731,11 @@ index 5ac0446..a1191d4 100644
supplemental.metadata = metadata;
}
- saves.slots[slot] = _marshal(supplemental);
- saves.slots[slot] = _marshal(supplemental, { type : Type.Slot });
-
- return _savesObjSave(saves);
+ try {
+ return storage.set(`slot${slot}`, _marshal(supplemental));
+ return storage.set(`slot${slot}`, _marshal(supplemental, { type : Type.Slot }));
+ } catch (ex) {
+ index.slots[slot] = null;
+ indexSave(index);
......@@ -745,7 +745,7 @@ index 5ac0446..a1191d4 100644
}
function slotsDelete(slot) {
@@ -294,21 +367,23 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -302,21 +375,23 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
return false;
}
......@@ -774,18 +774,18 @@ index 5ac0446..a1191d4 100644
if (typeof Config.saves.isAllowed === 'function' && !Config.saves.isAllowed()) {
if (Dialog.isOpen()) {
$(document).one(':dialogclosed', () => UI.alert(L10n.get('savesDisallowed')));
@@ -352,7 +427,9 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -360,7 +435,9 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
const baseName = filename == null ? Story.domId : legalizeName(filename); // lazy equality for null
const saveName = `${baseName}-${datestamp()}.save`;
const supplemental = metadata == null ? {} : { metadata }; // lazy equality for null
- const saveObj = LZString.compressToBase64(JSON.stringify(_marshal(supplemental)));
- const saveObj = LZString.compressToBase64(JSON.stringify(_marshal(supplemental, { type : Type.Disk })));
+ const saveObj = LZString.compressToBase64(JSON.stringify(
+ marshaledSave == null ? _marshal(supplemental) : marshaledSave
+ marshaledSave == null ? _marshal(supplemental, { type : Type.Disk }) : marshaledSave
+ ));
saveAs(new Blob([saveObj], { type : 'text/plain;charset=UTF-8' }), saveName);
}
@@ -426,10 +503,17 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -434,10 +511,17 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
return saveObj.metadata;
}
......@@ -804,7 +804,7 @@ index 5ac0446..a1191d4 100644
function _appendSlots(array, num) {
for (let i = 0; i < num; ++i) {
array.push(null);
@@ -438,31 +522,8 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -446,31 +530,8 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
return array;
}
......@@ -837,7 +837,7 @@ index 5ac0446..a1191d4 100644
return false;
}
@@ -615,9 +676,9 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
@@ -623,9 +684,9 @@ var Save = (() => { // eslint-disable-line no-unused-vars, no-var
Save Functions.
*/
init : { value : savesInit },
......@@ -849,7 +849,7 @@ index 5ac0446..a1191d4 100644
/*
Autosave Functions.
diff --git a/src/state.js b/src/state.js
index 5ce7c55..69a73a3 100644
index 184c92b..d445630 100644
--- a/src/state.js
+++ b/src/state.js
@@ -104,7 +104,7 @@ var State = (() => { // eslint-disable-line no-unused-vars, no-var
......@@ -882,7 +882,7 @@ index 5ce7c55..69a73a3 100644
for (let i = 1, iend = historyArr.length; i < iend; ++i) {
delta.push(Diff.diff(historyArr[i - 1], historyArr[i]));
diff --git a/src/ui.js b/src/ui.js
index 44fb8fa..df9cb63 100644
index 22fd8ae..97fe8b3 100644
--- a/src/ui.js
+++ b/src/ui.js
@@ -252,7 +252,7 @@ var UI = (() => { // eslint-disable-line no-unused-vars, no-var
......
This diff is collapsed.
Subproject commit 01b018f02691f013d2c568d87a00fad63d3805be
Subproject commit ca942cf77e55a5e86aa606d581b35b790371b1cc
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment