更新download下载

This commit is contained in:
chorblack
2026-02-28 19:10:59 +08:00
parent 64d23ad549
commit c24dd18079
2 changed files with 242 additions and 230 deletions

View File

@@ -2,270 +2,282 @@
<div class="page" @swipe="ban"> <div class="page" @swipe="ban">
<image src="/common/bg.png"></image> <image src="/common/bg.png"></image>
<image <image
style="position: absolute;top: 0;left: 0;" style="position: absolute; top: 0; left: 0"
if="{{trueEnd}}" if="{{trueEnd}}"
src="/common/ATRI_TrueEnding.png" src="/common/ATRI_TrueEnding.png"></image>
></image>
<text <text
class="btn" class="btn"
style="top: 150px;" style="top: 150px"
if="{{trueEnd}}" if="{{trueEnd}}"
@click="loadRecoveryData('TE')" @click="loadRecoveryData('TE')">
>TRUE END</text TRUE END
> </text>
<text class="btn" style="top: 200px;" @click="toPage('detail')">START</text> <text class="btn" style="top: 200px" @click="toPage('detail')">START</text>
<text class="btn" style="top: 250px;" @click="toRecovery()">LOAD</text> <text class="btn" style="top: 250px" @click="toRecovery()">LOAD</text>
<text class="btn" style="top: 300px;" @click="toSettings()">SYSTEM</text> <text class="btn" style="top: 300px" @click="toSettings()">SYSTEM</text>
<text class="btn" style="top: 350px;" @click="exit">EXIT</text> <text class="btn" style="top: 350px" @click="exit">EXIT</text>
<div <div
class="page" class="page"
style="position: absolute;background-color: #ffffff;" style="position: absolute; background-color: #ffffff"
if="{{recovery}}" if="{{recovery}}"
@swipe="back()" @swipe="back()">
>
<scroll scroll-y="true" bounces="true" class="scroll1 page"> <scroll scroll-y="true" bounces="true" class="scroll1 page">
<text <text
class="menu-btn" class="menu-btn"
for="{{recoveryData}}" for="{{recoveryData}}"
style="font-size: 30px;" style="font-size: 30px"
@click="loadRecoveryData($idx)" @click="loadRecoveryData($idx)">
>存档{{ $idx + 1 }}</text 存档{{ $idx + 1 }}
> </text>
</scroll> </scroll>
</div> </div>
<div <div
class="page" class="page"
style="position: absolute;background-color: #ffffff;flex-wrap: nowrap;flex-direction: column;align-items: center;justify-content: center;" style="
position: absolute;
background-color: #ffffff;
flex-wrap: nowrap;
flex-direction: column;
align-items: center;
justify-content: center;
"
if="{{tips}}" if="{{tips}}"
@swipe="ban()" @swipe="ban()">
>
<text class="font24">在"SYSTEM"中调整显示速度和文字大小</text> <text class="font24">在"SYSTEM"中调整显示速度和文字大小</text>
<text class="font24">游戏中左滑进入菜单,右滑返回</text> <text class="font24">游戏中左滑进入菜单,右滑返回</text>
<text class="font24" style="color: #ff0000;" <text class="font24" style="color: #ff0000">
>请先到SYSTEM界面下载文本和图像资源</text 请先到SYSTEM界面下载文本和图像资源
> </text>
<text class="font24">---------------</text> <text class="font24">---------------</text>
<text class="font24">移植:@chorblack</text> <text class="font24">移植:@chorblack</text>
<text class="font24">感谢:@Wxz226@liuyuze61</text> <text class="font24">感谢:@Wxz226@liuyuze61</text>
<text class="font24">---------------</text> <text class="font24">---------------</text>
<text class="font24" style="color: #00a2ff;" @click="closeTips()" <text class="font24" style="color: #00a2ff" @click="closeTips()">
>确定</text 确定
> </text>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import router from '@blueos.app.appmanager.router'; import router from '@blueos.app.appmanager.router'
import storage from '@blueos.storage.storage'; import storage from '@blueos.storage.storage'
import prompt from '@blueos.window.prompt'; import prompt from '@blueos.window.prompt'
export default {
export default { data: {
data: { recovery: false,
recovery: false, recoveryData: [],
recoveryData: [], settingsPage: false,
settingsPage: false, settings: {
settings: { textSpeed: 40,
textSpeed: 40, textSize: 22,
textSize: 22 },
showText: '',
index: 0,
tips: false,
trueEnd: false,
}, },
showText: '', onInit() {
index: 0, storage.get({
tips: false, key: 'recoveryData',
trueEnd: false, success: (data) => {
}, if (data) {
onInit() { this.recoveryData = JSON.parse(data)
storage.get({
key: 'recoveryData',
success: (data) => {
if (data) {
this.recoveryData = JSON.parse(data);
}
},
fail: () => { },
});
storage.get({
key: 'settings',
success: (data) => {
if (data) {
this.settings = JSON.parse(data);
}
},
fail: () => { },
});
storage.get({
key: 'tips',
success: (data) => {
if (data) {
if (JSON.parse(data) !== 61) {
this.tips = true;
} }
} else { },
this.tips = true; fail: () => {},
} })
}, storage.get({
fail: () => { }, key: 'settings',
}); success: (data) => {
storage.get({ if (data) {
key: 'fin', this.settings = JSON.parse(data)
success: (data) => { }
if (data) { },
const fin = JSON.parse(data); fail: () => {},
console.log(fin) })
if (fin.HE === true && fin.BE === true) { this.trueEnd = true } storage.get({
} key: 'tips',
}, success: (data) => {
fail: () => { }, if (data) {
}); if (JSON.parse(data) !== 61) {
}, this.tips = true
toPage(page) { }
router.push({ uri: `pages/${page}` }) } else {
}, this.tips = true
exit() { }
this.$app.exit() },
}, fail: () => {},
ban() { })
console.log('ban') storage.get({
}, key: 'fin',
toRecovery() { success: (data) => {
if (this.recoveryData.length > 0) { if (data) {
const fin = JSON.parse(data)
console.log(fin)
if (fin.HE === true && fin.BE === true) {
this.trueEnd = true
}
}
},
fail: () => {},
})
},
toPage(page) {
router.push({ uri: `pages/${page}` })
},
exit() {
this.$app.exit()
},
ban() {
console.log('ban')
},
toRecovery() {
if (this.recoveryData.length > 0) {
router.push({
uri: `pages/recovery`,
})
this.recovery = true
} else {
prompt.showToast({
message: '无存档',
})
}
},
toSettings() {
router.replace({
uri: 'pages/settings',
})
//this.settingsPage = true;
//this.zhuzi();
},
back(a) {
if (a.direction == 'right' && this.recovery) {
this.recovery = false
} else if (this.settingsPage) {
this.settingsPage = false
}
},
loadRecoveryData(idx) {
router.push({ router.push({
uri: `pages/recovery`, uri: `pages/detail`,
params: {
load: idx,
},
}) })
this.recovery = true },
} changeTextSize(e) {
else { this.settings.textSize = e.progress
prompt.showToast({ },
message: "无存档" changeTextSpeed(e) {
}) this.settings.textSpeed = e.progress
} },
}, /*
toSettings() { zhuzi() {
router.replace({ const text = `Atri -My Dear Moments-\n文字显示样本`
uri: 'pages/settings' if (this.index < text.length) {
}) this.showText += text.charAt(this.index)
//this.settingsPage = true; this.index++
//this.zhuzi(); this.a = setTimeout(() => {
},
back(a) {
if (a.direction == 'right' && this.recovery) { this.recovery = false }
else if (this.settingsPage) { this.settingsPage = false }
},
loadRecoveryData(idx) {
router.push({
uri: `pages/detail`,
params: {
load: idx
}
})
},
changeTextSize(e) {
this.settings.textSize = e.progress;
},
changeTextSpeed(e) {
this.settings.textSpeed = e.progress;
},
zhuzi() {
const text = `Atri -My Dear Moments-\n文字显示样本`
if (this.index < text.length) {
this.showText += text.charAt(this.index);
this.index++;
setTimeout(() => { this.zhuzi() }, this.settings.textSpeed)
}
else {
if (this.settingsPage) {
setTimeout(() => {
this.index = 0;
this.showText = '';
this.zhuzi() this.zhuzi()
}, 2000); }, this.settings.textSpeed)
} else {
if (this.settingsPage) {
this.b = setTimeout(() => {
this.index = 0
this.showText = ''
this.zhuzi()
}, 2000)
}
} }
} },
}, */
saveSettings() { saveSettings() {
storage.set({ storage.set({
key: 'settings', key: 'settings',
value: JSON.stringify(this.settings), value: JSON.stringify(this.settings),
success: () => { prompt.showToast({ message: '保存成功' }) }, success: () => {
fail: () => { }, prompt.showToast({ message: '保存成功' })
}) },
}, fail: () => {},
closeTips() { })
this.tips = false; },
storage.set({ closeTips() {
key: 'tips', this.tips = false
value: JSON.stringify(61), storage.set({
success: () => { }, key: 'tips',
fail: () => { }, value: JSON.stringify(61),
}) success: () => {},
}, fail: () => {},
} })
},
}
</script> </script>
<style> <style>
.page { .page {
width: 390px; width: 390px;
height: 450px; height: 450px;
} }
.btn { .btn {
position: absolute; position: absolute;
font-size: 36px; font-size: 36px;
left: 32px; left: 32px;
height: 50px; /* 新增高度限制 */ height: 50px; /* 新增高度限制 */
font-weight: bold; font-weight: bold;
color: #0a55bc; color: #0a55bc;
} }
.scroll1 { .scroll1 {
position: absolute; position: absolute;
bottom: 0; bottom: 0;
top: 0; top: 0;
left: 0; left: 0;
right: 0; right: 0;
text-overflow: ellipsis; text-overflow: ellipsis;
flex-wrap: nowrap; flex-wrap: nowrap;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
} }
.menu-btn { .menu-btn {
width: 250px; width: 250px;
height: 61px; height: 61px;
background-color: rgba(80, 192, 231, 0.7); background-color: rgba(80, 192, 231, 0.7);
color: #ffffff; color: #ffffff;
font-size: 24px; font-size: 24px;
font-weight: bold; font-weight: bold;
text-align: center; text-align: center;
margin-bottom: 20px; margin-bottom: 20px;
} }
.scroll { .scroll {
position: absolute; position: absolute;
bottom: 0; bottom: 0;
top: 325px; top: 325px;
left: 8px; left: 8px;
right: 0; right: 0;
width: 328px; width: 328px;
height: 155px; height: 155px;
text-overflow: ellipsis; text-overflow: ellipsis;
} }
.slider { .slider {
position: absolute; position: absolute;
width: 230px; width: 230px;
top: 125px; top: 125px;
left: 53px; left: 53px;
} }
.text { .text {
position: absolute; position: absolute;
font-size: 24px; font-size: 24px;
color: #ffffff; color: #ffffff;
top: 71px; top: 71px;
left: 18px; left: 18px;
font-weight: bold; font-weight: bold;
} }
.font24 { .font24 {
font-size: 23px; font-size: 23px;
color: #000000; color: #000000;
font-weight: bold; font-weight: bold;
text-align: center; text-align: center;
} }
</style> </style>

View File

@@ -226,7 +226,7 @@
var p = new Promise((resolve) => (cb = resolve)) var p = new Promise((resolve) => (cb = resolve))
// let byteSize = await send(`/photobyte/${id}`, null, 'GET', 'json') // let byteSize = await send(`/photobyte/${id}`, null, 'GET', 'json')
await send( await send(
`http://download.chorblack.top/directlink/local/atri/${name}`, `http://download.chorblack.top/pd/local/atri/${name}`,
null, null,
'GET', 'GET',
'json' 'json'
@@ -293,7 +293,7 @@
var p = new Promise((resolve) => (cb = resolve)) var p = new Promise((resolve) => (cb = resolve))
// let byteSize = await send(`/photobyte/${id}`, null, 'GET', 'json') // let byteSize = await send(`/photobyte/${id}`, null, 'GET', 'json')
await send( await send(
`http://download.chorblack.top/directlink/local/atri/${name}`, `http://download.chorblack.top/pd/local/atri/${name}`,
null, null,
'GET', 'GET',
'arraybuffer' 'arraybuffer'