Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
M
mycard
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
9
Issues
9
List
Boards
Labels
Service Desk
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
MyCard
mycard
Commits
aa081edb
Commit
aa081edb
authored
Dec 07, 2016
by
神楽坂玲奈
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ygopro i18n
parent
09e7a347
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
196 additions
and
150 deletions
+196
-150
app/app-detail.component.html
app/app-detail.component.html
+4
-4
app/app-detail.component.ts
app/app-detail.component.ts
+1
-1
app/app.ts
app/app.ts
+1
-1
app/apps.service.ts
app/apps.service.ts
+31
-10
app/lobby.component.html
app/lobby.component.html
+6
-6
app/ygopro.component.ts
app/ygopro.component.ts
+47
-7
apps.json
apps.json
+105
-120
index.js
index.js
+1
-1
No files found.
app/app-detail.component.html
View file @
aa081edb
...
...
@@ -8,10 +8,10 @@
<!--应用变更中-->
<div
class=
"actions"
*ngIf=
"currentApp.isInstalled() && !currentApp.isReady()"
>
<div>
<span
*ngIf=
"currentApp.isDownloading()"
>
正在下载
</span>
<span
*ngIf=
"currentApp.isInstalling()"
>
正在安装...
</span>
<span
*ngIf=
"currentApp.isUninstalling()"
>
正在卸载...
</span>
<span
*ngIf=
"currentApp.isWaiting()"
>
等待安装...
</span>
<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
*ngIf=
"currentApp.status.total"
>
{{(currentApp.status.progress/currentApp.status.total * 100).toFixed()}}%
</span>
<span>
{{currentApp.progressMessage()}}
</span>
</div>
...
...
app/app-detail.component.ts
View file @
aa081edb
...
...
@@ -74,7 +74,7 @@ export class AppDetailComponent implements OnInit {
async
installMod
(
mod
:
App
)
{
let
option
=
new
InstallOption
(
mod
,
path
.
dirname
(
mod
.
parent
.
local
!
.
path
));
let
option
=
new
InstallOption
(
mod
,
path
.
dirname
(
mod
.
parent
!
.
local
!
.
path
));
await
this
.
install
(
mod
,
option
,
{});
}
...
...
app/app.ts
View file @
aa081edb
...
...
@@ -52,7 +52,7 @@ export class App {
author
:
string
;
// English Only
homepage
:
string
;
category
:
Category
;
parent
:
App
;
parent
?
:
App
;
get
download
():
string
{
let
downloadUrl
=
"
https://thief.mycard.moe/metalinks/
"
;
...
...
app/apps.service.ts
View file @
aa081edb
import
{
Injectable
,
ApplicationRef
,
EventEmitter
}
from
"
@angular/core
"
;
import
{
Http
}
from
"
@angular/http
"
;
import
{
App
,
AppStatus
,
Action
}
from
"
./app
"
;
import
{
App
,
AppStatus
,
Action
,
Category
}
from
"
./app
"
;
import
{
SettingsService
}
from
"
./settings.sevices
"
;
import
*
as
fs
from
"
fs
"
;
import
*
as
path
from
"
path
"
;
...
...
@@ -77,13 +77,15 @@ export class AppsService {
}
// 去除无关语言
for
(
let
key
of
[
'
name
'
,
'
description
'
])
{
for
(
let
key
of
[
'
name
'
,
'
description
'
,
'
news
'
])
{
if
(
app
[
key
])
{
let
value
=
app
[
key
][
locale
];
if
(
!
value
)
{
value
=
app
[
key
][
"
zh-CN
"
];
}
app
[
key
]
=
value
;
}
}
// 去除平台无关的内容
for
(
let
key
of
[
'
actions
'
,
'
dependencies
'
,
'
references
'
,
'
version
'
])
{
...
...
@@ -102,8 +104,8 @@ export class AppsService {
// 设置App关系
//TODO: 这里有必要重新整理一下么?
for
(
let
[
id
]
of
apps
)
{
let
temp
=
app
s
.
get
(
id
)
!
.
actions
;
for
(
let
[
id
,
app
]
of
apps
)
{
let
temp
=
app
.
actions
;
let
map
=
new
Map
<
string
,
any
>
();
for
(
let
action
of
Object
.
keys
(
temp
))
{
let
openId
=
temp
[
action
][
"
open
"
];
...
...
@@ -112,10 +114,9 @@ export class AppsService {
}
map
.
set
(
action
,
temp
[
action
]);
}
app
s
.
get
(
id
)
!
.
actions
=
map
;
app
.
actions
=
map
;
for
(
let
key
of
[
'
dependencies
'
,
'
references
'
,
'
parent
'
])
{
let
app
=
apps
.
get
(
id
)
!
;
let
value
=
app
[
key
];
if
(
value
)
{
if
(
Array
.
isArray
(
value
))
{
...
...
@@ -129,6 +130,26 @@ export class AppsService {
}
}
}
// 为语言包置一个默认的名字
// 这里简易做个 i18n 的 hack
const
lang
=
{
'
en-US
'
:
{
'
en-US
'
:
'
English
'
,
'
zh-CN
'
:
'
Simplified Chinese
'
,
'
zh-TW
'
:
'
Traditional Chinese
'
,
'
language_pack
'
:
'
Language
'
},
'
zh-CN
'
:
{
'
en-US
'
:
'
英文
'
,
'
zh-CN
'
:
'
简体中文
'
,
'
zh-TW
'
:
'
繁体中文
'
,
'
language_pack
'
:
'
语言包
'
}
};
if
(
!
app
.
name
&&
app
.
category
==
Category
.
module
&&
app
.
tags
.
includes
(
'
language
'
)
&&
app
.
parent
)
{
app
.
name
=
`
${
app
.
parent
.
name
}
${
lang
[
locale
].
language_pack
}
(
${
app
.
locales
.
map
((
l
)
=>
lang
[
locale
][
l
]).
join
(
'
,
'
)}
)`
}
}
return
apps
;
};
...
...
app/lobby.component.html
View file @
aa081edb
...
...
@@ -2,7 +2,7 @@
<div
id=
"main"
>
<div
id=
"apps"
*ngIf=
"apps"
>
<span
*ngIf=
"grouped_apps.installed"
>
已安装
</span>
<span
i18n
*ngIf=
"grouped_apps.installed"
>
已安装
</span>
<ul
*ngIf=
"grouped_apps.installed"
class=
"nav nav-sidebar"
>
<li
*ngFor=
"let app of grouped_apps.installed"
[class.active]=
"app===currentApp"
>
<i
*ngIf=
"!app.isReady() && !app.status.total"
class=
"spin fa fa-circle-o-notch fa-spin fa-fw"
></i>
...
...
@@ -17,13 +17,13 @@
</li>
</ul>
<span
*ngIf=
"grouped_apps.recommend"
>
推荐
</span>
<span
i18n
*ngIf=
"grouped_apps.recommend"
>
推荐
</span>
<ul
*ngIf=
"grouped_apps.recommend"
class=
"nav nav-sidebar"
>
<li
*ngFor=
"let app of grouped_apps.recommend"
[class.active]=
"app===currentApp"
>
<a
(click)=
"chooseApp(app)"
href=
"#"
>
{{app.name}}
</a>
</li>
</ul>
<span
*ngIf=
"grouped_apps.mysterious"
>
迷之物体
</span>
<span
i18n
*ngIf=
"grouped_apps.mysterious"
>
迷之物体
</span>
<ul
*ngIf=
"grouped_apps.mysterious"
class=
"nav nav-sidebar"
>
<li
*ngFor=
"let app of grouped_apps.mysterious"
[class.active]=
"app===currentApp"
>
<a
(click)=
"chooseApp(app)"
href=
"#"
>
{{app.name}}
</a>
...
...
@@ -33,7 +33,7 @@
max=
"{{app.status.total}}"
></progress>
</li>
</ul>
<span
*ngIf=
"grouped_apps.touhou"
>
东方 Project
</span>
<span
i18n
*ngIf=
"grouped_apps.touhou"
>
东方 Project
</span>
<ul
*ngIf=
"grouped_apps.touhou"
class=
"nav nav-sidebar"
>
<li
*ngFor=
"let app of grouped_apps.touhou"
[class.active]=
"app===currentApp"
>
<a
(click)=
"chooseApp(app)"
href=
"#"
>
{{app.name}}
</a>
...
...
@@ -43,13 +43,13 @@
max=
"{{app.status.total}}"
></progress>
</li>
</ul>
<span
*ngIf=
"grouped_apps.touhou_pc98"
>
东方旧作
</span>
<span
i18n
*ngIf=
"grouped_apps.touhou_pc98"
>
东方旧作
</span>
<ul
*ngIf=
"grouped_apps.touhou_pc98"
class=
"nav nav-sidebar"
>
<li
*ngFor=
"let app of grouped_apps.touhou_pc98"
[class.active]=
"app===currentApp"
>
<a
(click)=
"chooseApp(app)"
href=
"#"
>
{{app.name}}
</a>
</li>
</ul>
<span
*ngIf=
"grouped_apps.runtime_installed"
>
已安装的运行库
</span>
<span
i18n
*ngIf=
"grouped_apps.runtime_installed"
>
已安装的运行库
</span>
<ul
*ngIf=
"grouped_apps.runtime_installed"
class=
"nav nav-sidebar"
>
<li
*ngFor=
"let app of grouped_apps.runtime_installed"
[class.active]=
"app===currentApp"
>
<a
(click)=
"chooseApp(app)"
href=
"#"
>
{{app.name}}
</a>
...
...
app/ygopro.component.ts
View file @
aa081edb
...
...
@@ -2,7 +2,6 @@
* Created by zh99998 on 16/9/2.
*/
import
{
Component
,
OnInit
,
ChangeDetectorRef
,
Input
}
from
"
@angular/core
"
;
import
{
AppsService
}
from
"
./apps.service
"
;
import
*
as
fs
from
"
fs
"
;
import
*
as
path
from
"
path
"
;
import
*
as
crypto
from
"
crypto
"
;
...
...
@@ -15,7 +14,7 @@ import {App} from "./app";
import
{
Http
,
Headers
,
URLSearchParams
}
from
"
@angular/http
"
;
import
"
rxjs/Rx
"
;
import
{
ISubscription
}
from
"
rxjs/Subscription
"
;
import
{
AppLocal
}
from
"
./app-local
"
;
import
{
SettingsService
}
from
"
./settings.sevices
"
;
declare
const
$
:
any
;
...
...
@@ -109,7 +108,7 @@ export class YGOProComponent implements OnInit {
connections
:
WebSocket
[]
=
[];
constructor
(
private
http
:
Http
,
private
appsService
:
App
sService
,
private
loginService
:
LoginService
,
private
ref
:
ChangeDetectorRef
)
{
constructor
(
private
http
:
Http
,
private
settingsService
:
Setting
sService
,
private
loginService
:
LoginService
,
private
ref
:
ChangeDetectorRef
)
{
switch
(
process
.
platform
)
{
case
'
darwin
'
:
this
.
numfont
=
[
'
/System/Library/Fonts/SFNSTextCondensed-Bold.otf
'
];
...
...
@@ -117,7 +116,7 @@ export class YGOProComponent implements OnInit {
break
;
case
'
win32
'
:
this
.
numfont
=
[
path
.
join
(
process
.
env
[
'
SystemRoot
'
],
'
Fonts
'
,
'
arialbd.ttf
'
)];
this
.
textfont
=
[
path
.
join
(
process
.
env
[
'
SystemRoot
'
],
'
Fonts
'
,
'
simsun.ttc
'
)];
this
.
textfont
=
[
path
.
join
(
process
.
env
[
'
SystemRoot
'
],
'
Fonts
'
,
'
msyh.ttc
'
),
path
.
join
(
process
.
env
[
'
SystemRoot
'
],
'
Fonts
'
,
'
msyh.ttf
'
),
path
.
join
(
process
.
env
[
'
SystemRoot
'
],
'
Fonts
'
,
'
simsun.ttc
'
)];
break
;
}
}
...
...
@@ -208,7 +207,7 @@ export class YGOProComponent implements OnInit {
}
}
if
(
!
await
this
.
get_font
([
data
.
textfont
.
split
(
'
'
,
2
)[
0
]]))
{
if
(
data
.
textfont
==
'
c:/windows/fonts/simsun.ttc 14
'
||
!
await
this
.
get_font
([
data
.
textfont
.
split
(
'
'
,
2
)[
0
]]))
{
let
font
=
await
this
.
get_font
(
this
.
textfont
);
if
(
font
)
{
data
[
'
textfont
'
]
=
`
${
font
}
14`
...
...
@@ -258,10 +257,51 @@ export class YGOProComponent implements OnInit {
return
this
.
join
(
'
AI#
'
+
name
,
this
.
servers
[
0
])
}
start_game
(
args
:
string
[])
{
async
start_game
(
args
:
string
[])
{
let
win
=
remote
.
getCurrentWindow
();
win
.
minimize
();
console
.
log
(
path
.
join
(
this
.
app
.
local
!
.
path
,
this
.
app
.
actions
.
get
(
'
main
'
)
!
.
execute
),
args
,
{
cwd
:
this
.
app
.
local
!
.
path
});
let
locale
=
this
.
settingsService
.
getLocale
();
if
(
localStorage
.
getItem
(
'
ygopro-locale
'
)
!=
locale
)
{
console
.
log
(
`try convert ygopro locale to
${
locale
}
`
)
try
{
await
new
Promise
((
resolve
,
reject
)
=>
{
let
source
=
fs
.
createReadStream
(
path
.
join
(
this
.
app
.
local
!
.
path
,
'
locales
'
,
locale
,
'
strings.conf
'
));
source
.
on
(
'
open
'
,
(
error
:
Error
)
=>
{
let
destination
=
fs
.
createWriteStream
(
path
.
join
(
this
.
app
.
local
!
.
path
,
'
strings.conf
'
));
source
.
pipe
(
destination
);
destination
.
on
(
'
error
'
,
(
error
:
Error
)
=>
{
reject
(
error
)
});
destination
.
on
(
'
close
'
,
()
=>
{
resolve
()
})
});
source
.
on
(
'
error
'
,
(
error
:
Error
)
=>
{
reject
(
error
)
});
});
await
new
Promise
((
resolve
,
reject
)
=>
{
let
source
=
fs
.
createReadStream
(
path
.
join
(
this
.
app
.
local
!
.
path
,
'
locales
'
,
locale
,
'
cards.cdb
'
));
source
.
on
(
'
open
'
,
(
error
:
Error
)
=>
{
let
destination
=
fs
.
createWriteStream
(
path
.
join
(
this
.
app
.
local
!
.
path
,
'
cards.cdb
'
));
source
.
pipe
(
destination
);
destination
.
on
(
'
error
'
,
(
error
:
Error
)
=>
{
reject
(
error
)
});
destination
.
on
(
'
close
'
,
()
=>
{
resolve
()
})
});
source
.
on
(
'
error
'
,
(
error
:
Error
)
=>
{
reject
(
error
)
});
});
localStorage
.
setItem
(
'
ygopro-locale
'
,
locale
)
console
.
log
(
`convert ygopro locale to
${
locale
}
success`
)
}
catch
(
error
)
{
console
.
error
(
`convert ygopro locale to
${
locale
}
failed`
,
error
)
}
}
return
new
Promise
((
resolve
,
reject
)
=>
{
let
child
=
child_process
.
spawn
(
path
.
join
(
this
.
app
.
local
!
.
path
,
this
.
app
.
actions
.
get
(
'
main
'
)
!
.
execute
),
args
,
{
cwd
:
this
.
app
.
local
!
.
path
,
...
...
apps.json
View file @
aa081edb
...
...
@@ -2,7 +2,8 @@
{
"id"
:
"th06"
,
"name"
:
{
"zh-CN"
:
"东方红魔乡"
"zh-CN"
:
"东方红魔乡"
,
"en-US"
:
"The Embodiment of Scarlet Devil"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -28,7 +29,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -74,9 +75,6 @@
},
{
"id"
:
"th06-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方红魔乡 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -101,7 +99,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -145,7 +143,8 @@
{
"id"
:
"th07"
,
"name"
:
{
"zh-CN"
:
"东方妖妖梦"
"zh-CN"
:
"东方妖妖梦"
,
"en-US"
:
"Perfect Cherry Blossom"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -171,7 +170,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -215,9 +214,6 @@
},
{
"id"
:
"th07-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方妖妖梦 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -242,7 +238,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -286,7 +282,8 @@
{
"id"
:
"th075"
,
"name"
:
{
"zh-CN"
:
"东方萃梦想"
"zh-CN"
:
"东方萃梦想"
,
"en-US"
:
"Immaterial and Missing Power"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -312,7 +309,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -356,9 +353,6 @@
},
{
"id"
:
"th075-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方萃梦想 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -383,7 +377,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -428,7 +422,8 @@
{
"id"
:
"th08"
,
"name"
:
{
"zh-CN"
:
"东方永夜抄"
"zh-CN"
:
"东方永夜抄"
,
"en-US"
:
"Imperishable Night"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -454,7 +449,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -498,9 +493,6 @@
},
{
"id"
:
"th08-lang-zh-CN"
,
"name"
:
{
"zh-CN"
:
"东方永夜抄 语言包 (简体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -569,7 +561,8 @@
{
"id"
:
"th09"
,
"name"
:
{
"zh-CN"
:
"东方花映冢"
"zh-CN"
:
"东方花映冢"
,
"en-US"
:
"Phantasmagoria of Flower View"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -595,7 +588,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -639,9 +632,6 @@
},
{
"id"
:
"th09-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方花映冢 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -666,7 +656,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -710,7 +700,8 @@
{
"id"
:
"th095"
,
"name"
:
{
"zh-CN"
:
"东方文花帖"
"zh-CN"
:
"东方文花帖"
,
"en-US"
:
"Shoot the Bullet"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -736,7 +727,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -780,9 +771,6 @@
},
{
"id"
:
"th095-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方文花帖 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -807,7 +795,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -851,7 +839,8 @@
{
"id"
:
"th10"
,
"name"
:
{
"zh-CN"
:
"东方风神录"
"zh-CN"
:
"东方风神录"
,
"en-US"
:
"Mountain of Faith"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -861,7 +850,9 @@
"touhou"
],
"dependencies"
:
{
"win32"
:
[
"directx"
],
"win32"
:
[
"directx"
],
"darwin"
:
[
"wine"
]
...
...
@@ -877,7 +868,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -921,9 +912,6 @@
},
{
"id"
:
"th10-lang-zh-CN-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方风神录 语言包 (简体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -948,7 +936,8 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-CN"
"zh-CN"
,
"zh-TW"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -992,7 +981,8 @@
{
"id"
:
"th105"
,
"name"
:
{
"zh-CN"
:
"东方绯想天"
"zh-CN"
:
"东方绯想天"
,
"en-US"
:
"Scarlet Weather Rhapsody"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -1002,7 +992,9 @@
"touhou"
],
"dependencies"
:
{
"win32"
:
[
"directx"
],
"win32"
:
[
"directx"
],
"darwin"
:
[
"wine"
]
...
...
@@ -1018,7 +1010,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1058,9 +1050,6 @@
},
{
"id"
:
"th105-lang-zh-CN"
,
"name"
:
{
"zh-CN"
:
"东方绯想天 语言包 (简体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -1115,7 +1104,8 @@
{
"id"
:
"th11"
,
"name"
:
{
"zh-CN"
:
"东方地灵殿"
"zh-CN"
:
"东方地灵殿"
,
"en-US"
:
"Subterranean Animism"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -1125,7 +1115,9 @@
"touhou"
],
"dependencies"
:
{
"win32"
:
[
"directx"
],
"win32"
:
[
"directx"
],
"darwin"
:
[
"wine"
]
...
...
@@ -1141,7 +1133,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1185,9 +1177,6 @@
},
{
"id"
:
"th11-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方地灵殿 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -1212,7 +1201,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1256,7 +1245,8 @@
{
"id"
:
"th12"
,
"name"
:
{
"zh-CN"
:
"东方星莲船"
"zh-CN"
:
"东方星莲船"
,
"en-US"
:
"Undefined Fantastic Object"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -1266,7 +1256,9 @@
"touhou"
],
"dependencies"
:
{
"win32"
:
[
"directx"
],
"win32"
:
[
"directx"
],
"darwin"
:
[
"wine"
]
...
...
@@ -1282,7 +1274,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1326,9 +1318,6 @@
},
{
"id"
:
"th12-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方星莲船 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -1353,7 +1342,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1397,7 +1386,8 @@
{
"id"
:
"th123"
,
"name"
:
{
"zh-CN"
:
"东方非想天则"
"zh-CN"
:
"东方非想天则"
,
"en-US"
:
"Touhou Hisōtensoku"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -1427,7 +1417,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1468,9 +1458,6 @@
},
{
"id"
:
"th123-lang-zh-CN"
,
"name"
:
{
"zh-CN"
:
"东方非想天则 语言包 (简体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -1525,7 +1512,8 @@
{
"id"
:
"th1"
,
"name"
:
{
"zh-CN"
:
"东方灵异传"
"zh-CN"
:
"东方灵异传"
,
"en-US"
:
"Highly Responsive to Prayers"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -1551,7 +1539,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1582,7 +1570,8 @@
{
"id"
:
"th2"
,
"name"
:
{
"zh-CN"
:
"东方封魔录"
"zh-CN"
:
"东方封魔录"
,
"en-US"
:
"Story of Eastern Wonderland"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -1610,7 +1599,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1638,9 +1627,6 @@
},
{
"id"
:
"th2-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方封魔录 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -1664,7 +1650,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1693,7 +1679,8 @@
{
"id"
:
"th3"
,
"name"
:
{
"zh-CN"
:
"东方梦时空"
"zh-CN"
:
"东方梦时空"
,
"en-US"
:
"Phantasmagoria of Dim. Dream"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -1721,7 +1708,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1750,9 +1737,6 @@
},
{
"id"
:
"th3-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方梦时空 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -1776,7 +1760,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1805,7 +1789,8 @@
{
"id"
:
"th4"
,
"name"
:
{
"zh-CN"
:
"东方幻想乡"
"zh-CN"
:
"东方幻想乡"
,
"en-US"
:
"Lotus Land Story"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -1833,7 +1818,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1862,9 +1847,6 @@
},
{
"id"
:
"th4-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方幻想乡 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -1888,7 +1870,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1917,7 +1899,8 @@
{
"id"
:
"th5"
,
"name"
:
{
"zh-CN"
:
"东方怪绮谈"
"zh-CN"
:
"东方怪绮谈"
,
"en-US"
:
"Mystic Square"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
...
...
@@ -1945,7 +1928,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"
zh-CN
"
"
ja-JP
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -1975,9 +1958,6 @@
},
{
"id"
:
"th5-lang-zh-TW"
,
"name"
:
{
"zh-CN"
:
"东方怪绮谈 语言包 (繁体中文)"
},
"description"
:
{
"zh-CN"
:
"fxt desc"
},
...
...
@@ -2001,7 +1981,7 @@
"author"
:
"ZUN"
,
"homepage"
:
"http://www.myacg.cc"
,
"locales"
:
[
"zh-
CN
"
"zh-
TW
"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -2051,7 +2031,9 @@
"author"
:
"Fluorohydride"
,
"homepage"
:
"https://github.com/Fluorohydride/ygopro"
,
"locales"
:
[
"zh-CN"
"zh-CN"
,
"en-US"
,
"ja-JP"
],
"actions"
:
{
"win32"
:
{
...
...
@@ -2073,20 +2055,30 @@
"win32"
:
"1.033.C-7"
,
"darwin"
:
"1.033.C-7"
},
"news"
:
[
"news"
:
{
"zh-CN"
:
[
{
"url"
:
"https://ygobbs.com"
,
"image"
:
"http://pic.4j4j.cn/upload/pic/20140327/af650cf463.jpg"
,
"title"
:
"News Title
"
,
"title"
:
"这是一个新闻
"
,
"text"
:
"喵喵喵喵"
},
{
"url"
:
"https://ygobbs.com/t/7%E6%9C%8825%E6%97%A5-MyCard%E5%B7%B2%E6%9B%B4%E6%96%B0INOV910%E7%AD%89%E6%96%B0%E5%8D%A1%EF%BC%8C1033A%E7%A8%8B%E5%BA%8F%E3%80%82%E5%86%85%E5%B8%A6%E6%89%8B%E5%8A%A8%E6%9B%B4%E6%96%B0%E4%BB%A5%E5%8F%8A%E6%8A%A5%E9%94%99%E8%A7%A3%E5%86%B3%E3%80%82/80143"
,
"image"
:
"http://image.tianjimedia.com/uploadImages/2012/159/1EF112986273.jpg"
,
"title"
:
"News Title2
"
,
"title"
:
"这是另一个新闻
"
,
"text"
:
"聚集的祈愿将成为新生的闪耀之星,化作光芒闪耀的道路吧!"
}
],
"en-US"
:
[
{
"url"
:
"https://ygobbs.com"
,
"image"
:
"http://pic.4j4j.cn/upload/pic/20140327/af650cf463.jpg"
,
"title"
:
"News Title"
,
"text"
:
"nyanyayna"
}
]
},
"conference"
:
"ygopro_china_north"
},
{
...
...
@@ -2111,9 +2103,6 @@
},
"author"
:
"Fluorohydride"
,
"homepage"
:
"https://github.com/Fluorohydride/ygopro"
,
"locales"
:
[
"zh-CN"
],
"actions"
:
{
"win32"
:
{
"main"
:
{
...
...
@@ -2138,7 +2127,8 @@
{
"id"
:
"ghost_trick"
,
"name"
:
{
"zh-CN"
:
"幽灵诡计"
"zh-CN"
:
"幽灵诡计"
,
"en-US"
:
"Ghost Trick"
},
"description"
:
{
"zh-CN"
:
"A script engine for
\"
yu-gi-oh!
\"
and sample gui."
...
...
@@ -2194,9 +2184,6 @@
},
{
"id"
:
"ghost_trick-lang-zh-CN"
,
"name"
:
{
"zh-CN"
:
"幽灵诡计 语言包 (简体中文)"
},
"description"
:
{
"zh-CN"
:
"A script engine for
\"
yu-gi-oh!
\"
and sample gui."
},
...
...
@@ -2250,7 +2237,8 @@
{
"id"
:
"directx"
,
"name"
:
{
"zh-CN"
:
"DirectX 最终用户运行时"
"zh-CN"
:
"DirectX 最终用户运行时"
,
"en-US"
:
"DirectX End-User Runtime"
},
"description"
:
{
"zh-CN"
:
"A script engine for
\"
yu-gi-oh!
\"
and sample gui."
...
...
@@ -2271,9 +2259,6 @@
},
"author"
:
"Fluorohydride"
,
"homepage"
:
"https://github.com/Fluorohydride/ygopro"
,
"locales"
:
[
"zh-CN"
],
"actions"
:
{
"win32"
:
{
"install"
:
{
...
...
@@ -2339,7 +2324,7 @@
{
"id"
:
"wine"
,
"name"
:
{
"zh-CN"
:
"
w
ine"
"zh-CN"
:
"
W
ine"
},
"description"
:
{
"zh-CN"
:
"wine"
...
...
index.js
View file @
aa081edb
...
...
@@ -10,7 +10,7 @@ function handleElevate() {
if
(
process
.
argv
[
1
]
==
'
-e
'
)
{
if
(
process
.
platform
==
'
darwin
'
)
{
app
.
dock
.
hide
();
require
(
'
electron
'
).
app
.
dock
.
hide
();
}
let
elevate
=
JSON
.
parse
(
new
Buffer
(
process
.
argv
[
2
],
'
base64
'
).
toString
());
require
(
'
net
'
).
connect
(
elevate
[
'
ipc
'
],
function
()
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment