Commit 668c1f58 authored by hjistc's avatar hjistc

ygopro ui

parent 1ec68850
...@@ -3,20 +3,22 @@ ...@@ -3,20 +3,22 @@
flex-grow: 1; flex-grow: 1;
position: relative; position: relative;
} }
/*:host:before {*/
/*content: '';*/ :host:before {
/*background-image: url('http://vignette2.wikia.nocookie.net/touhou/images/2/2c/Th10_cover.jpg/revision/latest?cb=20071101234746');*/ content: '';
/*position: absolute;*/ background-image: url('http://vignette2.wikia.nocookie.net/touhou/images/2/2c/Th10_cover.jpg/revision/latest?cb=20071101234746');
/*top: 0;*/ position: absolute;
/*left: 0;*/ top: 0;
/*right: 0;*/ left: 0;
/*bottom: 0;*/ right: 0;
/*z-index: -1;*/ bottom: 0;
/*filter: grayscale(50%) opacity(10%);*/ z-index: -1;
/*background-repeat: no-repeat;*/ filter: grayscale(50%) opacity(10%);
/*background-size: 100% auto;*/ background-repeat: no-repeat;
background-size: 100% auto;
/*}*/
}
.scroll { .scroll {
padding: 1rem; padding: 1rem;
height: 100%; height: 100%;
...@@ -52,7 +54,6 @@ progress { ...@@ -52,7 +54,6 @@ progress {
#news a { #news a {
display: block; display: block;
margin-bottom: 1rem;
} }
#network { #network {
...@@ -75,11 +76,78 @@ progress { ...@@ -75,11 +76,78 @@ progress {
width: 100%; width: 100%;
} }
.custom-file-control:lang(en)::after{ .custom-file-control:lang(en)::after {
content: initial; content: initial;
} }
.custom-file-control { .custom-file-control {
overflow: hidden; overflow: hidden;
white-space: nowrap; white-space: nowrap;
}
h1 {
font-size: 28px;
margin-left: 1rem;
}
#status {
font-size: 15px;
}
h2 {
font-size: 20px;
margin-bottom: 0;
}
#icon {
width: 128px;
height: 128px;
}
#main {
display: flex;
flex-direction: row;
}
.panel {
border: 1px solid #eceeef;
border-radius: 6px;
background: rgba(255, 255, 255, .7);
padding: .8rem;
margin-bottom: 1rem;
position: relative;
}
#news h3 {
padding-top: .8rem;
margin-bottom: 0;
font-size: 1rem;
}
#news p {
font-size: 14px;
color: #888;
}
#news a {
font-size: 14px;
color: #00a4d9;
}
#news span {
font-size: 12px;
color: #ccc;
}
.moreinfo {
color: #00a4d9;
display: block;
position: absolute;
top: 12px;
right: 18px;
font-size: 14px;
}
#local h2 {
margin-bottom: .8rem;
} }
\ No newline at end of file
<div class="scroll"> <div class="scroll">
<h1>{{currentApp.name}}</h1>
<!--应用未安装-->
<div class="actions" *ngIf="!currentApp.isInstalled()">
<button i18n (click)="updateInstallOption(currentApp)" type="button" class="btn btn-primary" data-toggle="modal" data-target="#install-modal">安装</button>
<button i18n *ngIf="currentApp.runnable()" (click)="updateInstallOption(currentApp)" type="button" class="btn btn-secondary" data-toggle="modal" data-target="#import-modal">导入</button>
</div>
<!--应用变更中--> <ygopro *ngIf="currentApp.isReady() && (currentApp.id == 'ygopro')" [app]="currentApp" [currentApp]="currentApp"></ygopro>
<div class="actions" *ngIf="currentApp.isInstalled() && !currentApp.isReady()">
<div>
<span i18n *ngIf="currentApp.isDownloading()">正在下载</span>
<span i18n *ngIf="currentApp.isInstalling()">正在安装...</span>
<span i18n *ngIf="currentApp.isUninstalling()">正在卸载...</span>
<span i18n *ngIf="currentApp.isWaiting()">等待安装...</span>
<span i18n *ngIf="currentApp.isUpdating()">正在更新...</span>
<span *ngIf="currentApp.status.total">{{(currentApp.status.progress/currentApp.status.total * 100).toFixed()}}%</span>
<span>{{currentApp.progressMessage()}}</span>
</div>
<progress class="progress" [class.progress-striped]="!currentApp.status.total" [class.progress-animated]="!currentApp.status.total" value="{{currentApp.status.total ? currentApp.status.progress : 1}}" max="{{currentApp.status.total}}"></progress>
</div>
<!--应用ready--> <div class="panel panel-default">
<div class="actions" *ngIf="currentApp.isReady() && (currentApp.id != 'ygopro')"> <h2 i18n *ngIf="news && news.length">新闻</h2>
<button i18n *ngIf="currentApp.runnable()" (click)="runApp(currentApp)" [disabled]="!appsService.allReady(currentApp)" type="button" class="btn btn-primary">运行</button> <div id="news" *ngFor="let item of news">
<button i18n *ngIf="currentApp.runnable() && currentApp.actions.get('custom')" [disabled]="!appsService.allReady(currentApp)" (click)="custom(currentApp)" type="button" class="btn btn-secondary">设置</button> <h3>{{item.title}}</h3>
<div id="network" *ngIf="currentApp.network && currentApp.network.protocol == 'maotama'"> <span>2017-01-18</span>
<div class="input-group"> <p>{{item.text}}</p>
<input *ngIf="appsService.connections.get(currentApp)" [value]="appsService.connections.get(currentApp).address || 'Loading...'" readonly type="text" class="form-control" title="address"> <a i18n *ngIf="item.url" [href]="item.url" target="_blank">了解更多</a>
<div class="input-group-btn" style="flex-direction: row">
<button i18n *ngIf="!appsService.connections.get(currentApp)" [disabled]="!appsService.allReady(currentApp)" (click)="appsService.network(currentApp, currentApp.network.servers[0])" type="button" class="btn btn-secondary">联机</button>
<button i18n *ngIf="appsService.connections.get(currentApp)" (click)="copy(appsService.connections.get(currentApp).address)" [disabled]="!appsService.connections.get(currentApp).address" type="button" class="btn btn-secondary">复制</button>
<button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" style="height: 38px;"></button>
<div class="dropdown-menu" [class.dropdown-menu-right]="appsService.connections.get(currentApp)">
<h6 i18n class="dropdown-header">选择服务器</h6>
<a *ngFor="let server of currentApp.network.servers" (click)="appsService.network(currentApp, server)" class="dropdown-item" href="#">{{server.id}}</a>
<div *ngIf="appsService.connections.get(currentApp)" class="dropdown-divider"></div>
<a i18n *ngIf="appsService.connections.get(currentApp)" (click)="appsService.connections.get(currentApp).connection.close()" class="dropdown-item" href="#">取消</a>
</div>
</div>
</div> </div>
<a href="https://mycard.moe/ygopro/arena/" target="_blank" class="moreinfo">查看所有新闻</a>
</div> </div>
</div>
<ygopro *ngIf="currentApp.isReady() && (currentApp.id == 'ygopro')" [app]="currentApp"></ygopro>
<h2 i18n *ngIf="news && news.length">新闻</h2>
<div id="news" *ngFor="let item of news">
<h3>{{item.title}}</h3>
<p>{{item.text}}</p>
<a i18n *ngIf="item.url" [href]="item.url" target="_blank">了解更多</a>
</div>
<div *ngIf="currentApp.isReady()"> <div *ngIf="currentApp.isReady()">
<div *ngIf="mods && mods.length"> <div *ngIf="mods && mods.length">
<table class="table table-striped"> <table class="table table-striped">
<thead class="thead-inverse"> <thead class="thead-inverse">
...@@ -78,10 +42,19 @@ ...@@ -78,10 +42,19 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<h2 i18n>本地文件</h2>
<button i18n (click)="appsService.browse(currentApp)" [disabled]="!appsService.allReady(currentApp)" type="button" class="btn btn-secondary">浏览本地文件</button>
<button i18n type="button" (click)="verifyFiles(currentApp)" [disabled]="!appsService.allReady(currentApp)" class="btn btn-secondary">校验完整性</button> <div class="panel panel-default" id="local">
<button i18n (click)="uninstall(currentApp)" [disabled]="!appsService.allReady(currentApp)" type="button" class="btn btn-secondary">卸载</button> <h2 i18n>本地文件</h2>
<div>
<button i18n (click)="appsService.browse(currentApp)" [disabled]="!appsService.allReady(currentApp)" type="button" class="btn btn-secondary btn-sm">浏览本地文件</button>
<button i18n type="button" (click)="verifyFiles(currentApp)" [disabled]="!appsService.allReady(currentApp)" class="btn btn-secondary btn-sm">校验完整性</button>
<button i18n (click)="uninstall(currentApp)" [disabled]="!appsService.allReady(currentApp)" type="button" class="btn btn-secondary btn-sm">卸载</button>
</div>
</div>
</div> </div>
<!--安装modal--> <!--安装modal-->
......
...@@ -11,7 +11,8 @@ ...@@ -11,7 +11,8 @@
<ul *ngIf="grouped_apps.installed" class="nav nav-pills flex-column"> <ul *ngIf="grouped_apps.installed" class="nav nav-pills flex-column">
<li *ngFor="let app of grouped_apps.installed" class="nav-item"> <li *ngFor="let app of grouped_apps.installed" class="nav-item">
<a (click)="$event.preventDefault(); chooseApp(app)" class="nav-link" [class.active]="app===currentApp" [href]="'https://mycard.moe/' + app.id"> <a (click)="$event.preventDefault(); chooseApp(app)" class="nav-link" [class.active]="app===currentApp" [href]="'https://mycard.moe/' + app.id">
<!--<img class="icon" src="https://lh3.googleusercontent.com/-crYEtoQ-4Ho/AAAAAAAAAAI/AAAAAAAAAAA/AKB_U8u0CDmxkVqQgOKesrJIb-6eiXacgA/s32-c-mo/photo.jpg">-->{{app.name}}<i *ngIf="!app.isReady() && !app.status.total" class="spin fa fa-circle-o-notch fa-spin fa-fw"></i> <img class="icon" src="https://lh3.googleusercontent.com/-crYEtoQ-4Ho/AAAAAAAAAAI/AAAAAAAAAAA/AKB_U8u0CDmxkVqQgOKesrJIb-6eiXacgA/s32-c-mo/photo.jpg">
{{app.name}}<i *ngIf="!app.isReady() && !app.status.total" class="spin fa fa-circle-o-notch fa-spin fa-fw"></i>
<div *ngIf="!app.isReady() && app.status.total" class="progress"> <div *ngIf="!app.isReady() && app.status.total" class="progress">
<div class="pie" [class.second-half]="app.status.progress/app.status.total>0.5"> <div class="pie" [class.second-half]="app.status.progress/app.status.total>0.5">
<div class="left-side half-circle" [style.transform]="'rotate('+(app.status.progress/app.status.total).toString()+'turn)'"></div> <div class="left-side half-circle" [style.transform]="'rotate('+(app.status.progress/app.status.total).toString()+'turn)'"></div>
......
:host { /*:host {*/
display: none; /*display: none;*/
} /*}*/
\ No newline at end of file \ No newline at end of file
...@@ -87,4 +87,130 @@ dl { ...@@ -87,4 +87,130 @@ dl {
.modal-dialog { .modal-dialog {
max-width: 600px; max-width: 600px;
}
label {
font-size: 15px;
}
h2 {
font-size: 20px;
}
dt, dd {
font-size: 14px;
}
.panel {
border: 1px solid #eceeef;
border-radius: 6px;
background: rgba(255,255,255,.7);
padding: .8rem;
margin-bottom: 1rem;
}
table {
margin-bottom: 0;
}
table th, table td {
border-top: none;
font-size: 14px;
font-weight: normal;
}
/*.table-curved {*/
/*border-collapse: separate;*/
/*border: solid #ccc 1px;*/
/*border-radius: 6px;*/
/*border-left: 0px;*/
/*border-top: 0px;*/
/*}*/
/*.table-curved > thead:first-child > tr:first-child > th {*/
/*border-bottom: 0px;*/
/*border-top: solid #ccc 1px;*/
/*}*/
/*.table-curved td, .table-curved th {*/
/*border-left: 1px solid #ccc;*/
/*border-top: 1px solid #ccc;*/
/*}*/
/*.table-curved > :first-child > :first-child > :first-child {*/
/*border-radius: 6px 0 0 0;*/
/*}*/
/*.table-curved > :first-child > :first-child > :last-child {*/
/*border-radius: 0 6px 0 0;*/
/*}*/
/*.table-curved > :last-child > :last-child > :first-child {*/
/*border-radius: 0 0 0 6px;*/
/*}*/
/*.table-curved > :last-child > :last-child > :last-child {*/
/*border-radius: 0 0 6px 0;*/
/*}*/
#icon {
width: 128px;
height: 128px;
box-shadow: 0 0 4px #ccc;
}
#main {
display: flex;
flex-direction: row;
}
.panel {
border: 1px solid #eceeef;
border-radius: 6px;
background: rgba(255,255,255,.7);
padding: .8rem;
margin-bottom: 1rem;
position: relative;
}
#right {
margin-left: 1rem;
}
h1 {
font-size: 28px;
margin-bottom: 0;
}
#time {
font-size: 14px;
margin-bottom: .6rem;
}
#action {
margin-bottom: .5rem;
}
form {
margin-bottom: 0;
}
.btn-primary {
background-color: #00a4d9;
border-color: #008dbb;
}
th {
width: 25%;
}
.moreinfo {
color: #00a4d9;
display: block;
position: absolute;
top: 12px;
right: 18px;
font-size: 14px;
}
#arena {
position: relative;
}
select {
margin-right: 0 !important;
} }
\ No newline at end of file
<form class="form-inline actions"> <div id="main" class="panel">
<div class="form-group"> <img id="icon" class="rounded" src="https://raw.githubusercontent.com/mycard/ygopro/master/premake/gframe/ygopro.ico">
<label i18n for="exampleSelect1" class="mr-sm-2">卡组</label> <div id="right">
<select class="form-control mr-sm-2" id="exampleSelect1" name="deck" [(ngModel)]="current_deck"> <h1>{{currentApp.name}}</h1>
<option *ngFor="let deck of decks" [ngValue]="deck">{{deck}}</option> <div id="time">您已玩了 2564 小时</div>
</select> <div id="action">
<button [disabled]="matching||!appsService.allReady(app)" (click)="request_match('athletic')" *ngIf="matching_arena != 'athletic'" type="button" class="btn btn-primary btn-sm">
<i class="fa fa-play" aria-hidden="true"></i> <span i18n>竞技匹配</span></button>
<button i18n [disabled]="!appsService.allReady(app)" (click)="cancel_match()" *ngIf="matching_arena == 'athletic'" type="button" class="btn btn-primary btn-sm">取消等待</button>
<button i18n [disabled]="matching||!appsService.allReady(app)" (click)="request_match('entertain')" *ngIf="matching_arena != 'entertain'" type="button" class="btn btn-secondary btn-sm">娱乐匹配</button>
<button i18n [disabled]="!appsService.allReady(app)" (click)="cancel_match()" *ngIf="matching_arena == 'entertain'" type="button" class="btn btn-secondary btn-sm">取消等待</button>
<!--<button i18n [disabled]="matching||!appsService.allReady(app)" type="button" class="btn btn-secondary btn-sm" data-toggle="modal" data-target="#game-create-modal">创建房间</button>-->
<button i18n [disabled]="matching||!appsService.allReady(app)" type="button" class="btn btn-secondary btn-sm" data-toggle="modal" data-target="#game-list-modal">房间列表</button>
<button i18n [disabled]="!appsService.allReady(app)" type="button" class="btn btn-secondary btn-sm" data-toggle="modal" data-target="#game-create-windbot">单人模式</button>
</div>
<form class="form-inline">
<div class="form-group">
<div class="input-group input-group-sm">
<label i18n class="input-group-addon" id="basic-addon1">卡组</label>
<select class="form-control mr-sm-2 form-control-sm" id="exampleSelect1" name="deck" [(ngModel)]="current_deck">
<option *ngFor="let deck of decks" [ngValue]="deck">{{deck}}</option>
</select>
<!--<input type="text" class="form-control" aria-label="Text input with checkbox">-->
<span class="input-group-btn">
<button i18n [disabled]="!appsService.allReady(app)" type="submit" class="btn btn-secondary mr-sm-2 btn-sm" (click)="edit_deck(current_deck)">编辑</button>
</span>
</div>
<!--< for="exampleSelect1" class="mr-sm-2"></>-->
</div>
<!--<button i18n [disabled]="!appsService.allReady(app)" type="submit" (click)="delete_deck(current_deck)" class="btn btn-secondary mr-sm-2 btn-sm">删除</button>-->
<!--<button i18n [disabled]="!appsService.allReady(app)" type="submit" (click)="refresh()" class="btn btn-secondary mr-sm-2 btn-sm">刷新</button>-->
</form>
</div> </div>
<button i18n [disabled]="!appsService.allReady(app)" type="submit" class="btn btn-secondary mr-sm-2" (click)="edit_deck(current_deck)">编辑</button>
<button i18n [disabled]="!appsService.allReady(app)" type="submit" (click)="delete_deck(current_deck)" class="btn btn-secondary mr-sm-2">删除</button>
<button i18n [disabled]="!appsService.allReady(app)" type="submit" (click)="refresh()" class="btn btn-secondary mr-sm-2">刷新</button>
</form>
<div class="actions">
<button i18n [disabled]="matching||!appsService.allReady(app)" (click)="request_match('athletic')" *ngIf="matching_arena != 'athletic'" type="button" class="btn btn-primary">竞技匹配</button>
<button i18n [disabled]="!appsService.allReady(app)" (click)="cancel_match()" *ngIf="matching_arena == 'athletic'" type="button" class="btn btn-primary">取消等待</button>
<button i18n [disabled]="matching||!appsService.allReady(app)" (click)="request_match('entertain')" *ngIf="matching_arena != 'entertain'" type="button" class="btn btn-secondary">娱乐匹配</button>
<button i18n [disabled]="!appsService.allReady(app)" (click)="cancel_match()" *ngIf="matching_arena == 'entertain'" type="button" class="btn btn-secondary">取消等待</button>
<button i18n [disabled]="matching||!appsService.allReady(app)" type="button" class="btn btn-secondary" data-toggle="modal" data-target="#game-create-modal">创建房间</button>
<button i18n [disabled]="matching||!appsService.allReady(app)" type="button" class="btn btn-secondary" data-toggle="modal" data-target="#game-list-modal">房间列表</button>
<button i18n [disabled]="!appsService.allReady(app)" type="button" class="btn btn-secondary" data-toggle="modal" data-target="#game-create-windbot">单人模式</button>
</div> </div>
<!--应用未安装-->
<div class="actions" *ngIf="!currentApp.isInstalled()">
<button i18n (click)="updateInstallOption(currentApp)" type="button" class="btn btn-primary" data-toggle="modal" data-target="#install-modal">安装</button>
<button i18n *ngIf="currentApp.runnable()" (click)="updateInstallOption(currentApp)" type="button" class="btn btn-secondary" data-toggle="modal" data-target="#import-modal">导入</button>
</div>
<!--应用变更中-->
<div class="actions" *ngIf="currentApp.isInstalled() && !currentApp.isReady()">
<div id="status">
<span i18n *ngIf="currentApp.isDownloading()">正在下载</span>
<span i18n *ngIf="currentApp.isInstalling()">正在安装...</span>
<span i18n *ngIf="currentApp.isUninstalling()">正在卸载...</span>
<span i18n *ngIf="currentApp.isWaiting()">等待安装...</span>
<span i18n *ngIf="currentApp.isUpdating()">正在更新...</span>
<span *ngIf="currentApp.status.total">{{(currentApp.status.progress/currentApp.status.total * 100).toFixed()}}%</span>
<span>{{currentApp.progressMessage()}}</span>
</div>
<progress class="progress" [class.progress-striped]="!currentApp.status.total" [class.progress-animated]="!currentApp.status.total" value="{{currentApp.status.total ? currentApp.status.progress : 1}}" max="{{currentApp.status.total}}"></progress>
</div>
<!--应用ready-->
<div class="actions" *ngIf="currentApp.isReady() && (currentApp.id != 'ygopro')">
<button i18n *ngIf="currentApp.runnable()" (click)="runApp(currentApp)" [disabled]="!appsService.allReady(currentApp)" type="button" class="btn btn-primary">运行</button>
<button i18n *ngIf="currentApp.runnable() && currentApp.actions.get('custom')" [disabled]="!appsService.allReady(currentApp)" (click)="custom(currentApp)" type="button" class="btn btn-secondary">设置</button>
<div id="network" *ngIf="currentApp.network && currentApp.network.protocol == 'maotama'">
<div class="input-group">
<input *ngIf="appsService.connections.get(currentApp)" [value]="appsService.connections.get(currentApp).address || 'Loading...'" readonly type="text" class="form-control" title="address">
<div class="input-group-btn" style="flex-direction: row">
<button i18n *ngIf="!appsService.connections.get(currentApp)" [disabled]="!appsService.allReady(currentApp)" (click)="appsService.network(currentApp, currentApp.network.servers[0])" type="button" class="btn btn-secondary">联机</button>
<button i18n *ngIf="appsService.connections.get(currentApp)" (click)="copy(appsService.connections.get(currentApp).address)" [disabled]="!appsService.connections.get(currentApp).address" type="button" class="btn btn-secondary">复制</button>
<button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" style="height: 38px;"></button>
<div class="dropdown-menu" [class.dropdown-menu-right]="appsService.connections.get(currentApp)">
<h6 i18n class="dropdown-header">选择服务器</h6>
<a *ngFor="let server of currentApp.network.servers" (click)="appsService.network(currentApp, server)" class="dropdown-item" href="#">{{server.id}}</a>
<div *ngIf="appsService.connections.get(currentApp)" class="dropdown-divider"></div>
<a i18n *ngIf="appsService.connections.get(currentApp)" (click)="appsService.connections.get(currentApp).connection.close()" class="dropdown-item" href="#">取消</a>
</div>
</div>
</div>
</div>
</div>
<!--<div class="panel">-->
<!--</div>-->
<div class="actions"> <div class="actions">
<h2 i18n>排位成绩</h2>
<!--{"exp":1839,"exp_rank":"9","pt":2207.2901,"arena_rank":"30","win":"703","lose":"568","draw":5,"all":"1276","ratio":"55.09"}--> <!--{"exp":1839,"exp_rank":"9","pt":2207.2901,"arena_rank":"30","win":"703","lose":"568","draw":5,"all":"1276","ratio":"55.09"}-->
<dl *ngIf="points" class="row col-3">
<dt i18n class="col-8">D.P 排名</dt> <div id="arena" class="panel panel-default" *ngIf="points">
<dd class="col-4">{{points.arena_rank}}</dd> <h2 i18n>排位成绩</h2>
<dt i18n class="col-8">D.P 胜率</dt> <table class="table table-sm">
<dd class="col-4">{{points.athletic_wl_ratio}}%</dd> <tbody>
<dt i18n class="col-8">胜场</dt> <tr>
<dd class="col-4">{{points.athletic_win}}</dd> <th>竞技排名</th>
<dt i18n class="col-8">负场</dt> <td>{{points.arena_rank}}</td>
<dd class="col-4">{{points.athletic_lose}}</dd> <th>娱乐排名</th>
<dt i18n class="col-8">平局</dt> <td>{{points.exp_rank}}</td>
<dd class="col-4">{{points.athletic_draw}}</dd> </tr>
<dt i18n class="col-8">总场</dt> <tr>
<dd class="col-4">{{points.athletic_all}}</dd> <th>竞技胜率</th>
<dt i18n class="col-8">EXP 排名</dt> <td>{{points.athletic_wl_ratio}}%</td>
<dd class="col-4">{{points.exp_rank}}</dd> <th>经验</th>
<dt i18n class="col-8">EXP</dt> <td>{{points.exp}}</td>
<dd class="col-4">{{points.exp}}</dd> </tr>
<dt i18n class="col-8">胜场</dt> <tr>
<dd class="col-4">{{points.entertain_win}}</dd> <th>胜场</th>
<dt i18n class="col-8">负场</dt> <td>{{points.athletic_win}}</td>
<dd class="col-4">{{points.entertain_lose}}</dd> <th>胜场</th>
<dt i18n class="col-8">平局</dt> <td>{{points.entertain_win}}</td>
<dd class="col-4">{{points.entertain_draw}}</dd> </tr>
<dt i18n class="col-8">总场</dt> <tr>
<dd class="col-4">{{points.entertain_all}}</dd> <th>负场</th>
</dl> <td>{{points.entertain_lose}}</td>
<a i18n href="https://mycard.moe/ygopro/arena/" target="_blank">更多资料</a> <th>负场</th>
<td>{{points.entertain_lose}}</td>
</tr>
<tr>
<th>平局</th>
<td>{{points.athletic_draw}}</td>
<th>平局</th>
<td>{{points.entertain_draw}}</td>
</tr>
<tr>
<th>总场</th>
<td>{{points.athletic_all}}</td>
<th>总场</th>
<td>{{points.entertain_all}}</td>
</tr>
</tbody>
</table>
<a i18n href="https://mycard.moe/ygopro/arena/" target="_blank" class="moreinfo">更多资料</a>
</div>
<!--<div *ngIf="points" class="row">-->
<!--<dl class="col-4 row">-->
<!--<dt i18n class="col-8">竞技排名</dt>-->
<!--<dd class="col-4">{{points.arena_rank}}</dd>-->
<!--<dt i18n class="col-8">竞技胜率</dt>-->
<!--<dd class="col-4">{{points.athletic_wl_ratio}}%</dd>-->
<!--<dt i18n class="col-8">胜场</dt>-->
<!--<dd class="col-4">{{points.athletic_win}}</dd>-->
<!--<dt i18n class="col-8">负场</dt>-->
<!--<dd class="col-4">{{points.athletic_lose}}</dd>-->
<!--<dt i18n class="col-8">平局</dt>-->
<!--<dd class="col-4">{{points.athletic_draw}}</dd>-->
<!--<dt i18n class="col-8">总场</dt>-->
<!--<dd class="col-4">{{points.athletic_all}}</dd>-->
<!--</dl>-->
<!--<dl class="col-4 row">-->
<!--<dt i18n class="col-8">娱乐排名</dt>-->
<!--<dd class="col-4">{{points.exp_rank}}</dd>-->
<!--<dt i18n class="col-8">经验</dt>-->
<!--<dd class="col-4">{{points.exp}}</dd>-->
<!--<dt i18n class="col-8">胜场</dt>-->
<!--<dd class="col-4">{{points.entertain_win}}</dd>-->
<!--<dt i18n class="col-8">负场</dt>-->
<!--<dd class="col-4">{{points.entertain_lose}}</dd>-->
<!--<dt i18n class="col-8">平局</dt>-->
<!--<dd class="col-4">{{points.entertain_draw}}</dd>-->
<!--<dt i18n class="col-8">总场</dt>-->
<!--<dd class="col-4">{{points.entertain_all}}</dd>-->
<!--</dl>-->
<!--</div>-->
</div> </div>
<div class="modal fade" id="game-create-windbot" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal fade" id="game-create-windbot" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
......
...@@ -100,6 +100,8 @@ let matching_arena: string | undefined; ...@@ -100,6 +100,8 @@ let matching_arena: string | undefined;
export class YGOProComponent implements OnInit { export class YGOProComponent implements OnInit {
@Input() @Input()
app: App; app: App;
@Input()
currentApp: App;
decks: string[] = []; decks: string[] = [];
current_deck: string; current_deck: string;
system_conf: string; system_conf: string;
......
...@@ -263,7 +263,7 @@ ...@@ -263,7 +263,7 @@
</trans-unit> </trans-unit>
<trans-unit datatype="html" id="86738bd5d32223ffbb690a7c71360ddf8e7b1b2e"> <trans-unit datatype="html" id="86738bd5d32223ffbb690a7c71360ddf8e7b1b2e">
<source>竞技匹配</source> <source>竞技匹配</source>
<target>Ranked Match</target> <target>Ranked</target>
</trans-unit> </trans-unit>
<trans-unit datatype="html" id="37869c115276c5df476f1f5aae75c099ffb35b59"> <trans-unit datatype="html" id="37869c115276c5df476f1f5aae75c099ffb35b59">
...@@ -273,7 +273,7 @@ ...@@ -273,7 +273,7 @@
</trans-unit> </trans-unit>
<trans-unit datatype="html" id="0bf938a69dc640aba46428d1cbbd2fef34c88daa"> <trans-unit datatype="html" id="0bf938a69dc640aba46428d1cbbd2fef34c88daa">
<source>娱乐匹配</source> <source>娱乐匹配</source>
<target>Unranked Match</target> <target>Unranked</target>
</trans-unit> </trans-unit>
<trans-unit datatype="html" id="19923836b1ae79614782426a7a001d8ccfa27b5c"> <trans-unit datatype="html" id="19923836b1ae79614782426a7a001d8ccfa27b5c">
...@@ -283,7 +283,7 @@ ...@@ -283,7 +283,7 @@
</trans-unit> </trans-unit>
<trans-unit datatype="html" id="c54a3c40a2766446dd03b0af75f64055aa404855"> <trans-unit datatype="html" id="c54a3c40a2766446dd03b0af75f64055aa404855">
<source>房间列表</source> <source>房间列表</source>
<target>Game List</target> <target>Custom Game</target>
</trans-unit> </trans-unit>
<trans-unit datatype="html" id="3768b60a7e2625bb1fc2db37eb8c6b8e4bd99101"> <trans-unit datatype="html" id="3768b60a7e2625bb1fc2db37eb8c6b8e4bd99101">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment