diff --git a/languages/en.css b/languages/en.css
index 0e33e03f..bb957e45 100644
--- a/languages/en.css
+++ b/languages/en.css
@@ -248,6 +248,9 @@
.control-box .change-swap-to-copy-lbl::after{
content:"Change \"Swap\" to \"Copy\" when dragging";
}
+.control-box .zip-data-lbl::after{
+ content:"Auto compress formation data in the URL";
+}
.team-total-info .tIf-total-hp::before{
content: "Team HP(Team Awoken & Badge): ";
}
diff --git a/languages/ja.css b/languages/ja.css
index 8656fd44..3f6bd98f 100644
--- a/languages/ja.css
+++ b/languages/ja.css
@@ -241,6 +241,9 @@
.control-box .change-swap-to-copy-lbl::after{
content:"ドラッグ時に「スワップ」を「コピー」に変更";
}
+.control-box .zip-data-lbl::after{
+ content:"URL 内のフォーメーション データを自動圧縮する";
+}
.team-total-info .tIf-total-hp::before{
content: "チームHP(チーム覚醒とバッジ):";
}
diff --git a/languages/ko.css b/languages/ko.css
index 6ad99483..3b79d34a 100644
--- a/languages/ko.css
+++ b/languages/ko.css
@@ -241,6 +241,9 @@
.control-box .change-swap-to-copy-lbl::after{
content:"드래그할 때 \"바꾸기\"를 \"복사\"로 변경";
}
+.control-box .zip-data-lbl::after{
+ content:"URL에서 형성 데이터를 자동 압축";
+}
.team-total-info .tIf-total-hp::before{
content: "팀 HP(팀 각성 및 배지):";
}
diff --git a/languages/zh-TW.css b/languages/zh-TW.css
index 5302151d..9811f828 100644
--- a/languages/zh-TW.css
+++ b/languages/zh-TW.css
@@ -247,6 +247,9 @@
.control-box .change-swap-to-copy-lbl::after{
content:"拖拽時使用“複製”而不是“替換”";
}
+.control-box .zip-data-lbl::after{
+ content:"自動壓縮URL中的隊伍數據";
+}
.team-total-info .tIf-total-hp::before{
content: "隊伍HP(隊伍覺醒和徽章):";
}
diff --git a/languages/zh.css b/languages/zh.css
index 21ad7046..800cfc90 100644
--- a/languages/zh.css
+++ b/languages/zh.css
@@ -247,6 +247,9 @@
.control-box .change-swap-to-copy-lbl::after{
content:"拖拽时使用“复制”而不是“替换”";
}
+.control-box .zip-data-lbl::after{
+ content:"自动压缩URL中的队伍数据";
+}
.team-total-info .tIf-total-hp::before{
content: "队伍HP(队伍觉醒和徽章):";
}
diff --git a/multi.html b/multi.html
index 03b853c3..3a70df86 100644
--- a/multi.html
+++ b/multi.html
@@ -50,6 +50,7 @@ var formation = new Formation(teamsCount,5);
+
diff --git a/script.js b/script.js
index 1e421440..f3180bdb 100644
--- a/script.js
+++ b/script.js
@@ -13,6 +13,7 @@ var statusLine; //储存状态栏
var formationBox; //储存整个formationBox
var editBox; //储存整个editBox
var showSearch; //整个程序都可以用的显示搜索函数
+var zipURL; //储存是否压缩网址数据
const dataStructure = 3; //阵型输出数据的结构版本
const className_displayNone = "display-none";
@@ -338,6 +339,15 @@ window.onload = function()
{
controlBox = document.body.querySelector(".control-box");
statusLine = controlBox.querySelector(".status"); //显示当前状态的
+ const zipClassName = 'zip-data';
+ const zipData = controlBox.querySelector(`#${zipClassName}`);
+ zipData.onchange = function(){
+ localStorage.setItem("PADDF-" + zipClassName, this.checked ? 1 : 0);
+ zipURL = this.checked;
+ }
+ zipData.checked = Boolean(parseInt(localStorage.getItem("PADDF-" + zipClassName)));
+ zipData.onchange();
+
const helpLink = controlBox.querySelector(".help-link");
interchangeSVG = document.body.querySelector("#interchange-line");
interchangeSVG.line = interchangeSVG.querySelector("g line");
@@ -602,8 +612,9 @@ function reloadFormationData()
{
if (parameterDataString.charAt(0) != '{')
{
+ console.log('数据字符串:',parameterDataString.length,parameterDataString);
parameterDataString = pako.inflate(parameterDataString,{to:'string'})
- console.log('数据字符串解压结果:',parameterDataString);
+ console.log('数据字符串解压结果:',parameterDataString.length,parameterDataString);
}
formationData = JSON.parse(parameterDataString);
}
@@ -633,12 +644,21 @@ function creatNewUrl(arg){
if (datasource && datasource!="ja") newSearch.set("s",datasource);
const dataJsonStr = JSON.stringify(outObj); //数据部分的字符串
- const deflate = pako.deflate(dataJsonStr,{to:'string'});
-
- if (outObj) newSearch.set("d",
- deflate.length < dataJsonStr.length ? //压缩后长度小于压缩前长度
- deflate : //使用压缩字符串
- dataJsonStr); //使用原始字符串
+ if (zipURL.checked)
+ {
+ const deflate = pako.deflate(dataJsonStr,{to:'string'});
+ const teamSearch1 = new URLSearchParams();
+ const teamSearch2 = new URLSearchParams();
+ teamSearch1.set('d',dataJsonStr);
+ teamSearch2.set('d',deflate);
+ if (outObj) newSearch.set("d",
+ teamSearch2.length < teamSearch1.length ? //压缩后长度小于压缩前长度
+ deflate : //使用压缩字符串
+ dataJsonStr); //使用原始字符串
+ }else
+ {
+ newSearch.set("d", dataJsonStr);
+ }
const newUrl = (arg.url || "") + '?' + newSearch.toString();
@@ -1239,8 +1259,8 @@ function initialize()
{
refreshLatent(latent,monid,monEditLatents);
};
- const s_hideLessUseLetent = settingBox.querySelector("#hide-less-use-latent");
const hideClassName = 'hide-less-use-latent';
+ const s_hideLessUseLetent = settingBox.querySelector(`#${hideClassName}`);
s_hideLessUseLetent.onchange = function(){
toggleDomClassName(this, hideClassName, true, monEditLatentAllowableUl);
localStorage.setItem("PADDF-" + hideClassName, this.checked ? 1 : 0);
diff --git a/solo.html b/solo.html
index db2ca802..1e788ebe 100644
--- a/solo.html
+++ b/solo.html
@@ -49,6 +49,7 @@ var formation = new Formation(teamsCount,6);
+
diff --git a/triple.html b/triple.html
index 57d8f8f1..6abe4dd7 100644
--- a/triple.html
+++ b/triple.html
@@ -64,6 +64,7 @@ var formation = new Formation(teamsCount,6);
+