mirror of
https://github.com/VickScarlet/lifeRestart.git
synced 2026-03-29 05:07:42 +08:00
commit870d711162Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Jan 27 16:50:19 2022 +0800 update event commitb327eb1765Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Jan 27 16:36:02 2022 +0800 update event commit4e845bc2ebAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Jan 27 16:35:56 2022 +0800 fix ui feel commitbd508913c5Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Jan 27 16:35:22 2022 +0800 update special thanks commitd097b3bc15Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Jan 27 16:04:55 2022 +0800 add unique character commit8d71b73e94Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Tue Jan 25 21:27:29 2022 +0800 fix: bug save load commit286828abe7Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Tue Jan 25 18:15:22 2022 +0800 add game mode commit0e3c885ad3Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Jan 6 20:09:20 2022 +0800 update special thanks commitb421082374Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Fri Dec 31 20:26:20 2021 +0800 update specialthanks commit765a69294bAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Tue Dec 14 19:10:03 2021 +0800 fix ios goto commit8eb8c3ca72Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Tue Dec 14 19:03:37 2021 +0800 add event grade commitab705dd46cAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Tue Dec 14 18:48:42 2021 +0800 build version commita1e4232369Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Tue Dec 14 18:47:05 2021 +0800 change talent replace before property allocate commitf4d7b3ae3cAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Tue Dec 14 18:06:18 2021 +0800 add event grade commit0567e40ddcAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Dec 2 21:28:10 2021 +0800 add particle commitf17003925eAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Dec 2 20:14:26 2021 +0800 change ui commitf8beda1d8fAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Dec 2 19:08:30 2021 +0800 change popup message ui commit915a2aa17dAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Dec 2 18:34:29 2021 +0800 new build commitb5edabc104Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Dec 2 18:18:46 2021 +0800 add hint message commita143feadafAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Dec 2 17:57:31 2021 +0800 fix copy bug commiteab1975791Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Dec 2 17:56:28 2021 +0800 add save/load commitacf9b92134Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Dec 2 14:35:33 2021 +0800 add theme switch commit488a6054abAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Wed Dec 1 18:30:36 2021 +0800 fix uiManager bug commitf0317eaf14Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Wed Dec 1 16:07:03 2021 +0800 add message popup commiteb02d1ee6fAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Sun Nov 28 21:22:54 2021 +0800 change relocation commit60503eae47Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Sun Nov 28 19:27:16 2021 +0800 change ScaleButton -> Laya.runtime.ScaleButton commit52ef5909c1Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Sun Nov 28 19:26:31 2021 +0800 change ScaleButton -> Laya.runtime.ScaleButton commit0284f6aa71Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Sun Nov 28 19:05:24 2021 +0800 config webpack commit0e272ffd99Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Sun Nov 28 13:17:41 2021 +0800 add thanks commite1e2ab4701Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Sun Nov 28 11:40:21 2021 +0800 add light theme commit4f55c00f86Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Sat Nov 27 22:27:39 2021 +0800 fix bug commit1d07bdfc46Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Sat Nov 27 21:48:47 2021 +0800 daily update commit52d6a0ca8fAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Wed Nov 24 23:10:04 2021 +0800 daily update commitf8dd720d4dAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Wed Nov 24 19:08:13 2021 +0800 daily update commitd088c1a862Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Sun Nov 21 21:41:46 2021 +0800 remove useless commita711fcf3edAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Tue Nov 16 00:53:05 2021 +0800 add achievement popup add page adaptive add talent extends commit05e02de3dbAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Sat Nov 13 01:24:04 2021 +0800 add github and discord commitbff0109cc5Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Sat Nov 13 00:30:01 2021 +0800 add trajectory auto mode commit54c04f65c2Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Fri Nov 12 19:54:31 2021 +0800 fix property judge negative number bug commit660739530bAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Fri Nov 12 19:48:58 2021 +0800 update achievement commitc94e9e7433Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Thu Nov 11 21:37:45 2021 +0800 update daily commitc06cd9ea62Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Tue Nov 9 00:08:05 2021 +0800 update daily commit2666983f89Author: Vick Scarlet <scarlet_vick@outlook.com> Date: Sun Nov 7 23:00:22 2021 +0800 add uiManager auto scan and load skin resource commit22fa5d755aAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Sun Nov 7 22:17:04 2021 +0800 update framework commitf40698d63eAuthor: Vick Scarlet <scarlet_vick@outlook.com> Date: Sun Oct 31 00:13:22 2021 +0800 add laya
162 lines
5.7 KiB
JavaScript
162 lines
5.7 KiB
JavaScript
export default class SaveLoad extends ui.view.SaveLoadUI {
|
||
constructor() {
|
||
super();
|
||
this.btnClose.on(Laya.Event.CLICK, this, async ()=>{
|
||
await this.close();
|
||
$ui.switchView(UI.pages.MAIN);
|
||
});
|
||
this.btnRead.on(Laya.Event.CLICK, this, async ()=>{
|
||
const result = await $$copy(this.input.text = this.data);
|
||
$$event('message', [result? 'UI_CopySuccess': 'UI_CopyFailed']);
|
||
});
|
||
this.btnWrite.on(Laya.Event.CLICK, this, async ()=>{
|
||
const text = await $$read();
|
||
if(text == false) {
|
||
this.data = [
|
||
this.input.text,
|
||
'UI_PasteFailedDecodeSuccess',
|
||
'UI_PasteFailedDecodeFailed'
|
||
];
|
||
} else {
|
||
this.input.text = text;
|
||
this.data = [
|
||
text,
|
||
'UI_PasteSuccessDecodeSuccess',
|
||
'UI_PasteSuccessDecodeFailed'
|
||
];
|
||
}
|
||
});
|
||
|
||
this.btnSave.on(Laya.Event.CLICK, this, ()=>{
|
||
let blob = new Blob([this.data], { type: 'application/json' });
|
||
const slice = blob.slice || blob.webkitSlice || blob.mozSlice;
|
||
blob = slice.call(blob, 0, blob.size, 'application/octet-stream');
|
||
const a = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');
|
||
a.href = URL.createObjectURL(blob);
|
||
a.download = `Remake_save_${new Date().toISOString().replace(':','.')}.json`;
|
||
|
||
document.body.appendChild(a);
|
||
a.click();
|
||
document.body.removeChild(a);
|
||
URL.revokeObjectURL(a.href);
|
||
});
|
||
this.btnLoad.on(Laya.Event.CLICK, this, ()=>{
|
||
const file = document.createElement('input');
|
||
file.setAttribute('type', 'file');
|
||
file.setAttribute('name', 'file');
|
||
file.setAttribute('accept', 'application/json');
|
||
file.setAttribute('style', 'display: none;');
|
||
document.body.appendChild(file);
|
||
file.click();
|
||
file.onchange = (e)=>{
|
||
const file = e.target.files[0];
|
||
if(!file) return;
|
||
const reader = new FileReader();
|
||
reader.onload = () => this.data = [reader.result];
|
||
reader.readAsText(file);
|
||
document.body.removeChild(file);
|
||
};
|
||
});
|
||
this.input.on(Laya.Event.MOUSE_DOWN, this, ()=>{
|
||
this.input.setSelection(0, this.input.text.length);
|
||
})
|
||
|
||
this.btnBackup.on(Laya.Event.CLICK, this, ()=>{
|
||
const board = document.createElement("div");
|
||
document.body.appendChild(board);
|
||
board.style = `
|
||
position: fixed;
|
||
top: 0;
|
||
left: 0;
|
||
right: 0;
|
||
bottom: 0;
|
||
opacity: 0.95`;
|
||
|
||
const bg = document.createElement("div");
|
||
bg.style = `
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
right: 0;
|
||
bottom: 0;
|
||
background: #fff;
|
||
opacity: 0.95`;
|
||
document.body.appendChild(board);
|
||
board.appendChild(bg);
|
||
const textarea = document.createElement("textarea");
|
||
textarea.style = `position: absolute; width: ${window.innerWidth}px; height: ${window.innerHeight}px;`
|
||
textarea.value = JSON.stringify(
|
||
JSON.parse(this.data),
|
||
null,
|
||
4
|
||
);
|
||
board.appendChild(textarea);
|
||
const close = document.createElement("div");
|
||
close.style = `
|
||
position: absolute;
|
||
top: 0;
|
||
right: 0;
|
||
width: 100px;
|
||
height: 100px;
|
||
background: red;
|
||
font-size:100px;
|
||
padding: 0;
|
||
line-height: 100px;
|
||
color: white;
|
||
opacity: 0.7`;
|
||
close.innerHTML = '×';
|
||
board.appendChild(close);
|
||
close.onclick = ()=>board.remove();
|
||
|
||
const load = document.createElement("div");
|
||
load.style = `
|
||
position: absolute;
|
||
bottom: 0;
|
||
right: 0;
|
||
width: 100px;
|
||
height: 100px;
|
||
background: limegreen;
|
||
font-size: 35px;
|
||
padding: 0;
|
||
line-height: 50px;
|
||
color: white;
|
||
opacity: 0.7`;
|
||
load.innerHTML = 'LOAD<br>读取';
|
||
board.appendChild(load);
|
||
load.onclick = ()=>this.data = [textarea.value, '成功/success', '失败/failed', true];
|
||
});
|
||
}
|
||
|
||
static load() {
|
||
return ["images/atlas/images/radio.atlas"];
|
||
}
|
||
|
||
init() {
|
||
this.input.text = this.data;
|
||
}
|
||
|
||
get data() {
|
||
const data = {};
|
||
Object
|
||
.keys(localStorage)
|
||
.filter(v=>v.substr(0,4)!='goog')
|
||
.forEach(key=>data[key] = localStorage[key]);
|
||
return JSON.stringify(data);
|
||
}
|
||
|
||
set data([v, success = 'UI_LoadSuccess', failed = 'UI_LoadFailed', altMsg]) {
|
||
try {
|
||
const data = JSON.parse(v);
|
||
for(const key in data)
|
||
localStorage.setItem(key, data[key]);
|
||
if(altMsg) alert(success);
|
||
else $$event('message', [success]);
|
||
$ui.theme = $ui.theme;
|
||
this.btnClose.event(Laya.Event.CLICK);
|
||
} catch (e) {
|
||
console.error(e);
|
||
if(altMsg) alert(`${failed}\n${e}`);
|
||
else $$event('message', [failed]);
|
||
}
|
||
}
|
||
} |