2 Star 1 Fork 1

Git游戏/王朝之系谱(The Dynas Tree)

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
index.html 17.27 KB
一键复制 编辑 原始数据 按行查看 历史
zhaolinxu 提交于 2024-06-10 21:46 . fix js
<!DOCTYPE html>
<head>
<!-- Abandoned Discord server: https://discord.gg/KHsjfZF -->
<meta charset="utf-8">
<script>
const modInfo = {
name: "The Dynas Tree",
id: "dyntree",
pointsName: "points",
offlineLimit: 1 // In hours
}
</script>
<title>王朝之系谱 - The Dynas Tree</title>
<link rel="shortcut icon" href="favicon.png" />
<link rel="stylesheet" type="text/css" href="style.css" />
<!--
<link href="https://fonts.googleapis.com/css?family=Inconsolata:wght@300;700" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Inconsolata:wdth@150&display=swap" rel="stylesheet">
-->
<script src="//g8hh.github.io/static/js/jquery.min.js"></script>
<script src="https://lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/vue/2.6.12/vue.min.js"></script>
<script type="text/javascript" src="js/modal.js"></script>
<script type="text/javascript" src="js/break_eternity.js"></script>
<script type="text/javascript" src="js/layerSupport.js"></script>
<script type="text/javascript" src="js/utils.js"></script>
<script type="text/javascript" src="js/saves.js"></script>
<script type="text/javascript" src="js/map.js"></script>
<script type="text/javascript" src="js/layers/row1.js"></script>
<script type="text/javascript" src="js/layers/row2.js"></script>
<script type="text/javascript" src="js/layers/row3.js"></script>
<script type="text/javascript" src="js/layers/row4.js"></script>
<script type="text/javascript" src="js/layers/row5.js"></script>
<script type="text/javascript" src="js/temp.js"></script>
<script type="text/javascript" src="js/game.js"></script>
<script type="text/javascript" src="js/v.js"></script>
<script type="text/javascript" src="js/canvas.js"></script>
</head>
<body onload="load()">
<script src="chs.js"></script>
<script src="core.js"></script>
<div id="app">
<div class="vl" v-if="player.tab!='tree'&&player.tab!='gameEnded'"></div>
<div v-if="player.tab=='gameEnded'" class="fullWidth">
<br>
<h2>{{modInfo.name}} {{VERSION.withoutName}}</h2><br><br>
<h3>Congratulations! You have reached the point of singularity and beaten this game, but for now...</h3><br>
In case you haven't noticed, there will be more content after this. You can keep continuing. but the game has been paused, since singularity was meant to be a forced prestige layer.<br>
<div v-if="!player.timePlayedReset">您一共玩了 {{formatTimeLong(player.timePlayed)}} 以后到达了奇点。</div>
<br>
<button class="longUpg can" onclick="hardReset(true)">Play Again</button>&nbsp;&nbsp;&nbsp;&nbsp;<button class="longUpg can" onclick="keepGoing()">Keep Going</button>
<br><br><br>
<br>
<br><br><br>
</div>
<div v-if="player.tab=='changelog'" class="col right">
<button class="back" onclick="showTab('tree')">&gt;</button><br>
<ul>
<h5><i>“征服世界”</i></h5>
<li><h3>v0.4.0</h3><li>
<li>增加了 <spoiler>奇点</spoiler> 。没有任何文明可以通过它。</li>
<li>增加了 <spoiler>知识</spoiler> 层级。</li>
<li>增加了含有 <spoiler>自动生成世界效果</spoiler><spoiler>世界地图</spoiler> ,在 <spoiler>领土</spoiler> 层级下。</li>
<li>增加了 <spoiler>土地与工作管理</spoiler> ,在 <spoiler>经理</spoiler> 层级下。</li>
<li>增加了更多 <spoiler>银行</spoiler><spoiler>魂灵能量</spoiler> 的重复购买项。</li>
<li>增加了 <spoiler>建筑</spoiler> 的预计完成时间,以及 <spoiler>银行</spoiler> 的总加成倍率。</li>
<li>修复了高于e1000以上的数值格式显示不正确的问题。</li>
<li>增加了成就选项卡。目前只是用来占位置的。以后也不保证一定添加成就。到底会不会添加,这个之后再说吧……</li>
<li>进行了更多的界面调整。</li>
<li>您可能在点数计数上方看到了一个 "世界 &alpha;" 。这到底是个啥?</li>
<br>
<br>
<h5><i>“文明扩张”</i></h5>
<li><h3>v0.3.1</h3><li>
<li>修复了 <spoiler>“市场崩盘” 障碍</spoiler> 未按预想中生效的问题。</li>
<br>
<li><h3>v0.3.0</h3><li>
<li>增加了 <spoiler>领土</spoiler><spoiler>士兵</spoiler> 层级。</li>
<li>增加了更多 <spoiler>建筑</spoiler><spoiler>魔咒</spoiler><spoiler>经理</spoiler> 里程碑。</li>
<li>快捷键在未解锁层级的情况下也能生效。</li>
<li>增加了模态框。当游戏出错时,将显示详细错误信息,以便报告错误。</li>
<br>
<h5><i>“新时代”</i></h5>
<li><h3>v0.2.0</h3><li>
<li>增加了 <spoiler>建造者</spoiler><spoiler>魂灵能量</spoiler> 层级。</li>
<li> <spoiler>经理</spoiler> 层级增加了更多内容。</li>
<li>替换了最后的两个 <spoiler>银行</spoiler> 并将这两个之前的 <spoiler>银行</spoiler> 重新命名了。</li>
<li>将使用的 The Modding Tree 版本升到了 v1.3.4.</li>
<li>更新日志中增加了防剧透的白条,效果类似右边 <spoiler>这个一样</spoiler></li>
<li>进行了部分界面调整。</li>
<br>
<br>
<h5><i>“万物之始”</i></h5>
<li><h3>v0.1.0</h3><li>
<li>增加了 <spoiler>经理</spoiler> 层级(暂时没有实际作用)。</li>
<li>该层级之前的一个层级增加了一些新东西。</li>
<li>修复了一些与游戏进程和存档有关的问题。</li>
<br>
<br>
<h5><i>“史前”</i></h5>
<li><h3>v0.0.1</h3><li>
<li>游戏初期的进程进行了一定程度的平衡调整。</li>
<br>
<li><h3>v0.0.0</h3><li>
<li>呱呱坠地。问题很多。并不平衡。欢迎建议。</li>
</ul>
</div>
<div v-if="player.tab=='old-stuff'" class="col right">
<button class="back" onclick="showTab('changelog')">&gt;</button><br>
<ul>
</ul>
</div>
<div v-if="player.tab=='info'" class="col right">
<button class="back" onclick="showTab('tree')">&gt;</button><br>
<br>
<h2>{{modInfo.name}}</h2>
<br>
<h3>{{VERSION.withName}}</h3>
<br>
<br>
作者:ducdat0507
<br>
本游戏为Jacorb及Aarex的作品:The Prestige Tree的游戏模组
<br>
并使用了Acamaeda的The Modding Tree
<br><br>
<button class="tabButton" onclick="showTab('changelog')" style="background-color:var(--color)">Game Changelog</button><br>
<button class="tabButton" onclick="showDiscordModal()" style="background-color:var(--color)">Discord servers</button><br>
<br><br>
您已经玩了:{{ formatTimeLong(player.timePlayed) }}<br><br>
<h3>Hotkeys</h3><br>
<span v-for="key in hotkeys" v-if="player[key.layer].unl"><br>{{key.desc}}</span>
</div>
<div v-if="player.tab=='achievements'" class="col right">
<button class="back" onclick="showTab('tree')">&gt;</button>
<br/><br/>
<h3>Achievements</h3><br/>
<br/>Unfortunately, this world does not have any achievements.
<br/>
<br/>Current endgame: <spoiler>The Singularity</spoiler>
</div>
<div v-if="player.tab=='statistics'" class="col right">
<button class="back" onclick="showTab('tree')">&gt;</button>
<br/><br/>
<h3>Statistics</h3>
<br/>您已经玩了:{{ formatTimeLong(player.timePlayed) }}.
<br/><br/>
<h3>Layer Breakdown</h3>
<table>
<tbody>
<tr>
<th style="width:240px" colspan="3">Layer / Resource</th>
<th style="width:100px">Amount</th>
<th style="width:100px">Best</th>
<th style="width:100px">Total</th>
</tr>
<tr v-for="res in statsResources" v-bind:style="{'opacity' : res.unl() ? 1 : 0.3, 'font-size': res.name.startsWith('└') || res.name.startsWith('├') ? '14px' : '16px', 'height': res.name.startsWith('└') || res.name.startsWith('├') ? '12px' : '20px'}">
<td style="width:40px;text-align:right">{{res.name.startsWith("└") || res.name.startsWith("├") ? "" : (res.unl() ? res.layer.toUpperCase() : "??")}}</td>
<td>&nbsp;</td>
<td style="text-align:left">{{res.unl() ? res.name : "??????????"}}</td>
<td>{{res.unl() ? res.points() : "??????"}}</td>
<td>{{res.unl() ? (res.best ? res.best() : "") : "??????"}}</td>
<td>{{res.unl() ? (res.total ? res.total() : "") : "??????"}}</td>
</tr>
</tbody>
</table>
</div>
<div v-if="player.tab=='options'" class="col right">
<button class="back" onclick="showTab('tree')">&gt;</button><br>
<div v-if="!player.optionFlavor">
<br/><h3>Saving</h3><br/><br/>
<div style="display:flex">
<button class="option" onclick="save()">Instant save</button>
<button class="option" onclick="toggleOpt('autosave')">Autosave: {{ player.autosave?"ENABLED":"DISABLED" }}</button>
<button class="option" onclick="exportSave()">Export save to clipboard</button>
<button class="option" onclick="importSave()">Import save</button>
<button class="option" onclick="hardReset()">HARD RESET THE GAME</button>
</div>
<br/><h3>Gameplay</h3><br/><br/>
<div style="display:flex">
<button class="option" onclick="toggleOpt('offlineProd')">Offline Production: {{ player.offlineProd?"ENABLED":"DISABLED" }}</td>
</div>
<br/><h3>Display</h3><br/><br/>
<div style="display:flex">
<button class="option" onclick="switchTheme()">Theme: {{ getThemeName().toUpperCase() }}</button>
<button class="option" onclick="adjustMSDisp()">Show Milestones: {{ player.msDisplay.toUpperCase() }}</button>
<button class="option" onclick="toggleOpt('hqTree')">Tree Quality: {{ player.hqTree?"QUALITY":"PERFORMANCE" }}</button>
<button class="option" onclick="toggleOpt('optionFlavor')">Option Tab Flavor: {{ player.optionFlavor?"CLASSIC":"REMADE" }}</button>
<button class="option" onclick="toggleOpt('menuFlavor')">Tree Menu Flavor: {{ player.menuFlavor?"CLASSIC":"TOPBAR" }}</button>
</div>
</div>
<table v-if="player.optionFlavor">
<tr>
<td><button class="opt" onclick="save()">Save</button></td>
<td><button class="opt" onclick="toggleOpt('autosave')">Autosave: {{ player.autosave?"ON":"OFF" }}</button></td>
<td><button class="opt" onclick="hardReset()">HARD RESET</button></td>
</tr>
<tr>
<td><button class="opt" onclick="exportSave()">Export to clipboard</button></td>
<td><button class="opt" onclick="importSave()">Import</button></td>
<td><button class="opt" onclick="toggleOpt('offlineProd')">Offline Prod: {{ player.offlineProd?"ON":"OFF" }}</button></td>
</tr>
<tr>
<td><button class="opt" onclick="switchTheme()">Theme: {{ getThemeName() }}</button></td>
<td><button class="opt" onclick="adjustMSDisp()">Show Milestones: {{ player.msDisplay.toUpperCase() }}</button></td>
<td><button class="opt" onclick="toggleOpt('hqTree')">High-Quality Tree: {{ player.hqTree?"ON":"OFF" }}</button></td>
</tr>
<tr>
<td><button class="opt" onclick="toggleOpt('optionFlavor')">Option Tab Flavor: {{ player.optionFlavor?"CLASSIC":"REMADE" }}</button></td>
<td><button class="opt" onclick="toggleOpt('menuFlavor')">Tree Menu Flavor: {{ player.menuFlavor?"CLASSIC":"TOPBAR" }}</button></td>
</tr>
</table>
</div>
<div id="treeTab" v-if="player.tab!='gameEnded'" onscroll="resizeCanvas()" v-bind:class="{ fullWidth: player.tab == 'tree', col: player.tab != 'tree', left: player.tab != 'tree'}">
<div v-if="player.menuFlavor">
<div id="version" class="overlayThing" style="margin-right: 13px">{{VERSION.withoutName}}</div>
<img id="optionWheel" class="overlayThing" v-if="player.tab!='options'" src="options_wheel.png" onclick="showTab('options')"></img>
<div id="info" v-if="player.tab!='info'" class="overlayThing" onclick="showTab('info')"><br>i</div>
<img id="discord" onclick="showDiscordModal()" src="discord.png" target="_blank"></img>
<div id="achievements" class="overlayThing" v-if="player.tab!='achievements'" onclick="showTab('achievements')">🏆</div>
<div id="stats" class="overlayThing" v-if="player.tab!='statistics'" onclick="showTab('statistics')">📊</div>
</div>
<div v-if="!player.menuFlavor" style="width:100%;background-color:#fff3;position:sticky;top:0px;z-index:2147000000;display: flex">
<button class="topbarButton" style="width:40%" onclick="showTab('info')"><h5 style="font-weight:700">☀️ {{modInfo.name}} {{VERSION.withoutName}}</h5></button><!--
--><button class="topbarButton" style="width:20%" onclick="showTab('achievements')"><h5>🏆 Achievements</h5></button><!--
--><button class="topbarButton" style="width:20%" onclick="showTab('statistics')"><h5>📊 Statistics</h5></button><!--
--><button class="topbarButton" style="width:20%" onclick="showTab('options')"><h5>⚙️ Options</h5></button>
</div>
<br/>
<h5>{{getWorldName()}}</h5>
<h5 v-if="player.devSpeed && player.devSpeed != 1">
设备速度:{{format(player.devSpeed)}} 倍<br>
</h5>
<h5 v-if="player.offTime !== undefined">
离线时间:{{formatTime(player.offTime.remain)}}<br>
</h5>
<br>
<span>You have </span>
<h2 id="points">{{format(player.points)}}</h2>
<span> 点数</span>
<!-- <span> {{modInfo.pointsName}}</span> -->
<br><br>
<!-- *************************** Modify the tree in the table below! *************************** -->
<div v-if="player.points.lt(ENDGAME)">
<table>
<td><layer-node layer='c' abb='金币'></layer-node></td>
</table><table>
<td><button class="treeNode hidden"></button></td>
</table><table>
<td><layer-node layer='wf' abb='中介'></layer-node></td>
<td><layer-node layer='sp' abb='魂灵'></layer-node></td>
<td><layer-node layer='b' abb='银行'></layer-node></td>
</table><table>
<td><button class="treeNode hidden"></button></td>
</table><table>
<td><layer-node layer='w' abb='工人'></layer-node></td>
</table><table>
<td><button class="treeNode hidden"></button></td>
</table><table>
<td><layer-node layer='bd' abb='建造'></layer-node></td>
<td><layer-node layer='so' abb='士兵'></layer-node></td>
<td><layer-node layer='m' abb='经理'></layer-node></td>
<td><layer-node layer='t' abb='领土'></layer-node></td>
<td><layer-node layer='wi' abb='智慧'></layer-node></td>
</table>
</table><table>
<td><button class="treeNode hidden"></button></td>
</table><table>
<td><layer-node layer='s' abb='奇点'></layer-node></td>
</table>
</div>
<div v-if="player.points.gte(ENDGAME)">
<h5>The point of singularity has been reached. Your civilization did not make it through.</h5>
<br/><br/>
<table>
<td><layer-node layer='s' abb='奇点'></layer-node></td>
</table>
</div>
<canvas id="treeCanvas" class="canvas"></canvas>
<br><br>
</div>
<div v-for="layer in LAYERS">
<div v-if="player.tab==layer" v-bind:class="'col right'" v-bind:style="tmp.style[layer] ? tmp.style[layer] : {}" style="background-color: var(--background)">
<button class="back" onclick="showTab('tree')">&gt;</button><br><br><br>
<div v-if="!layers[layer].tabFormat">
<main-display :layer="layer"></main-display>
<prestige-button :layer="layer"></prestige-button>
<span v-if="layers[layer].type=='normal' && tmp.resetGain[layer].lt(100) && player[layer].points.lt(1e3)"><br>您拥有 {{formatWhole(tmp.layerAmt[layer])}} {{layers[layer].baseResource}}。</span>
<br><br>
<span v-if="player[layer].best != undefined">您最高拥有 {{formatWhole(player[layer].best)}} {{layers[layer].resource}}。<br></span>
<span v-if="player[layer].total != undefined">您一共拥有 {{formatWhole(player[layer].total)}} {{layers[layer].resource}}。<br></span>
<milestones :layer="layer"></milestones>
<buyables :layer="layer"></buyables>
<upgrades :layer="layer"></upgrades>
<challs :layer="layer"></challs>
<br><br>
</div>
<div v-if="layers[layer].tabFormat">
<div v-for="data in layers[layer].tabFormat">
<div v-if="!Array.isArray(data)" v-bind:is="data" :layer="layer"></div>
<div v-else-if="data.length==3" v-bind:style="(data[2] ? data[2] : {})" v-bind:is="data[0]" :layer="layer" :data="data[1]"></div>
<div v-else-if="data.length==2" v-bind:is="data[0]" :layer="layer" :data="data[1]">
</div>
</div>
</div>
</div>
</div>
<div class="fullWidth" v-if="modal.showing" style="background-color: #000a; display: flex; z-index: 2147483000">
<div class="modal">
<h3>{{modal.title}}</h3>
<p v-html="modal.content"></p>
<button class="tabButton" style="background-color: var(--color); padding: 5px 20px 5px 20px" onclick="{modal.showing = false}"><p>Close</p></button>
<div>
</div>
</div>
<datalist id="tickmarks" style="color:white">
<option value="0"></option>
<option value="1"></option>
<option value="2"></option>
<option value="3"></option>
<option value="4"></option>
<option value="5"></option>
<option value="6"></option>
<option value="7"></option>
<option value="8"></option>
</datalist>
</body>
<!--客服 开始-->
<link rel="stylesheet" href="//g8hh.github.io/static/css/kf.css" type="text/css" media="screen" charset="utf-8">
<script src="//g8hh.github.io/static/js/kf.js"></script>
<!-- 客服 结束 -->
<!--站长统计-->
<div style="display: none"><script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?f237591d5976f87ca2e06b38c3658d9c";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
</div>
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/idlegame/the-dynas-tree.git
git@gitee.com:idlegame/the-dynas-tree.git
idlegame
the-dynas-tree
王朝之系谱(The Dynas Tree)
master

搜索帮助