mirror of
https://github.com/tcgdex/cards-database.git
synced 2025-08-15 01:41:59 +00:00
Compare commits
147 Commits
v2.19.0
...
feat/add-b
Author | SHA1 | Date | |
---|---|---|---|
447e9e8178 | |||
90d12fc9b6 | |||
21e158805b | |||
|
3859a2fb71 | ||
|
5f5afdea80 | ||
859f325a20 | |||
0b4796cbb2 | |||
25117a4141 | |||
c809b14783 | |||
8ca40f410d | |||
c26b91ac85 | |||
|
fa0b9d5f7c | ||
|
860248e5d9 | ||
224d9cd1c6 | |||
|
98bc4db193 | ||
|
d169a67833 | ||
d0c43e5ce6 | |||
61f506ee95 | |||
651be99b41 | |||
8a8602da96 | |||
5b1f0528db | |||
2e4e3c25ba | |||
c9021ab8fa | |||
8feda41809 | |||
1eb4c677a7 | |||
|
b26236e78c | ||
aa07e67c80 | |||
961c75c8a0 | |||
509288ad19 | |||
e23bc6c909 | |||
2ca455a957 | |||
13ad5fb0a2 | |||
|
17a0e241cc | ||
|
dc51d5e8a8 | ||
|
e1de8e8323 | ||
|
744ad63e3a | ||
|
6b223c688d | ||
|
e749ed01e2 | ||
|
e4eb25b6ea | ||
|
814f94be6f | ||
|
63790a056c | ||
51e017e9cc | |||
a550cf079c | |||
78366685f8 | |||
|
08971af0bf | ||
|
7111c33403 | ||
|
a08b8d8cca | ||
c3cfb2607a | |||
|
16caf3384e | ||
|
c5ab6d966b | ||
7e2a3ea30c | |||
ecf4c9f8fa | |||
e8e9c23e14 | |||
e4099defdb | |||
19dccfd5d7 | |||
|
2f9c5814ff | ||
|
7f95bd3da1 | ||
|
0158daf40d | ||
|
a597759d9d | ||
|
28662c55c3 | ||
|
eca49a1bee | ||
|
de13bb175a | ||
34dc55b1d7 | |||
17ef7efab3 | |||
|
b6dab212b7 | ||
ff0cf14773 | |||
|
2a2b6463ff | ||
|
6b3633e748 | ||
8fb7f88283 | |||
|
366e9e6ea7 | ||
a33629e883 | |||
33232f1b65 | |||
7568334dec | |||
|
f39956e429 | ||
|
a722ecbbda | ||
f2a7f09e48 | |||
|
60031a9de6 | ||
144b794610 | |||
62f6671b63 | |||
87d9b16fb8 | |||
0616b98038 | |||
|
a8f8b29340 | ||
|
2813d77f92 | ||
ebc2bb28bf | |||
c52ed815bb | |||
5e1ba9ee8d | |||
|
121db30389 | ||
|
48a984ef50 | ||
|
2b6d06184d | ||
|
109921761e | ||
|
3b02e9be81 | ||
|
eaf5935a0f | ||
|
878c0dc83a | ||
|
aeaa784100 | ||
|
fabb829169 | ||
d291c692d9 | |||
8610bd60fe | |||
|
89e0b8d367 | ||
|
660cccbe97 | ||
8eb9131f60
|
|||
041572da85
|
|||
982e0dd8f0 | |||
207a18fec6 | |||
ac83a0ebdb | |||
45f7db66d7 | |||
14ed8ee912 | |||
bf8f610c04 | |||
8231f45f81 | |||
e30d54469d | |||
c1d83caca0 | |||
64bcd0524d | |||
07a8ad0b8e | |||
4c96331b93 | |||
1a52a6f29a | |||
1d14078dd8 | |||
4f2c27937a | |||
bbd5d28dc6 | |||
ce8d5590ef | |||
b9dae445b1 | |||
4700618047 | |||
5899083e5d | |||
ae6ed3cdaa | |||
5928a1dd25 | |||
|
5fbcd82457 | ||
cfd6d5c0e8 | |||
|
80f483ab66 | ||
31b1ae566e | |||
698f66cf55 | |||
c8ec4c88a7 | |||
68e363bfaa | |||
|
ab265c6c41 | ||
|
c10020a9a9 | ||
|
e36865e971 | ||
|
5b32edb5bf | ||
|
e7ceb7ac59 | ||
|
629ab06c4c | ||
|
7e3cf7aa08 | ||
|
0475848425 | ||
|
eea5c5147b | ||
3d58d92db7 | |||
|
d0b4071ff9 | ||
|
661edcf790 | ||
27521b92ad | |||
6751deb9d0 | |||
2e8c843c5a | |||
|
d75b756bac | ||
|
91dc66a494 |
@@ -61,6 +61,15 @@
|
||||
"contributions": [
|
||||
"data"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "Reloadaxe",
|
||||
"name": "Benjamin Rousseliere",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/44167126?v=4",
|
||||
"profile": "https://github.com/Reloadaxe",
|
||||
"contributions": [
|
||||
"data"
|
||||
]
|
||||
}
|
||||
],
|
||||
"contributorsPerLine": 7,
|
||||
|
25
.bruno/cards/advanced-query.bru
Normal file
25
.bruno/cards/advanced-query.bru
Normal file
@@ -0,0 +1,25 @@
|
||||
meta {
|
||||
name: Advanced Query
|
||||
type: http
|
||||
seq: 1
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/en/cards?name=eq:Pikachu&hp=gte:60&hp=lt:70&localId=5&localId=not:tg&id=neq:cel25-5
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
params:query {
|
||||
name: eq:Pikachu
|
||||
hp: gte:60
|
||||
hp: lt:70
|
||||
localId: 5
|
||||
localId: not:tg
|
||||
id: neq:cel25-5
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body.length: gte 14
|
||||
}
|
23
.bruno/cards/multiple.bru
Normal file
23
.bruno/cards/multiple.bru
Normal file
@@ -0,0 +1,23 @@
|
||||
meta {
|
||||
name: Multiple values
|
||||
type: http
|
||||
seq: 1
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/en/cards?name=eq:Pikachu|Pichu&hp=lt:70&localId=not:tg&id=neq:cel25-5
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
params:query {
|
||||
name: eq:Pikachu|Pichu
|
||||
hp: lt:70
|
||||
localId: not:tg
|
||||
id: neq:cel25-5
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body.length: gt 85
|
||||
}
|
21
.bruno/dex-ids/get-by-dex-id.bru
Normal file
21
.bruno/dex-ids/get-by-dex-id.bru
Normal file
@@ -0,0 +1,21 @@
|
||||
meta {
|
||||
name: Get by Dex ID
|
||||
type: http
|
||||
seq: 1
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/en/dex-ids/{{ID}}
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
vars:pre-request {
|
||||
ID: 162
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body.cards.length: gte 8
|
||||
res.body.name: eq {{ID}}
|
||||
}
|
@@ -1,3 +1,3 @@
|
||||
vars {
|
||||
BASE_URL: http://localhost:3000
|
||||
BASE_URL: http://127.0.0.1:3000
|
||||
}
|
||||
|
20
.bruno/filtering/end-star-pattern.bru
Normal file
20
.bruno/filtering/end-star-pattern.bru
Normal file
@@ -0,0 +1,20 @@
|
||||
meta {
|
||||
name: End Star Pattern
|
||||
type: http
|
||||
seq: 1
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/en/cards?name=*chu
|
||||
body: none
|
||||
auth: inherit
|
||||
}
|
||||
|
||||
params:query {
|
||||
name: *chu
|
||||
}
|
||||
|
||||
assert {
|
||||
res.body.length: gt 3
|
||||
res.body[1].name: neq Pikachu on the Ball
|
||||
}
|
19
.bruno/filtering/searching-using-the-dex-id.bru
Normal file
19
.bruno/filtering/searching-using-the-dex-id.bru
Normal file
@@ -0,0 +1,19 @@
|
||||
meta {
|
||||
name: dexId Search
|
||||
type: http
|
||||
seq: 3
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/ja/cards?dexId=eq:357
|
||||
body: none
|
||||
auth: inherit
|
||||
}
|
||||
|
||||
params:query {
|
||||
dexId: eq:357
|
||||
}
|
||||
|
||||
assert {
|
||||
res.body.length: eq 3
|
||||
}
|
20
.bruno/filtering/start-star-pattern.bru
Normal file
20
.bruno/filtering/start-star-pattern.bru
Normal file
@@ -0,0 +1,20 @@
|
||||
meta {
|
||||
name: Start star Pattern
|
||||
type: http
|
||||
seq: 2
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/en/cards?name=fu*
|
||||
body: none
|
||||
auth: inherit
|
||||
}
|
||||
|
||||
params:query {
|
||||
name: fu*
|
||||
}
|
||||
|
||||
assert {
|
||||
res.body.length: gt 3
|
||||
res.body[1].name: neq Stufful
|
||||
}
|
@@ -0,0 +1,29 @@
|
||||
meta {
|
||||
name: 562 - GraphQL set request is not returning the correct value
|
||||
type: graphql
|
||||
seq: 7
|
||||
}
|
||||
|
||||
post {
|
||||
url: {{BASE_URL}}/v2/graphql
|
||||
body: graphql
|
||||
auth: none
|
||||
}
|
||||
|
||||
body:graphql {
|
||||
query Pouet {
|
||||
set(id: "{{SET_ID}}") {
|
||||
id
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
vars:pre-request {
|
||||
SET_ID: swsh1
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body.data.set.id: eq {{SET_ID}}
|
||||
}
|
15
.bruno/fixes/566-specific-request-crash-the-request.bru
Normal file
15
.bruno/fixes/566-specific-request-crash-the-request.bru
Normal file
@@ -0,0 +1,15 @@
|
||||
meta {
|
||||
name: 566 - Specific request crash the request
|
||||
type: http
|
||||
seq: 7
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/fr/cards?name=eq:Pikachu&name=eq:Pichu,Pikachu
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
}
|
@@ -0,0 +1,21 @@
|
||||
meta {
|
||||
name: 567 - invalid data returned when filtering using set
|
||||
type: http
|
||||
seq: 9
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/en/cards?name=umbreon&set=evolving skies
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
params:query {
|
||||
name: umbreon
|
||||
set: evolving skies
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body.length: gte 6
|
||||
}
|
28
.bruno/graphql/card.bru
Normal file
28
.bruno/graphql/card.bru
Normal file
@@ -0,0 +1,28 @@
|
||||
meta {
|
||||
name: card
|
||||
type: graphql
|
||||
seq: 2
|
||||
}
|
||||
|
||||
post {
|
||||
url: {{BASE_URL}}/v2/graphql
|
||||
body: graphql
|
||||
auth: none
|
||||
}
|
||||
|
||||
body:graphql {
|
||||
query Pouet {
|
||||
card(id: "{{ID}}") {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
vars:pre-request {
|
||||
ID: swsh1-136
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body.data.card.id: eq {{ID}}
|
||||
}
|
@@ -1,5 +1,5 @@
|
||||
meta {
|
||||
name: GraphQL API
|
||||
name: cards
|
||||
type: graphql
|
||||
seq: 1
|
||||
}
|
29
.bruno/graphql/serie.bru
Normal file
29
.bruno/graphql/serie.bru
Normal file
@@ -0,0 +1,29 @@
|
||||
meta {
|
||||
name: serie
|
||||
type: graphql
|
||||
seq: 5
|
||||
}
|
||||
|
||||
post {
|
||||
url: {{BASE_URL}}/v2/graphql
|
||||
body: graphql
|
||||
auth: none
|
||||
}
|
||||
|
||||
body:graphql {
|
||||
query Pouet {
|
||||
serie(id: "{{ID}}") {
|
||||
id
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
vars:pre-request {
|
||||
ID: swsh
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body.data.serie.id: eq {{ID}}
|
||||
}
|
24
.bruno/graphql/series.bru
Normal file
24
.bruno/graphql/series.bru
Normal file
@@ -0,0 +1,24 @@
|
||||
meta {
|
||||
name: series
|
||||
type: graphql
|
||||
seq: 6
|
||||
}
|
||||
|
||||
post {
|
||||
url: {{BASE_URL}}/v2/graphql
|
||||
body: graphql
|
||||
auth: none
|
||||
}
|
||||
|
||||
body:graphql {
|
||||
query Pouet {
|
||||
series {
|
||||
id
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
}
|
29
.bruno/graphql/set.bru
Normal file
29
.bruno/graphql/set.bru
Normal file
@@ -0,0 +1,29 @@
|
||||
meta {
|
||||
name: set
|
||||
type: graphql
|
||||
seq: 3
|
||||
}
|
||||
|
||||
post {
|
||||
url: {{BASE_URL}}/v2/graphql
|
||||
body: graphql
|
||||
auth: none
|
||||
}
|
||||
|
||||
body:graphql {
|
||||
query Pouet {
|
||||
set(id: "{{SET_ID}}") {
|
||||
id
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
vars:pre-request {
|
||||
SET_ID: swsh1
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body.data.set.id: eq {{SET_ID}}
|
||||
}
|
24
.bruno/graphql/sets.bru
Normal file
24
.bruno/graphql/sets.bru
Normal file
@@ -0,0 +1,24 @@
|
||||
meta {
|
||||
name: sets
|
||||
type: graphql
|
||||
seq: 4
|
||||
}
|
||||
|
||||
post {
|
||||
url: {{BASE_URL}}/v2/graphql
|
||||
body: graphql
|
||||
auth: none
|
||||
}
|
||||
|
||||
body:graphql {
|
||||
query Pouet {
|
||||
sets {
|
||||
id
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
}
|
21
.bruno/sets/Advanced Query.bru
Normal file
21
.bruno/sets/Advanced Query.bru
Normal file
@@ -0,0 +1,21 @@
|
||||
meta {
|
||||
name: Advanced Query
|
||||
type: http
|
||||
seq: 4
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/en/sets?cardCount.official=gt:64&id=swsh
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
params:query {
|
||||
cardCount.official:gt: 64
|
||||
id: swsh
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body: length 17
|
||||
}
|
16
.bruno/sets/Get a card by set name.bru
Normal file
16
.bruno/sets/Get a card by set name.bru
Normal file
@@ -0,0 +1,16 @@
|
||||
meta {
|
||||
name: Get a card by set name
|
||||
type: http
|
||||
seq: 6
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/en/sets/Crystal%20Guardians/10
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body.id: eq ex14-10
|
||||
}
|
16
.bruno/sets/Get a set by name.bru
Normal file
16
.bruno/sets/Get a set by name.bru
Normal file
@@ -0,0 +1,16 @@
|
||||
meta {
|
||||
name: Get a set by name
|
||||
type: http
|
||||
seq: 5
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{BASE_URL}}/v2/en/sets/Crystal%20Guardians
|
||||
body: none
|
||||
auth: none
|
||||
}
|
||||
|
||||
assert {
|
||||
res.status: eq 200
|
||||
res.body.id: eq ex14
|
||||
}
|
@@ -19,4 +19,3 @@ dist/
|
||||
|
||||
# production
|
||||
/server/dist
|
||||
/server/generated
|
||||
|
2
.github/PULL_REQUEST_TEMPLATE.md
vendored
2
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
Thanks for your Pull Request, Please provide the related Issue using "Fix #0" or describe the change(s) you made.
|
||||
The issue title must follow Conventional Commit (verified by Github Actions) conventionalcommits.org.
|
||||
The issue title must follow Conventional Commit conventionalcommits.org.
|
||||
More informations at https://github.com/tcgdex/cards-database/blob/master/CONTRIBUTING.md
|
||||
-->
|
||||
|
34
.github/scripts/.gitignore
vendored
Normal file
34
.github/scripts/.gitignore
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
# dependencies (bun install)
|
||||
node_modules
|
||||
|
||||
# output
|
||||
out
|
||||
dist
|
||||
*.tgz
|
||||
|
||||
# code coverage
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# logs
|
||||
logs
|
||||
_.log
|
||||
report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json
|
||||
|
||||
# dotenv environment variable files
|
||||
.env
|
||||
.env.development.local
|
||||
.env.test.local
|
||||
.env.production.local
|
||||
.env.local
|
||||
|
||||
# caches
|
||||
.eslintcache
|
||||
.cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# IntelliJ based IDEs
|
||||
.idea
|
||||
|
||||
# Finder (MacOS) folder config
|
||||
.DS_Store
|
15
.github/scripts/README.md
vendored
Normal file
15
.github/scripts/README.md
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
# scripts
|
||||
|
||||
To install dependencies:
|
||||
|
||||
```bash
|
||||
bun install
|
||||
```
|
||||
|
||||
To run:
|
||||
|
||||
```bash
|
||||
bun run
|
||||
```
|
||||
|
||||
This project was created using `bun init` in bun v1.2.11. [Bun](https://bun.sh) is a fast all-in-one JavaScript runtime.
|
106
.github/scripts/bun.lock
vendored
Normal file
106
.github/scripts/bun.lock
vendored
Normal file
@@ -0,0 +1,106 @@
|
||||
{
|
||||
"lockfileVersion": 1,
|
||||
"workspaces": {
|
||||
"": {
|
||||
"name": "scripts",
|
||||
"dependencies": {
|
||||
"@actions/core": "^1.11.1",
|
||||
"@actions/github": "^6.0.0",
|
||||
"@tcgdex/sdk": "^2.6.0",
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/bun": "latest",
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": "^5",
|
||||
},
|
||||
},
|
||||
},
|
||||
"packages": {
|
||||
"@actions/core": ["@actions/core@1.11.1", "", { "dependencies": { "@actions/exec": "^1.1.1", "@actions/http-client": "^2.0.1" } }, "sha512-hXJCSrkwfA46Vd9Z3q4cpEpHB1rL5NG04+/rbqW9d3+CSvtB1tYe8UTpAlixa1vj0m/ULglfEK2UKxMGxCxv5A=="],
|
||||
|
||||
"@actions/exec": ["@actions/exec@1.1.1", "", { "dependencies": { "@actions/io": "^1.0.1" } }, "sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w=="],
|
||||
|
||||
"@actions/github": ["@actions/github@6.0.0", "", { "dependencies": { "@actions/http-client": "^2.2.0", "@octokit/core": "^5.0.1", "@octokit/plugin-paginate-rest": "^9.0.0", "@octokit/plugin-rest-endpoint-methods": "^10.0.0" } }, "sha512-alScpSVnYmjNEXboZjarjukQEzgCRmjMv6Xj47fsdnqGS73bjJNDpiiXmp8jr0UZLdUB6d9jW63IcmddUP+l0g=="],
|
||||
|
||||
"@actions/http-client": ["@actions/http-client@2.2.3", "", { "dependencies": { "tunnel": "^0.0.6", "undici": "^5.25.4" } }, "sha512-mx8hyJi/hjFvbPokCg4uRd4ZX78t+YyRPtnKWwIl+RzNaVuFpQHfmlGVfsKEJN8LwTCvL+DfVgAM04XaHkm6bA=="],
|
||||
|
||||
"@actions/io": ["@actions/io@1.1.3", "", {}, "sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q=="],
|
||||
|
||||
"@cachex/core": ["@cachex/core@1.0.1", "", { "dependencies": { "@dzeio/object-util": "^1.8.3" } }, "sha512-sHynwjF9hKIvwg8rTUdvA7MOUMcUC5Mq0dpynPBILRS+IPvsHcE4Cb2uRSs0/I2nxO7NQp9p+xHYistdfJJSwg=="],
|
||||
|
||||
"@cachex/memory": ["@cachex/memory@1.0.1", "", { "dependencies": { "@cachex/core": "^1" } }, "sha512-KWUTdCCXhIlAkJaVZMhUh9kD0uq8PxC3Z34Q3lMGZOAV6FXP/cOMW89ALrWX3VkoRrrM4R6MIMO+amZNOvEqgw=="],
|
||||
|
||||
"@cachex/web-storage": ["@cachex/web-storage@1.0.1", "", { "dependencies": { "@cachex/core": "^1" } }, "sha512-E8Xa9qDZgNgr+lcj3eixowg7PH2CVZbp3huuoc5xVVTtwYrZi5YqbHBG12yG3r6C6Fts/2Yoq6cbVBSm6c8VRA=="],
|
||||
|
||||
"@dzeio/object-util": ["@dzeio/object-util@1.9.1", "", {}, "sha512-cLGsjAc7hzSadS57jcMxSPidYabyZXJOFnasScSrE/V5yflhze6T7L5/98josWYrXMvoKu7N+Ivk6vGkIj72UQ=="],
|
||||
|
||||
"@fastify/busboy": ["@fastify/busboy@2.1.1", "", {}, "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA=="],
|
||||
|
||||
"@octokit/auth-token": ["@octokit/auth-token@4.0.0", "", {}, "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA=="],
|
||||
|
||||
"@octokit/core": ["@octokit/core@5.2.1", "", { "dependencies": { "@octokit/auth-token": "^4.0.0", "@octokit/graphql": "^7.1.0", "@octokit/request": "^8.4.1", "@octokit/request-error": "^5.1.1", "@octokit/types": "^13.0.0", "before-after-hook": "^2.2.0", "universal-user-agent": "^6.0.0" } }, "sha512-dKYCMuPO1bmrpuogcjQ8z7ICCH3FP6WmxpwC03yjzGfZhj9fTJg6+bS1+UAplekbN2C+M61UNllGOOoAfGCrdQ=="],
|
||||
|
||||
"@octokit/endpoint": ["@octokit/endpoint@9.0.6", "", { "dependencies": { "@octokit/types": "^13.1.0", "universal-user-agent": "^6.0.0" } }, "sha512-H1fNTMA57HbkFESSt3Y9+FBICv+0jFceJFPWDePYlR/iMGrwM5ph+Dd4XRQs+8X+PUFURLQgX9ChPfhJ/1uNQw=="],
|
||||
|
||||
"@octokit/graphql": ["@octokit/graphql@7.1.1", "", { "dependencies": { "@octokit/request": "^8.4.1", "@octokit/types": "^13.0.0", "universal-user-agent": "^6.0.0" } }, "sha512-3mkDltSfcDUoa176nlGoA32RGjeWjl3K7F/BwHwRMJUW/IteSa4bnSV8p2ThNkcIcZU2umkZWxwETSSCJf2Q7g=="],
|
||||
|
||||
"@octokit/openapi-types": ["@octokit/openapi-types@24.2.0", "", {}, "sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg=="],
|
||||
|
||||
"@octokit/plugin-paginate-rest": ["@octokit/plugin-paginate-rest@9.2.2", "", { "dependencies": { "@octokit/types": "^12.6.0" }, "peerDependencies": { "@octokit/core": "5" } }, "sha512-u3KYkGF7GcZnSD/3UP0S7K5XUFT2FkOQdcfXZGZQPGv3lm4F2Xbf71lvjldr8c1H3nNbF+33cLEkWYbokGWqiQ=="],
|
||||
|
||||
"@octokit/plugin-rest-endpoint-methods": ["@octokit/plugin-rest-endpoint-methods@10.4.1", "", { "dependencies": { "@octokit/types": "^12.6.0" }, "peerDependencies": { "@octokit/core": "5" } }, "sha512-xV1b+ceKV9KytQe3zCVqjg+8GTGfDYwaT1ATU5isiUyVtlVAO3HNdzpS4sr4GBx4hxQ46s7ITtZrAsxG22+rVg=="],
|
||||
|
||||
"@octokit/request": ["@octokit/request@8.4.1", "", { "dependencies": { "@octokit/endpoint": "^9.0.6", "@octokit/request-error": "^5.1.1", "@octokit/types": "^13.1.0", "universal-user-agent": "^6.0.0" } }, "sha512-qnB2+SY3hkCmBxZsR/MPCybNmbJe4KAlfWErXq+rBKkQJlbjdJeS85VI9r8UqeLYLvnAenU8Q1okM/0MBsAGXw=="],
|
||||
|
||||
"@octokit/request-error": ["@octokit/request-error@5.1.1", "", { "dependencies": { "@octokit/types": "^13.1.0", "deprecation": "^2.0.0", "once": "^1.4.0" } }, "sha512-v9iyEQJH6ZntoENr9/yXxjuezh4My67CBSu9r6Ve/05Iu5gNgnisNWOsoJHTP6k0Rr0+HQIpnH+kyammu90q/g=="],
|
||||
|
||||
"@octokit/types": ["@octokit/types@13.10.0", "", { "dependencies": { "@octokit/openapi-types": "^24.2.0" } }, "sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA=="],
|
||||
|
||||
"@tcgdex/sdk": ["@tcgdex/sdk@2.6.0", "", { "dependencies": { "@cachex/memory": "^1", "@cachex/web-storage": "^1", "@dzeio/object-util": "^1", "isomorphic-unfetch": "^3" } }, "sha512-q0O7dNzRRLq38XwqUoHFKo78/NCQW5pEIZ+JnlrVOxp9r9R/LTIQGAMNR96Il0hb1uIm4j5o7WBueBCpuDyomQ=="],
|
||||
|
||||
"@types/bun": ["@types/bun@1.2.11", "", { "dependencies": { "bun-types": "1.2.11" } }, "sha512-ZLbbI91EmmGwlWTRWuV6J19IUiUC5YQ3TCEuSHI3usIP75kuoA8/0PVF+LTrbEnVc8JIhpElWOxv1ocI1fJBbw=="],
|
||||
|
||||
"@types/node": ["@types/node@22.15.3", "", { "dependencies": { "undici-types": "~6.21.0" } }, "sha512-lX7HFZeHf4QG/J7tBZqrCAXwz9J5RD56Y6MpP0eJkka8p+K0RY/yBTW7CYFJ4VGCclxqOLKmiGP5juQc6MKgcw=="],
|
||||
|
||||
"before-after-hook": ["before-after-hook@2.2.3", "", {}, "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ=="],
|
||||
|
||||
"bun-types": ["bun-types@1.2.11", "", { "dependencies": { "@types/node": "*" } }, "sha512-dbkp5Lo8HDrXkLrONm6bk+yiiYQSntvFUzQp0v3pzTAsXk6FtgVMjdQ+lzFNVAmQFUkPQZ3WMZqH5tTo+Dp/IA=="],
|
||||
|
||||
"deprecation": ["deprecation@2.3.1", "", {}, "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ=="],
|
||||
|
||||
"isomorphic-unfetch": ["isomorphic-unfetch@3.1.0", "", { "dependencies": { "node-fetch": "^2.6.1", "unfetch": "^4.2.0" } }, "sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q=="],
|
||||
|
||||
"node-fetch": ["node-fetch@2.7.0", "", { "dependencies": { "whatwg-url": "^5.0.0" }, "peerDependencies": { "encoding": "^0.1.0" }, "optionalPeers": ["encoding"] }, "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A=="],
|
||||
|
||||
"once": ["once@1.4.0", "", { "dependencies": { "wrappy": "1" } }, "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w=="],
|
||||
|
||||
"tr46": ["tr46@0.0.3", "", {}, "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="],
|
||||
|
||||
"tunnel": ["tunnel@0.0.6", "", {}, "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg=="],
|
||||
|
||||
"typescript": ["typescript@5.8.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ=="],
|
||||
|
||||
"undici": ["undici@5.29.0", "", { "dependencies": { "@fastify/busboy": "^2.0.0" } }, "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg=="],
|
||||
|
||||
"undici-types": ["undici-types@6.21.0", "", {}, "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ=="],
|
||||
|
||||
"unfetch": ["unfetch@4.2.0", "", {}, "sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA=="],
|
||||
|
||||
"universal-user-agent": ["universal-user-agent@6.0.1", "", {}, "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ=="],
|
||||
|
||||
"webidl-conversions": ["webidl-conversions@3.0.1", "", {}, "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="],
|
||||
|
||||
"whatwg-url": ["whatwg-url@5.0.0", "", { "dependencies": { "tr46": "~0.0.3", "webidl-conversions": "^3.0.0" } }, "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw=="],
|
||||
|
||||
"wrappy": ["wrappy@1.0.2", "", {}, "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="],
|
||||
|
||||
"@octokit/plugin-paginate-rest/@octokit/types": ["@octokit/types@12.6.0", "", { "dependencies": { "@octokit/openapi-types": "^20.0.0" } }, "sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw=="],
|
||||
|
||||
"@octokit/plugin-rest-endpoint-methods/@octokit/types": ["@octokit/types@12.6.0", "", { "dependencies": { "@octokit/openapi-types": "^20.0.0" } }, "sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw=="],
|
||||
|
||||
"@octokit/plugin-paginate-rest/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@20.0.0", "", {}, "sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA=="],
|
||||
|
||||
"@octokit/plugin-rest-endpoint-methods/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@20.0.0", "", {}, "sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA=="],
|
||||
}
|
||||
}
|
472
.github/scripts/load-cards.ts
vendored
Normal file
472
.github/scripts/load-cards.ts
vendored
Normal file
@@ -0,0 +1,472 @@
|
||||
import core from "@actions/core";
|
||||
import github from "@actions/github";
|
||||
import TCGdex from "@tcgdex/sdk";
|
||||
|
||||
// Types
|
||||
type CardData = {
|
||||
id: string;
|
||||
name: string;
|
||||
image?: string;
|
||||
rarity?: string;
|
||||
set: { name: string };
|
||||
hasImage: boolean;
|
||||
};
|
||||
|
||||
type CardResult = {
|
||||
file: string;
|
||||
card?: CardData;
|
||||
error?: string;
|
||||
isAsian?: boolean;
|
||||
usedLanguage?: string;
|
||||
hasImage?: boolean;
|
||||
status?: "added" | "removed" | "modified";
|
||||
};
|
||||
|
||||
type CardFetchResult = {
|
||||
card: any;
|
||||
usedLanguage: string;
|
||||
hasImage: boolean;
|
||||
} | null;
|
||||
|
||||
// Constants
|
||||
const DATA_REGEX = /^data\/([^\/]+)\/([^\/]+)\/([^\/]+)\.ts$/;
|
||||
const DATA_ASIA_REGEX = /^data-asia\/([^\/]+)\/([^\/]+)\/([^\/]+)\.ts$/;
|
||||
|
||||
const INTERNATIONAL_LANGUAGES = ["en", "fr", "es", "es-mx", "it", "pt", "pt-br", "pt-pt", "de", "nl", "pl", "ru"];
|
||||
const ASIAN_LANGUAGES = ["ja", "ko", "zh-tw", "id", "th", "zh-cn"];
|
||||
|
||||
const LANGUAGE_NAMES: Record<string, string> = {
|
||||
en: "English",
|
||||
fr: "French",
|
||||
es: "Spanish",
|
||||
"es-mx": "Spanish (Mexico)",
|
||||
it: "Italian",
|
||||
pt: "Portuguese",
|
||||
"pt-br": "Portuguese (Brazil)",
|
||||
"pt-pt": "Portuguese (Portugal)",
|
||||
de: "German",
|
||||
nl: "Dutch",
|
||||
pl: "Polish",
|
||||
ru: "Russian",
|
||||
ja: "Japanese",
|
||||
ko: "Korean",
|
||||
"zh-tw": "Chinese (Taiwan)",
|
||||
id: "Indonesian",
|
||||
th: "Thai",
|
||||
"zh-cn": "Chinese (China)",
|
||||
};
|
||||
|
||||
// Helper function to sanitize card data
|
||||
function sanitizeCardData(card: any): CardData | undefined {
|
||||
if (!card) return undefined;
|
||||
|
||||
return {
|
||||
id: card.id,
|
||||
name: card.name,
|
||||
image: card.image,
|
||||
rarity: card.rarity,
|
||||
set: card.set ? { name: card.set.name } : { name: "Unknown" },
|
||||
hasImage: !!card.image,
|
||||
};
|
||||
}
|
||||
|
||||
// Helper function to try fetching a card with fallback to other languages
|
||||
async function tryFetchCardWithFallback(
|
||||
setIdentifier: string,
|
||||
cardLocalId: string,
|
||||
primaryLanguage: string,
|
||||
allLanguages: string[],
|
||||
isAsianRegion: boolean,
|
||||
): Promise<CardFetchResult> {
|
||||
let lastError: Error | unknown = null;
|
||||
const languagesToTry = [primaryLanguage, ...allLanguages.filter((lang) => lang !== primaryLanguage)];
|
||||
let foundWithoutImage: { lang: string; card: any } | undefined;
|
||||
|
||||
for (const lang of languagesToTry) {
|
||||
try {
|
||||
console.log(` Trying language: ${lang}`);
|
||||
const tcgdex = new TCGdex(lang as any);
|
||||
let card;
|
||||
|
||||
if (!isAsianRegion) {
|
||||
const set = await tcgdex.set.get(setIdentifier);
|
||||
card = await tcgdex.card.get(`${set!.id}-${cardLocalId}`);
|
||||
} else {
|
||||
card = await tcgdex.card.get(`${setIdentifier}-${cardLocalId}`);
|
||||
}
|
||||
|
||||
if (card && !card.image) {
|
||||
foundWithoutImage = { lang, card };
|
||||
continue;
|
||||
}
|
||||
|
||||
if (card && card.image) {
|
||||
console.log(` Card: ${card.name} (${card.id}) - Found using language: ${lang}`);
|
||||
return { card, usedLanguage: lang, hasImage: true };
|
||||
}
|
||||
} catch (error) {
|
||||
lastError = error;
|
||||
console.log(` Failed with language ${lang}: ${error instanceof Error ? error.message : "Unknown error"}`);
|
||||
}
|
||||
}
|
||||
|
||||
if (foundWithoutImage) {
|
||||
console.log(` Card: ${foundWithoutImage.card.name} (${foundWithoutImage.card.id}) - Found without image`);
|
||||
return { card: foundWithoutImage.card, usedLanguage: foundWithoutImage.lang, hasImage: false };
|
||||
}
|
||||
|
||||
console.log(
|
||||
` All languages failed. Last error: ${lastError instanceof Error ? lastError.message : "Unknown error"}`,
|
||||
);
|
||||
return null;
|
||||
}
|
||||
|
||||
// Get changed files from GitHub
|
||||
async function getChangedFiles(
|
||||
context: typeof github.context,
|
||||
octokit: ReturnType<typeof github.getOctokit>,
|
||||
): Promise<{ filename: string; status: string }[]> {
|
||||
if (context.payload.pull_request) {
|
||||
const { owner, repo } = context.repo;
|
||||
const prNumber = context.payload.pull_request.number;
|
||||
|
||||
// Get all files with pagination
|
||||
const files: { filename: string; status: string }[] = [];
|
||||
let page = 1;
|
||||
let hasMorePages = true;
|
||||
|
||||
while (hasMorePages) {
|
||||
const response = await octokit.rest.pulls.listFiles({
|
||||
owner,
|
||||
repo,
|
||||
pull_number: prNumber,
|
||||
per_page: 100, // Get maximum allowed per page
|
||||
page: page,
|
||||
});
|
||||
|
||||
if (response.data.length === 0) {
|
||||
hasMorePages = false;
|
||||
} else {
|
||||
files.push(...response.data.map((file) => ({
|
||||
filename: file.filename,
|
||||
status: file.status
|
||||
})));
|
||||
page++;
|
||||
}
|
||||
}
|
||||
|
||||
return files;
|
||||
} else if (context.payload.commits) {
|
||||
const files: { filename: string; status: string }[] = [];
|
||||
for (const commit of context.payload.commits) {
|
||||
if (commit.added) {
|
||||
commit.added.forEach((file: string) => files.push({ filename: file, status: "added" }));
|
||||
}
|
||||
if (commit.modified) {
|
||||
commit.modified.forEach((file: string) => files.push({ filename: file, status: "modified" }));
|
||||
}
|
||||
if (commit.removed) {
|
||||
commit.removed.forEach((file: string) => files.push({ filename: file, status: "removed" }));
|
||||
}
|
||||
}
|
||||
return files;
|
||||
}
|
||||
return [];
|
||||
}
|
||||
|
||||
// Process a single card file
|
||||
async function processCardFile(file: { filename: string; status: string }): Promise<CardResult | null> {
|
||||
console.log(` - ${file.filename} (${file.status})`);
|
||||
let match = file.filename.match(DATA_REGEX);
|
||||
const isCardFile = !!(match || file.filename.match(DATA_ASIA_REGEX));
|
||||
|
||||
if (!isCardFile) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// For added files, just return the file info without fetching
|
||||
if (file.status === "added") {
|
||||
return {
|
||||
file: file.filename,
|
||||
status: "added",
|
||||
};
|
||||
}
|
||||
|
||||
// For removed files, just return the file info without fetching
|
||||
if (file.status === "removed") {
|
||||
return {
|
||||
file: file.filename,
|
||||
status: "removed",
|
||||
};
|
||||
}
|
||||
|
||||
// Only process modified files normally
|
||||
if (match) {
|
||||
const [_, , setName, cardLocalId] = match;
|
||||
const result = await tryFetchCardWithFallback(setName!, cardLocalId!, "en", INTERNATIONAL_LANGUAGES, false);
|
||||
|
||||
if (result) {
|
||||
return {
|
||||
file: file.filename,
|
||||
card: sanitizeCardData(result.card),
|
||||
isAsian: false,
|
||||
usedLanguage: result.usedLanguage,
|
||||
hasImage: result.hasImage,
|
||||
status: "modified",
|
||||
};
|
||||
} else {
|
||||
return {
|
||||
file: file.filename,
|
||||
error: "Failed to fetch card information in all available languages",
|
||||
isAsian: false,
|
||||
status: "modified",
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
match = file.filename.match(DATA_ASIA_REGEX);
|
||||
if (match) {
|
||||
const [_, , setId, cardLocalId] = match;
|
||||
const result = await tryFetchCardWithFallback(setId!, cardLocalId!, "ja", ASIAN_LANGUAGES, true);
|
||||
|
||||
if (result) {
|
||||
return {
|
||||
file: file.filename,
|
||||
card: sanitizeCardData(result.card),
|
||||
isAsian: true,
|
||||
usedLanguage: result.usedLanguage,
|
||||
hasImage: result.hasImage,
|
||||
status: "modified",
|
||||
};
|
||||
} else {
|
||||
return {
|
||||
file: file.filename,
|
||||
error: "Failed to fetch card information in all available languages",
|
||||
isAsian: true,
|
||||
status: "modified",
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
// Generate comment body for PR
|
||||
function generateCommentBody(
|
||||
cardResults: CardResult[],
|
||||
changedFiles: { filename: string; status: string }[],
|
||||
repoFullName: string,
|
||||
contextSha: string,
|
||||
): string {
|
||||
const maxCommentLength = 65500;
|
||||
const newCards = cardResults.filter((r) => r.status === "added").length;
|
||||
const deletedCards = cardResults.filter((r) => r.status === "removed").length;
|
||||
const modifiedCards = cardResults.filter((r) => r.status === "modified" && r.card).length;
|
||||
const errorCards = cardResults.filter((r) => r.status === "modified" && r.error).length;
|
||||
const cardsWithoutImages = cardResults.filter((r) => r.card && !r.hasImage).length;
|
||||
|
||||
let commentBody = `## 🃏 ${cardResults.length} Card${cardResults.length !== 1 ? "s" : ""} Changed\n\n`;
|
||||
|
||||
if (cardResults.length === 0) {
|
||||
commentBody +=
|
||||
changedFiles.length > 0
|
||||
? "No recognized card files were changed in this PR.\n"
|
||||
: "No files were changed in this PR.\n";
|
||||
return commentBody;
|
||||
}
|
||||
|
||||
// Add summary
|
||||
commentBody += `**Details:** `;
|
||||
|
||||
const details = [];
|
||||
if (newCards > 0) {
|
||||
details.push(`${newCards} new`);
|
||||
}
|
||||
if (deletedCards > 0) {
|
||||
details.push(`${deletedCards} deleted`);
|
||||
}
|
||||
if (modifiedCards > 0) {
|
||||
details.push(`${modifiedCards} modified`);
|
||||
}
|
||||
if (errorCards > 0) {
|
||||
details.push(`${errorCards} with errors`);
|
||||
}
|
||||
if (cardsWithoutImages > 0) {
|
||||
details.push(`${cardsWithoutImages} without images`);
|
||||
}
|
||||
|
||||
commentBody += details.join(", ") + "\n\n";
|
||||
|
||||
// Generate detailed card information
|
||||
let truncated = false;
|
||||
const truncationMessage = "\n\n> **Note:** Comment truncated due to GitHub size limitations. Some cards were omitted.\n";
|
||||
const truncationLimit = maxCommentLength - truncationMessage.length - 100; // Buffer for safety
|
||||
|
||||
for (const item of cardResults) {
|
||||
const fileUrl = `https://github.com/${repoFullName}/blob/${contextSha}/${item.file}`;
|
||||
const fileName = item.file.split("/").pop();
|
||||
|
||||
// Create a temporary version of what we're about to add to check the length
|
||||
let cardSection = "";
|
||||
|
||||
if (item.status === "added") {
|
||||
cardSection += `<details><summary>➕ <strong>New card: ${fileName}</strong></summary>\n\n`;
|
||||
cardSection += `**File:** [${encodeURI(item.file)}](${encodeURI(fileUrl)}) \n\n`;
|
||||
cardSection += "</details>\n\n";
|
||||
} else if (item.status === "removed") {
|
||||
cardSection += `<details><summary>🗑️ <strong>Deleted card: ${fileName}</strong></summary>\n\n`;
|
||||
cardSection += `**File:** [${encodeURI(item.file)}](${encodeURI(fileUrl)}) \n\n`;
|
||||
cardSection += "</details>\n\n";
|
||||
} else if (item.card) {
|
||||
const langInfo = item.usedLanguage ? ` (found using ${item.usedLanguage})` : "";
|
||||
const imageStatus = !item.hasImage ? ` <em>(no images)</em>` : "";
|
||||
|
||||
cardSection += `<details><summary><strong>${item.card.name}</strong> (${item.card.id})${langInfo}${imageStatus}</summary>\n\n`;
|
||||
|
||||
if (item.card.image) {
|
||||
const languages = item.isAsian ? ASIAN_LANGUAGES : INTERNATIONAL_LANGUAGES;
|
||||
cardSection += renderCardImageTable(item.card, languages);
|
||||
} else {
|
||||
cardSection += `<p align="center"><em>No images available for this card</em></p>\n\n`;
|
||||
}
|
||||
|
||||
cardSection += `**File:** [${item.file}](${fileUrl}) \n`;
|
||||
cardSection += `**Set:** ${item.card.set?.name || "Unknown"} \n`;
|
||||
cardSection += `**Rarity:** ${item.card.rarity || "Unknown"}\n\n`;
|
||||
cardSection += "</details>\n\n";
|
||||
} else if (item.error) {
|
||||
cardSection += `<details><summary>⚠️ <strong>Error processing ${fileName}</strong></summary>\n\n`;
|
||||
cardSection += `**File:** [${encodeURI(item.file)}](${encodeURI(fileUrl)}) \n\n`;
|
||||
cardSection += `**Error:** ${item.error}\n\n`;
|
||||
cardSection += "</details>\n\n";
|
||||
}
|
||||
|
||||
// Check if adding this section would exceed the limit
|
||||
if (commentBody.length + cardSection.length > truncationLimit) {
|
||||
truncated = true;
|
||||
break;
|
||||
}
|
||||
|
||||
// If not exceeding, add it to the main comment body
|
||||
commentBody += cardSection;
|
||||
}
|
||||
|
||||
// Add truncation message if needed
|
||||
if (truncated) {
|
||||
commentBody += truncationMessage;
|
||||
}
|
||||
|
||||
return commentBody;
|
||||
}
|
||||
|
||||
// Helper to render the card image table
|
||||
function renderCardImageTable(card: CardData, languages: string[]): string {
|
||||
let tableMarkdown = `<div align="center">\n\n`;
|
||||
tableMarkdown += `| Language | Language | Language |\n`;
|
||||
tableMarkdown += `|:-------:|:-------:|:-------:|\n`;
|
||||
|
||||
for (let i = 0; i < languages.length; i += 3) {
|
||||
tableMarkdown += `|`;
|
||||
|
||||
for (let j = 0; j < 3; j++) {
|
||||
const langIndex = i + j;
|
||||
if (langIndex < languages.length) {
|
||||
const lang = languages[langIndex];
|
||||
const langName = LANGUAGE_NAMES[lang as keyof typeof LANGUAGE_NAMES] || lang;
|
||||
const localizedImageUrl = card.image!.replace(/\/[a-z]{2}(-[a-z]{2})?\//, `/${lang}/`);
|
||||
tableMarkdown += ` <strong>${langName} (${lang})</strong><br><img src="${localizedImageUrl}/high.webp" alt="${card.name} (${langName})" width="200"/> |`;
|
||||
} else {
|
||||
tableMarkdown += ` |`;
|
||||
}
|
||||
}
|
||||
tableMarkdown += `\n`;
|
||||
}
|
||||
|
||||
tableMarkdown += `\n</div>\n\n`;
|
||||
return tableMarkdown;
|
||||
}
|
||||
|
||||
// Post or update PR comment
|
||||
async function postOrUpdatePRComment(
|
||||
octokit: ReturnType<typeof github.getOctokit>,
|
||||
owner: string,
|
||||
repo: string,
|
||||
prNumber: number,
|
||||
commentBody: string,
|
||||
): Promise<void> {
|
||||
// Get authenticated user info to identify our bot
|
||||
const { data: authenticatedUser } = await octokit.rest.users.getAuthenticated();
|
||||
console.log(`Authenticated as user: ${authenticatedUser.login}`);
|
||||
|
||||
const commentsResponse = await octokit.rest.issues.listComments({
|
||||
owner,
|
||||
repo,
|
||||
issue_number: prNumber,
|
||||
});
|
||||
|
||||
// Look for existing comments from our authenticated bot user
|
||||
const existingComment = commentsResponse.data.find(
|
||||
(comment) => comment.user?.login === authenticatedUser.login && comment.body?.includes("## 🃏"),
|
||||
);
|
||||
|
||||
if (existingComment) {
|
||||
await octokit.rest.issues.updateComment({
|
||||
owner,
|
||||
repo,
|
||||
comment_id: existingComment.id,
|
||||
body: commentBody,
|
||||
});
|
||||
console.log(`Updated existing comment #${existingComment.id} on PR #${prNumber} as ${authenticatedUser.login}`);
|
||||
} else {
|
||||
await octokit.rest.issues.createComment({
|
||||
owner,
|
||||
repo,
|
||||
issue_number: prNumber,
|
||||
body: commentBody,
|
||||
});
|
||||
console.log(`Posted new comment to PR #${prNumber} as ${authenticatedUser.login}`);
|
||||
}
|
||||
}
|
||||
|
||||
async function run() {
|
||||
try {
|
||||
// Initialize GitHub client
|
||||
const token = core.getInput("github-token", { required: true });
|
||||
const octokit = github.getOctokit(token);
|
||||
const context = github.context;
|
||||
const { owner, repo } = context.repo;
|
||||
const repoFullName = `${owner}/${repo}`;
|
||||
|
||||
// Get changed files
|
||||
const changedFiles = await getChangedFiles(context, octokit);
|
||||
|
||||
// Process card files
|
||||
const cardResults: CardResult[] = [];
|
||||
for (const file of changedFiles) {
|
||||
const result = await processCardFile(file);
|
||||
if (result) cardResults.push(result);
|
||||
}
|
||||
|
||||
// Generate comment body
|
||||
const commentBody = generateCommentBody(cardResults, changedFiles, repoFullName, context.sha);
|
||||
|
||||
// Post or update the comment in the PR
|
||||
if (context.payload.pull_request) {
|
||||
const prNumber = context.payload.pull_request.number;
|
||||
await postOrUpdatePRComment(octokit, owner, repo, prNumber, commentBody);
|
||||
}
|
||||
|
||||
// Store the generated comment for the workflow
|
||||
core.setOutput("pr_comment", commentBody);
|
||||
core.setOutput("files", changedFiles.map(f => f.filename).join(","));
|
||||
core.setOutput("cardFiles", JSON.stringify(cardResults));
|
||||
} catch (error) {
|
||||
if (error instanceof Error) {
|
||||
core.setFailed(error.message);
|
||||
} else {
|
||||
core.setFailed("An unknown error occurred");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
run();
|
15
.github/scripts/package.json
vendored
Normal file
15
.github/scripts/package.json
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "scripts",
|
||||
"private": true,
|
||||
"devDependencies": {
|
||||
"@types/bun": "latest"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": "^5"
|
||||
},
|
||||
"dependencies": {
|
||||
"@actions/core": "^1.11.1",
|
||||
"@actions/github": "^6.0.0",
|
||||
"@tcgdex/sdk": "^2.6.0"
|
||||
}
|
||||
}
|
28
.github/scripts/tsconfig.json
vendored
Normal file
28
.github/scripts/tsconfig.json
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
// Environment setup & latest features
|
||||
"lib": ["ESNext"],
|
||||
"target": "ESNext",
|
||||
"module": "ESNext",
|
||||
"moduleDetection": "force",
|
||||
"jsx": "react-jsx",
|
||||
"allowJs": true,
|
||||
|
||||
// Bundler mode
|
||||
"moduleResolution": "bundler",
|
||||
"allowImportingTsExtensions": true,
|
||||
"verbatimModuleSyntax": true,
|
||||
"noEmit": true,
|
||||
|
||||
// Best practices
|
||||
"strict": true,
|
||||
"skipLibCheck": true,
|
||||
"noFallthroughCasesInSwitch": true,
|
||||
"noUncheckedIndexedAccess": true,
|
||||
|
||||
// Some stricter flags (disabled by default)
|
||||
"noUnusedLocals": false,
|
||||
"noUnusedParameters": false,
|
||||
"noPropertyAccessFromIndexSignature": false
|
||||
}
|
||||
}
|
15
.github/sponsors/dzeio.svg
vendored
Normal file
15
.github/sponsors/dzeio.svg
vendored
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 12 KiB |
122
.github/workflows/build.yml
vendored
122
.github/workflows/build.yml
vendored
@@ -1,61 +1,89 @@
|
||||
name: Build Docker image
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- '*'
|
||||
tags:
|
||||
- v*
|
||||
pull_request:
|
||||
branches:
|
||||
branches:
|
||||
- master
|
||||
pull_request:
|
||||
branches:
|
||||
- "**"
|
||||
|
||||
env:
|
||||
REGISTRY_IMAGE: |
|
||||
ghcr.io/tcgdex/server
|
||||
tcgdex/server
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
name: Build TCGdex Server
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Docker meta
|
||||
id: meta
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
ghcr.io/tcgdex/server
|
||||
tcgdex/server
|
||||
tags: |
|
||||
type=edge
|
||||
type=ref,event=pr
|
||||
type=ref,event=branch,prefix=branch-
|
||||
type=semver,pattern={{version}}
|
||||
type=semver,pattern={{major}}.{{minor}}
|
||||
type=semver,pattern={{major}}
|
||||
type=semver,pattern=latest
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
# fetch full history for `updated` support
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USER }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Docker meta
|
||||
id: meta
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: ${{ env.REGISTRY_IMAGE }}
|
||||
tags: |
|
||||
type=edge
|
||||
type=ref,event=pr
|
||||
type=ref,event=branch,prefix=branch-
|
||||
type=semver,pattern={{version}}
|
||||
type=semver,pattern={{major}}.{{minor}}
|
||||
type=semver,pattern={{major}}
|
||||
type=semver,pattern=latest
|
||||
|
||||
- name: Login to Github Packages
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.DOCKER_TOKEN }}
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USER }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
if: ${{ !github.event.pull_request.head.repo.fork && github.actor != 'dependabot[bot]' }}
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
- name: Login to Github Packages
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.DOCKER_TOKEN }}
|
||||
if: ${{ !github.event.pull_request.head.repo.fork && github.actor != 'dependabot[bot]' }}
|
||||
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
push: true
|
||||
file: ./Dockerfile
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v2
|
||||
with:
|
||||
bun-version: latest
|
||||
|
||||
- name: Pre build server
|
||||
run: |
|
||||
bun install --frozen-lockfile
|
||||
cd server
|
||||
bun install --frozen-lockfile
|
||||
bun run compile
|
||||
rm -rf node_modules
|
||||
cd ..
|
||||
rm -rf node_modules
|
||||
|
||||
- name: Build and push
|
||||
id: build
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
platforms: linux/amd64,linux/arm64
|
||||
file: ./Dockerfile.github-actions
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
cache-from: type=gha
|
||||
push: ${{ !github.event.pull_request.head.repo.fork && github.actor != 'dependabot[bot]' }}
|
||||
cache-to: type=gha,mode=max
|
||||
|
38
.github/workflows/comment-pr.yml
vendored
Normal file
38
.github/workflows/comment-pr.yml
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
name: Card Info Comment
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [opened, synchronize]
|
||||
paths:
|
||||
- '.github/workflows/comment-pr.yml'
|
||||
- '.github/scripts/*'
|
||||
- 'data/**/*.ts'
|
||||
- 'data-asia/**/*.ts'
|
||||
|
||||
jobs:
|
||||
card-info-comment:
|
||||
runs-on: ubuntu-latest
|
||||
continue-on-error: true
|
||||
defaults:
|
||||
run:
|
||||
working-directory: .github/scripts
|
||||
permissions:
|
||||
pull-requests: write
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Bun
|
||||
uses: oven-sh/setup-bun@v2
|
||||
with:
|
||||
bun-version: latest
|
||||
|
||||
- name: Install dependencies
|
||||
run: bun i --frozen-lockfile
|
||||
|
||||
- name: Run load-cards script
|
||||
id: load-cards
|
||||
run: bun load-cards.js
|
||||
env:
|
||||
INPUT_GITHUB-TOKEN: ${{ secrets.TCGDEX_BOT }}
|
22
.github/workflows/test.yml
vendored
22
.github/workflows/test.yml
vendored
@@ -1,11 +1,12 @@
|
||||
name: Test the Data
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- '*'
|
||||
pull_request:
|
||||
branches:
|
||||
branches:
|
||||
- master
|
||||
pull_request:
|
||||
branches:
|
||||
- "**"
|
||||
|
||||
jobs:
|
||||
test:
|
||||
@@ -17,10 +18,11 @@ jobs:
|
||||
|
||||
|
||||
- name: Setup BunJS
|
||||
uses: oven-sh/setup-bun@v1
|
||||
uses: oven-sh/setup-bun@v2
|
||||
|
||||
- name: Install deps
|
||||
run: |
|
||||
bun install -g @usebruno/cli
|
||||
bun install --frozen-lockfile
|
||||
cd server
|
||||
bun install --frozen-lockfile
|
||||
@@ -30,4 +32,12 @@ jobs:
|
||||
run: |
|
||||
bun run validate
|
||||
cd server
|
||||
bun run validate
|
||||
bun run --bun validate
|
||||
|
||||
- name: Validate some requests
|
||||
run: |
|
||||
cd server
|
||||
bun run start &
|
||||
sleep 10
|
||||
cd ../.bruno
|
||||
bru run --env Developpement
|
||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@@ -2,3 +2,4 @@
|
||||
|
||||
node_modules/
|
||||
dist/
|
||||
.idea
|
@@ -6,8 +6,8 @@ We as members, contributors, and leaders pledge to make participation in our
|
||||
community a harassment-free experience for everyone, regardless of age, body
|
||||
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||
identity and expression, level of experience, education, socio-economic status,
|
||||
nationality, personal appearance, race, religion, or sexual identity
|
||||
and orientation.
|
||||
nationality, personal appearance, race, caste, color, religion, or sexual
|
||||
identity and orientation.
|
||||
|
||||
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||
diverse, inclusive, and healthy community.
|
||||
@@ -22,17 +22,17 @@ community include:
|
||||
* Giving and gracefully accepting constructive feedback
|
||||
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||
and learning from the experience
|
||||
* Focusing on what is best not just for us as individuals, but for the
|
||||
overall community
|
||||
* Focusing on what is best not just for us as individuals, but for the overall
|
||||
community
|
||||
|
||||
Examples of unacceptable behavior include:
|
||||
|
||||
* The use of sexualized language or imagery, and sexual attention or
|
||||
advances of any kind
|
||||
* The use of sexualized language or imagery, and sexual attention or advances of
|
||||
any kind
|
||||
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or email
|
||||
address, without their explicit permission
|
||||
* Publishing others' private information, such as a physical or email address,
|
||||
without their explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
@@ -52,15 +52,15 @@ decisions when appropriate.
|
||||
|
||||
This Code of Conduct applies within all community spaces, and also applies when
|
||||
an individual is officially representing the community in public spaces.
|
||||
Examples of representing our community include using an official e-mail address,
|
||||
Examples of representing our community include using an official email address,
|
||||
posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported to the community leaders responsible for enforcement at
|
||||
the `contact@tcgdex.net` email or on Discord to `Avior#3872`.
|
||||
reported to the community leaders responsible for enforcement at contact@tcgdex.net or
|
||||
on Discord to Avior through the official server https://discord.gg/63mQvd3GVE.
|
||||
All complaints will be reviewed and investigated promptly and fairly.
|
||||
|
||||
All community leaders are obligated to respect the privacy and security of the
|
||||
@@ -82,15 +82,15 @@ behavior was inappropriate. A public apology may be requested.
|
||||
|
||||
### 2. Warning
|
||||
|
||||
**Community Impact**: A violation through a single incident or series
|
||||
of actions.
|
||||
**Community Impact**: A violation through a single incident or series of
|
||||
actions.
|
||||
|
||||
**Consequence**: A warning with consequences for continued behavior. No
|
||||
interaction with the people involved, including unsolicited interaction with
|
||||
those enforcing the Code of Conduct, for a specified period of time. This
|
||||
includes avoiding interactions in community spaces as well as external channels
|
||||
like social media. Violating these terms may lead to a temporary or
|
||||
permanent ban.
|
||||
like social media. Violating these terms may lead to a temporary or permanent
|
||||
ban.
|
||||
|
||||
### 3. Temporary Ban
|
||||
|
||||
@@ -106,23 +106,27 @@ Violating these terms may lead to a permanent ban.
|
||||
### 4. Permanent Ban
|
||||
|
||||
**Community Impact**: Demonstrating a pattern of violation of community
|
||||
standards, including sustained inappropriate behavior, harassment of an
|
||||
standards, including sustained inappropriate behavior, harassment of an
|
||||
individual, or aggression toward or disparagement of classes of individuals.
|
||||
|
||||
**Consequence**: A permanent ban from any sort of public interaction within
|
||||
the community.
|
||||
**Consequence**: A permanent ban from any sort of public interaction within the
|
||||
community.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||
version 2.0, available at
|
||||
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
|
||||
version 2.1, available at
|
||||
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
|
||||
|
||||
Community Impact Guidelines were inspired by [Mozilla's code of conduct
|
||||
enforcement ladder](https://github.com/mozilla/diversity).
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
Community Impact Guidelines were inspired by
|
||||
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].
|
||||
|
||||
For answers to common questions about this code of conduct, see the FAQ at
|
||||
https://www.contributor-covenant.org/faq. Translations are available at
|
||||
https://www.contributor-covenant.org/translations.
|
||||
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
|
||||
[https://www.contributor-covenant.org/translations][translations].
|
||||
|
||||
[homepage]: https://www.contributor-covenant.org
|
||||
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
|
||||
[Mozilla CoC]: https://github.com/mozilla/diversity
|
||||
[FAQ]: https://www.contributor-covenant.org/faq
|
||||
[translations]: https://www.contributor-covenant.org/translations
|
||||
|
@@ -1,5 +1,4 @@
|
||||
<!-- omit in toc -->
|
||||
|
||||
# Contributing to TCGdex
|
||||
|
||||
First off, thanks for taking the time to contribute! ❤️
|
||||
@@ -7,26 +6,23 @@ First off, thanks for taking the time to contribute! ❤️
|
||||
All types of contributions are encouraged and valued. See the [Table of Contents](#table-of-contents) for different ways to help and details about how this project handles them. Please make sure to read the relevant section before making your contribution. It will make it a lot easier for us maintainers and smooth out the experience for all involved. The community looks forward to your contributions. 🎉
|
||||
|
||||
> And if you like the project, but just don't have time to contribute, that's fine. There are other easy ways to support the project and show your appreciation, which we would also be very happy about:
|
||||
>
|
||||
> - Star the project
|
||||
> - Tweet about it
|
||||
> - Refer this project in your project's readme
|
||||
> - Mention the project at local meetups and tell your friends/colleagues
|
||||
|
||||
<!-- omit in toc -->
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [Code of Conduct](#code-of-conduct)
|
||||
- [I Have a Question](#i-have-a-question)
|
||||
- [I Want To Contribute](#i-want-to-contribute)
|
||||
- [Reporting Issues](#reporting-issues)
|
||||
- [Suggesting Enhancements](#suggesting-enhancements)
|
||||
- [Your First Code Contribution](#your-first-code-contribution)
|
||||
- [Improving The Documentation](#improving-the-documentation)
|
||||
- [Reporting Bugs](#reporting-bugs)
|
||||
- [Suggesting Enhancements](#suggesting-enhancements)
|
||||
- [Your First Code Contribution](#your-first-code-contribution)
|
||||
- [Improving The Documentation](#improving-the-documentation)
|
||||
- [Styleguides](#styleguides)
|
||||
- [Coding Guidlines](#coding-guidelines)
|
||||
- [Commit Messages](#commit-messages)
|
||||
- [Commit Messages](#commit-messages)
|
||||
- [Join The Project Team](#join-the-project-team)
|
||||
|
||||
## Code of Conduct
|
||||
@@ -37,7 +33,7 @@ By participating, you are expected to uphold this code. Please report unacceptab
|
||||
|
||||
## I Have a Question
|
||||
|
||||
> If you want to ask a question, we assume that you have read the available Documentation at <https://www.tcgdex.dev>.
|
||||
> If you want to ask a question, we assume that you have read the available [Documentation](https://tcgdex.dev).
|
||||
|
||||
The best way to ask questions is to join our Discord server at <https://discord.gg/NehYTAhsZE>.
|
||||
|
||||
@@ -69,38 +65,36 @@ Depending on how large the project is, you may want to outsource the questioning
|
||||
## I Want To Contribute
|
||||
|
||||
> ### Legal Notice <!-- omit in toc -->
|
||||
>
|
||||
> When contributing to this project, you must agree that you have authored 100% of the content, that you have the necessary rights to the content and that the content you contribute may be provided under the project license.
|
||||
> When contributing to this project, you must agree that you have authored 100% of the content, that you have the necessary rights to the content and that the content you contribute may be provided under the project licence.
|
||||
|
||||
### Reporting Issues
|
||||
### Reporting Bugs
|
||||
|
||||
<!-- omit in toc -->
|
||||
#### Before Submitting a Bug Report
|
||||
|
||||
#### Before Submitting an Issue Report
|
||||
A good bug report shouldn't leave others needing to chase you up for more information. Therefore, we ask you to investigate carefully, collect information and describe the issue in detail in your report. Please complete the following steps in advance to help us fix any potential bug as fast as possible.
|
||||
|
||||
A good issue report shouldn't leave others needing to chase you up for more information. Therefore, we ask you to investigate carefully, collect information and describe the issue in detail in your report. Please complete the following steps in advance to help us fix any potential bug as fast as possible.
|
||||
|
||||
- Determine if your issue is not an error on your side e.g. using incompatible environment components/versions (Make sure that you have read the [documentation](https://www.tcgdex.dev). If you are looking for support, you might want to check [this section](#i-have-a-question)).
|
||||
- To see if other users have experienced (and potentially already solved) the same issue you are having, check if there is not already an issue report existing for your bug or error in the [bug tracker](https://github.com/tcgdex/cards-database/issues).
|
||||
- Make sure that you are using the latest version.
|
||||
- Determine if your bug is really a bug and not an error on your side e.g. using incompatible environment components/versions (Make sure that you have read the [documentation](https://tcgdex.dev). If you are looking for support, you might want to check [this section](#i-have-a-question)).
|
||||
- To see if other users have experienced (and potentially already solved) the same issue you are having, check if there is not already a bug report existing for your bug or error in the [bug tracker](https:/github.com/tcgdex/cards-database/issues?q=label%3Abug).
|
||||
- Also make sure to search the internet (including Stack Overflow) to see if users outside of the GitHub community have discussed the issue.
|
||||
- Collect information about the bug:
|
||||
- Stack trace (Traceback)
|
||||
- OS, Platform and Version (Windows, Linux, macOS, x86, ARM)
|
||||
- Version of the interpreter, compiler, SDK, runtime environment, package manager, depending on what seems relevant.
|
||||
- Possibly your input and the output
|
||||
- Can you reliably reproduce the issue? And can you also reproduce it with older versions?
|
||||
- Stack trace (Traceback)
|
||||
- OS, Platform and Version (Windows, Linux, macOS, x86, ARM)
|
||||
- Version of the interpreter, compiler, SDK, runtime environment, package manager, depending on what seems relevant.
|
||||
- Possibly your input and the output
|
||||
- Can you reliably reproduce the issue? And can you also reproduce it with older versions?
|
||||
|
||||
<!-- omit in toc -->
|
||||
|
||||
#### How Do I Submit a Good Bug Report?
|
||||
|
||||
> You must never report security related issues, vulnerabilities or bugs to the issue tracker, or elsewhere in public. Instead sensitive bugs must be sent by email to <security@tcgdex.net>.
|
||||
> You must never report security related issues, vulnerabilities or bugs including sensitive information to the issue tracker, or elsewhere in public. Instead sensitive bugs must be sent by email to <security@tcgdex.net>.
|
||||
|
||||
<!-- You may add a PGP key to allow the messages to be sent encrypted as well. -->
|
||||
|
||||
We use GitHub issues to track bugs and errors. If you run into an issue with the project:
|
||||
|
||||
- Open an [Issue](https://github.com/tcgdex/cards-databaseissues/new). (Since we can't be sure at this point whether it is a bug or not, we ask you not to talk about a bug yet and not to label the issue.)
|
||||
- Open an [Issue](https://github.com/tcgdex/cards-database/issues/new). (Since we can't be sure at this point whether it is a bug or not, we ask you not to talk about a bug yet and not to label the issue.)
|
||||
- Explain the behavior you would expect and the actual behavior.
|
||||
- Please provide as much context as possible and describe the *reproduction steps* that someone else can follow to recreate the issue on their own. This usually includes your code. For good bug reports you should isolate the problem and create a reduced test case.
|
||||
- Provide the information you collected in the previous section.
|
||||
@@ -122,20 +116,19 @@ This section guides you through submitting an enhancement suggestion for TCGdex,
|
||||
#### Before Submitting an Enhancement
|
||||
|
||||
- Make sure that you are using the latest version.
|
||||
- Read the [documentation](https://www.tcgdex.dev) carefully and find out if the functionality is already covered, maybe by an individual configuration.
|
||||
- Perform a [search](https://github.com/tcgdex/cards-databaseissues) to see if the enhancement has already been suggested. If it has, add a comment to the existing issue instead of opening a new one.
|
||||
- Read the [documentation](https://tcgdex.dev) carefully and find out if the functionality is already covered, maybe by an individual configuration.
|
||||
- Perform a [search](https://github.com/tcgdex/cards-database/issues) to see if the enhancement has already been suggested. If it has, add a comment to the existing issue instead of opening a new one.
|
||||
- Find out whether your idea fits with the scope and aims of the project. It's up to you to make a strong case to convince the project's developers of the merits of this feature. Keep in mind that we want features that will be useful to the majority of our users and not just a small subset. If you're just targeting a minority of users, consider writing an add-on/plugin library.
|
||||
|
||||
<!-- omit in toc -->
|
||||
|
||||
#### How Do I Submit a Good Enhancement Suggestion?
|
||||
|
||||
Enhancement suggestions are tracked as [GitHub issues](https://github.com/tcgdex/cards-databaseissues).
|
||||
Enhancement suggestions are tracked as [GitHub issues](https:/github.com/tcgdex/cards-database/issues).
|
||||
|
||||
- Use a **clear and descriptive title** for the issue to identify the suggestion.
|
||||
- Provide a **step-by-step description of the suggested enhancement** in as many details as possible.
|
||||
- **Describe the current behavior** and **explain which behavior you expected to see instead** and why. At this point you can also tell which alternatives do not work for you.
|
||||
- You may want to **include screenshots and animated GIFs** which help you demonstrate the steps or point out the part which the suggestion is related to. You can use [this tool](https://www.cockos.com/licecap/) to record GIFs on macOS and Windows, and [this tool](https://github.com/colinkeenan/silentcast) or [this tool](https://github.com/GNOME/byzanz) on Linux. <!-- this should only be included if the project has a GUI -->
|
||||
- You may want to **include screenshots or screen recordings** which help you demonstrate the steps or point out the part which the suggestion is related to. You can use [LICEcap](https://www.cockos.com/licecap/) to record GIFs on macOS and Windows, and the built-in [screen recorder in GNOME](https://help.gnome.org/users/gnome-help/stable/screen-shot-record.html.en) or [SimpleScreenRecorder](https://github.com/MaartenBaert/ssr) on Linux. <!-- this should only be included if the project has a GUI -->
|
||||
- **Explain why this enhancement would be useful** to most TCGdex users. You may also want to point out the other projects that solved it better and which could serve as inspiration.
|
||||
|
||||
<!-- You might want to create an issue template for enhancement suggestions that can be used as a guide and that defines the structure of the information to be included. If you do so, reference it here in the description. -->
|
||||
@@ -150,6 +143,11 @@ _note: Follow the different styleguides listed below when contributing_
|
||||
- we don't like ❌, so if your pull request has its automated checks ending with the red cross, please double check your changes until it show the awesome 🟢, or ask for help !
|
||||
- If your pull request is ready for review remove WIP: put it s ready for review and we will handle the rest !
|
||||
|
||||
folders :
|
||||
- `data`: the database for the internationnal cards
|
||||
- `data-asia`: the database for the asian cards
|
||||
- `server`: The server behind the API
|
||||
|
||||
### Improving The Documentation
|
||||
|
||||
The documentation is updated in the Documentation repository at <https://github.com/tcgdex/documentation>
|
||||
@@ -160,8 +158,8 @@ The documentation is updated in the Documentation repository at <https://github.
|
||||
|
||||
Install the plugin `.editorconfig` in your dev environment if it's not already done and thats it !
|
||||
|
||||
for those who don't want to install it the basic are these:
|
||||
- Indent using the `tab` or `\t` character
|
||||
for those who don't want to install it, the basics are these:
|
||||
- Indent using the <xkb>tab</xkb> (`\t`) character
|
||||
- the line feed character is `\n`
|
||||
- only use `;` when necessary and at the start of the line
|
||||
- use double quotes `"` when editing files in the `data/` folder and single quote `'` in other files
|
||||
@@ -195,6 +193,6 @@ In short, please name your Pull Requests/Commits following this format
|
||||
- use the imperative, present tense: "Change" not "Changed" nor "Changes"
|
||||
- `<footer>` and `<body>` are both optional
|
||||
|
||||
<!-- omit in toc -->
|
||||
## Attribution
|
||||
|
||||
This guide is based on [Contribution Gen]((https://github.com/bttger/contributing-gen)) and was adapted by the TCGdex community !
|
||||
This guide is based on the **contributing-gen**. [Make your own](https://github.com/bttger/contributing-gen)!
|
||||
|
35
Dockerfile
35
Dockerfile
@@ -1,34 +1,37 @@
|
||||
FROM docker.io/oven/bun:1-alpine as BUILD_IMAGE
|
||||
FROM docker.io/oven/bun:1-alpine AS build
|
||||
|
||||
# go to work folder
|
||||
WORKDIR /usr/src/app
|
||||
|
||||
# Add git as it is used to fetch updated times
|
||||
RUN apk add git &&\
|
||||
git config --global safe.directory '*'
|
||||
RUN apk add git\
|
||||
&& git config --global safe.directory '*'\
|
||||
&& chown -R bun:bun .
|
||||
|
||||
ADD --chown=bun:bun package.json bun.lockb ./
|
||||
ADD --chown=bun:bun server/package.json server/bun.lockb ./server/
|
||||
USER bun
|
||||
|
||||
ADD --chown=bun:bun package.json bun.lock ./
|
||||
ADD --chown=bun:bun server/package.json server/bun.lock ./server/
|
||||
|
||||
# install dependencies
|
||||
RUN bun install --frozen-lockfile && \
|
||||
cd server && \
|
||||
bun install --frozen-lockfile
|
||||
cd server && \
|
||||
bun install --frozen-lockfile
|
||||
|
||||
# Add project files
|
||||
ADD --chown=bun:bun . .
|
||||
|
||||
# build
|
||||
RUN cd server && \
|
||||
bun run compile
|
||||
bun run compile
|
||||
|
||||
# remove dev dependencies (bun do not yet support "prune")
|
||||
RUN cd server && \
|
||||
rm -rf node_modules && \
|
||||
bun install --frozen-install --production
|
||||
rm -rf node_modules && \
|
||||
bun install --frozen-install --production
|
||||
|
||||
# go to another VM
|
||||
FROM docker.io/oven/bun:1-alpine as PROD_IMAGE
|
||||
FROM docker.io/oven/bun:1-alpine AS prod
|
||||
|
||||
# inform software to be in production
|
||||
ENV NODE_ENV=production
|
||||
@@ -40,11 +43,11 @@ USER bun
|
||||
WORKDIR /usr/src/app
|
||||
|
||||
# copy from build image
|
||||
COPY --chown=bun:bun --from=BUILD_IMAGE /usr/src/app/server/generated ./generated
|
||||
COPY --chown=bun:bun --from=BUILD_IMAGE /usr/src/app/server/node_modules ./node_modules
|
||||
COPY --chown=bun:bun --from=BUILD_IMAGE /usr/src/app/server/src ./src
|
||||
COPY --chown=bun:bun --from=BUILD_IMAGE /usr/src/app/server/public ./public
|
||||
COPY --chown=bun:bun --from=BUILD_IMAGE /usr/src/app/server/package.json ./package.json
|
||||
COPY --chown=bun:bun --from=build /usr/src/app/server/generated ./generated
|
||||
COPY --chown=bun:bun --from=build /usr/src/app/server/node_modules ./node_modules
|
||||
COPY --chown=bun:bun --from=build /usr/src/app/server/src ./src
|
||||
COPY --chown=bun:bun --from=build /usr/src/app/server/public ./public
|
||||
COPY --chown=bun:bun --from=build /usr/src/app/server/package.json ./package.json
|
||||
|
||||
# Expose port
|
||||
EXPOSE 3000
|
||||
|
40
Dockerfile.github-actions
Normal file
40
Dockerfile.github-actions
Normal file
@@ -0,0 +1,40 @@
|
||||
FROM docker.io/oven/bun:1-alpine AS build
|
||||
|
||||
# go to work folder
|
||||
WORKDIR /usr/src/app
|
||||
|
||||
# allow bun user to edit folder
|
||||
RUN chown -R bun:bun .
|
||||
|
||||
USER bun
|
||||
|
||||
ADD --chown=bun:bun server/package.json server/bun.lock ./server/
|
||||
|
||||
# install prod deps dependencies
|
||||
RUN cd server && \
|
||||
bun install --frozen-install --production
|
||||
|
||||
# go to another VM
|
||||
FROM docker.io/oven/bun:1-alpine AS prod
|
||||
|
||||
# inform software to be in production
|
||||
ENV NODE_ENV=production
|
||||
|
||||
# run as non root user
|
||||
USER bun
|
||||
|
||||
# go to work folder
|
||||
WORKDIR /usr/src/app
|
||||
|
||||
# copy from build image
|
||||
COPY --chown=bun:bun ./server/public ./public
|
||||
COPY --chown=bun:bun ./server/package.json ./package.json
|
||||
COPY --chown=bun:bun --from=build /usr/src/app/server/node_modules ./node_modules
|
||||
COPY --chown=bun:bun ./server/src ./src
|
||||
COPY --chown=bun:bun ./server/generated ./generated
|
||||
|
||||
# Expose port
|
||||
EXPOSE 3000
|
||||
|
||||
# run it !
|
||||
CMD ["bun", "src/index.ts"]
|
46
README.md
46
README.md
@@ -13,11 +13,11 @@
|
||||
<a href="https://github.com/tcgdex/cards-database/stargazers">
|
||||
<img src="https://img.shields.io/github/stars/tcgdex/cards-database?style=flat-square" alt="Github stars">
|
||||
</a>
|
||||
<a href="https://github.com/tcgdex/compiler">
|
||||
<img src="https://img.shields.io/github/workflow/status/tcgdex/cards-database/Compile?style=flat-square" alt="Compiler build passing" />
|
||||
<a href="https://github.com/tcgdex/cards-database/actions">
|
||||
<img src="https://img.shields.io/github/actions/workflow/status/TCGdex/cards-database/build.yml?style=flat-square" alt="Compiler build passing" />
|
||||
</a>
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
||||
<a href="#contributors-"><img src="https://img.shields.io/badge/all_contributors-6-orange.svg?style=flat-square" alt="All Contributors Badge" /></a>
|
||||
<a href="#contributors-"><img src="https://img.shields.io/badge/all_contributors-7-orange.svg?style=flat-square" alt="All Contributors Badge" /></a>
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
||||
</p>
|
||||
|
||||
@@ -27,15 +27,11 @@ A Multilanguage Pokémon TCG Database with Cards Pictures and most of the inform
|
||||
|
||||
## Getting Started
|
||||
|
||||
_If you need help for using/editing the database, [join us on Discord](https://discord.gg/NehYTAhsZE)!_
|
||||
|
||||
### Using the Database
|
||||
|
||||
_The full documentation is available at <https://www.tcgdex.dev>_
|
||||
A full documentation of the API is available at <https://tcgdex.dev>
|
||||
|
||||
- The easiest way to interact with the database is by using one of our SDKs listed below.
|
||||
- You can also direcly use the endpoints at `api.tcgdex.net` (see the documentation).
|
||||
- You can build the API yourself by using our `Dockerfile` and using it on the port 3000
|
||||
- You can build the API yourself by using our `Dockerfile` and using it on the port 3000 (`docker-compose.yml` file included above)
|
||||
|
||||
#### SDKs / API Wrappers
|
||||
|
||||
@@ -45,14 +41,6 @@ We currently officially support theses SDKs
|
||||
- [PHP SDK](https://github.com/tcgdex/php-sdk)
|
||||
- [Java SDK](https://github.com/tcgdex/java-sdk)
|
||||
|
||||
### Editing the Database
|
||||
|
||||
There is three sub folders that will allow you to edit some faces of the database
|
||||
|
||||
- `/data`: Contains Cards Data architectured around `SerieName/SetName/CardLocalId` folders
|
||||
- `/meta`: Contains informations for the project (definitions files, Translations for some fields)
|
||||
- `/server`: The server that allow to communicate with the database
|
||||
|
||||
## Status
|
||||
|
||||
We are making sure to make every cards available for every languages they were available !
|
||||
@@ -62,18 +50,19 @@ We are making sure to make every cards available for every languages they were a
|
||||
_want to help translating? each object fields on cards that have at least en,fr,es,de,it or pt can have the others!,_
|
||||
_Also we have another translation files located at `meta/translations`_
|
||||
|
||||
## Contributing
|
||||
## Sponsors 💕
|
||||
|
||||
See [CONTRIBUTING.md](./CONTRIBUTING.md)
|
||||
_[Support us as a sponsor](https://github.com/sponsors/tcgdex) and have your logo featured on our GitHub README, complete with a link to your website._
|
||||
|
||||
TL::DR
|
||||
- Fork
|
||||
- make your changes
|
||||
- pull request
|
||||
<p align="center">
|
||||
<a href="https://dzeio.com" target="_blank" title="Dzeio">
|
||||
<img height="128" width="32%" src="./.github/sponsors/dzeio.svg" alt="TCGdex Sponsor Dzeio" />
|
||||
</a>
|
||||
</p>
|
||||
|
||||
## Deprecation
|
||||
|
||||
As of February 2021, the v1 API is no longer supported.
|
||||
<p align="center">
|
||||
<!-- <a href="https://dzeio.com" target="_blank" title="Dzeio"><img height="80" width="19%" src="./.github/sponsors/dzeio.svg" alt="TCGdex Sponsor Dzeio" /></a> -->
|
||||
</p>
|
||||
|
||||
## Contributors ✨
|
||||
|
||||
@@ -91,6 +80,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Maxopoly"><img src="https://avatars.githubusercontent.com/u/12138136?v=4?s=100" width="100px;" alt="Maxopoly"/><br /><sub><b>Maxopoly</b></sub></a><br /><a href="#data-Maxopoly" title="Data">🔣</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/calli23"><img src="https://avatars.githubusercontent.com/u/24553863?v=4?s=100" width="100px;" alt="calli23"/><br /><sub><b>calli23</b></sub></a><br /><a href="#data-calli23" title="Data">🔣</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="http://imclement.com"><img src="https://avatars.githubusercontent.com/u/1112701?v=4?s=100" width="100px;" alt="Clement Yuan"/><br /><sub><b>Clement Yuan</b></sub></a><br /><a href="#data-spyworldxp" title="Data">🔣</a></td>
|
||||
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Reloadaxe"><img src="https://avatars.githubusercontent.com/u/44167126?v=4?s=100" width="100px;" alt="Benjamin Rousseliere"/><br /><sub><b>Benjamin Rousseliere</b></sub></a><br /><a href="#data-Reloadaxe" title="Data">🔣</a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -102,6 +92,10 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
||||
|
||||
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
|
||||
|
||||
## Deprecation
|
||||
|
||||
As of February 2021, the v1 API is no longer supported.
|
||||
|
||||
## Licenses
|
||||
|
||||
This database is not produced, endorsed, supported or affiliated with Nintendo or The Pokémon Company
|
||||
|
13
bun.lock
Normal file
13
bun.lock
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"lockfileVersion": 1,
|
||||
"workspaces": {
|
||||
"": {
|
||||
"devDependencies": {
|
||||
"typescript": "^5",
|
||||
},
|
||||
},
|
||||
},
|
||||
"packages": {
|
||||
"typescript": ["typescript@5.8.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ=="],
|
||||
}
|
||||
}
|
@@ -6,7 +6,8 @@ const set: Set = {
|
||||
name: {
|
||||
ja: 'クリムゾンヘイズ',
|
||||
'zh-tw': '緋紅薄霧',
|
||||
th: 'หมอกสีชาด'
|
||||
th: 'หมอกสีชาด',
|
||||
ko: '크림슨헤이즈'
|
||||
},
|
||||
|
||||
serie: serie,
|
||||
@@ -17,7 +18,8 @@ const set: Set = {
|
||||
releaseDate: {
|
||||
ja: '2024-03-22',
|
||||
'zh-tw': '2024-04-03',
|
||||
th: '2024-04-26'
|
||||
th: '2024-04-26',
|
||||
ko: '2024-05-24'
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -4,7 +4,10 @@ import serie from '../SV'
|
||||
const set: Set = {
|
||||
id: 'SV6',
|
||||
name: {
|
||||
ja: '変幻の仮面'
|
||||
ja: '変幻の仮面',
|
||||
'zh-tw': '變幻假面',
|
||||
th: 'หน้ากากจอมลวงตา',
|
||||
ko: '변환의 가면'
|
||||
},
|
||||
|
||||
serie: serie,
|
||||
@@ -14,7 +17,9 @@ const set: Set = {
|
||||
},
|
||||
releaseDate: {
|
||||
ja: '2024-04-26',
|
||||
'zh-tw': '2024-05-10'
|
||||
'zh-tw': '2024-05-10',
|
||||
th: '2024-05-31',
|
||||
ko: '2024-06-21'
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -3,7 +3,8 @@ import set from '../SV6'
|
||||
const card: Card = {
|
||||
name: {
|
||||
ja: "ヒマナッツ",
|
||||
'zh-tw': "向日種子"
|
||||
'zh-tw': "向日種子",
|
||||
th: "ฮิมานัทส์"
|
||||
},
|
||||
|
||||
category: 'Pokemon',
|
||||
@@ -16,7 +17,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "とても ひ弱。 襲われても 葉っぱを 必死に 振りまわして 追い払うのが やっとだ。",
|
||||
'zh-tw': "十分弱小。即使遭到攻擊, 也只能勉勉強強地靠著 拼命揮舞葉子來趕走敵人。"
|
||||
'zh-tw': "十分弱小。即使遭到攻擊, 也只能勉勉強強地靠著 拼命揮舞葉子來趕走敵人。",
|
||||
th: "อ่อนแอมาก ถึงถูกโจมตีก็ทำได้แค่พยายามเหวี่ยงใบไม้เพื่อไล่อีกฝ่ายอย่างสุดกำลังเท่านั้น"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -26,14 +28,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "タネマシンガン",
|
||||
'zh-tw': "種子機關槍"
|
||||
'zh-tw': "種子機關槍",
|
||||
th: "ปืนกลเมล็ดพืช"
|
||||
},
|
||||
|
||||
damage: "10×",
|
||||
|
||||
effect: {
|
||||
ja: "コインを4回投げ、オモテの数×10ダメージ。",
|
||||
'zh-tw': "擲4次硬幣,造成正面出現的次數×10點傷害。"
|
||||
'zh-tw': "擲4次硬幣,造成正面出現的次數×10點傷害。",
|
||||
th: "ทอยเหรียญ 4 ครั้ง แดเมจจะเท่ากับจำนวนครั้งที่ออกหัว x10"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "キマワリ",
|
||||
'zh-tw': "向日花怪"
|
||||
'zh-tw': "向日花怪",
|
||||
th: "คิมาวาริ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "浴びた 日差しを エネルギーに 変換するため 昼間は ずっと 太陽の方を 向いている。",
|
||||
'zh-tw': "由於會將沐浴到的陽光 轉換成能量,因此白天 總是一直面向著太陽。"
|
||||
'zh-tw': "由於會將沐浴到的陽光 轉換成能量,因此白天 總是一直面向著太陽。",
|
||||
th: "ตอนกลางวันจะหันหน้าเข้าหาดวงอาทิตย์ตลอดเวลาเพื่อเปลี่ยนแสงอาทิตย์ที่อาบมาให้เป็นพลังงาน"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,28 +30,32 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ひざしがえし",
|
||||
'zh-tw': "光返"
|
||||
'zh-tw': "光返",
|
||||
th: "แสงตะวันสะท้อนกลับ"
|
||||
},
|
||||
|
||||
damage: "60×",
|
||||
|
||||
effect: {
|
||||
ja: "相手のポケモン全員についているエネルギーの数×60ダメージ。",
|
||||
'zh-tw': "造成對手的所有寶可夢身上附加的【火】能量的數量×60點傷害。"
|
||||
'zh-tw': "造成對手的所有寶可夢身上附加的【火】能量的數量×60點傷害。",
|
||||
th: "แดเมจจะเท่ากับจำนวนพลังงาน[ไฟ]ที่ติดอยู่กับโปเกมอนฝ่ายตรงข้ามทุกตัว x60"
|
||||
}
|
||||
}, {
|
||||
cost: ["Grass", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "メガドレイン",
|
||||
'zh-tw': "超級吸取"
|
||||
'zh-tw': "超級吸取",
|
||||
th: "เมก้าเดรน"
|
||||
},
|
||||
|
||||
damage: 50,
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンのHPを「30」回復する。",
|
||||
'zh-tw': "將這隻寶可夢恢復「30」HP。"
|
||||
'zh-tw': "將這隻寶可夢恢復「30」HP。",
|
||||
th: "ฟื้นฟู HP ของโปเกมอนนี้ [30]"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ヘラクロス",
|
||||
'zh-tw': "赫拉克羅斯"
|
||||
'zh-tw': "赫拉克羅斯",
|
||||
th: "เฮราครอส"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "ものすごい 怪力の 持ち主。 自分の 体重の 100倍の 重さでも 楽に ぶん投げる。",
|
||||
'zh-tw': "擁有十分驚人的怪力。 就連重量是自己體重100倍的 物體也能輕鬆扔飛。"
|
||||
'zh-tw': "擁有十分驚人的怪力。 就連重量是自己體重100倍的 物體也能輕鬆扔飛。",
|
||||
th: "มีพละกำลังมหาศาลมาก สามารถโยนของที่หนักกว่าตัวเอง 100 เท่าได้อย่างสบาย ๆ"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,21 +30,24 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "のしかかり",
|
||||
'zh-tw': "泰山壓頂"
|
||||
'zh-tw': "泰山壓頂",
|
||||
th: "ทิ้งตัวทับ"
|
||||
},
|
||||
|
||||
damage: 60,
|
||||
|
||||
effect: {
|
||||
ja: "コインを1回投げオモテなら、相手のバトルポケモンをマヒにする。",
|
||||
'zh-tw': "擲1次硬幣若為正面,則將對手的戰鬥寶可夢【麻痺】。"
|
||||
'zh-tw': "擲1次硬幣若為正面,則將對手的戰鬥寶可夢【麻痺】。",
|
||||
th: "ทอยเหรียญ 1 ครั้งถ้าออกหัว จะทำให้โปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามเป็นสภาวะ[ชา]"
|
||||
}
|
||||
}, {
|
||||
cost: ["Grass", "Colorless", "Colorless", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "ちきゅうなげ",
|
||||
'zh-tw': "地球上投"
|
||||
'zh-tw': "地球上投",
|
||||
th: "ขว้างใส่โลก"
|
||||
},
|
||||
|
||||
damage: 130
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "バルビート",
|
||||
'zh-tw': "電螢蟲"
|
||||
'zh-tw': "電螢蟲",
|
||||
th: "บารูบีท"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "お尻の 光を 点滅させて 仲間と 会話する。 イルミーゼの 出す 甘い 香りが 大好き。",
|
||||
'zh-tw': "會閃爍臀部的光芒 來與夥伴交流。最喜歡 甜甜螢放出的甜甜香氣。"
|
||||
'zh-tw': "會閃爍臀部的光芒 來與夥伴交流。最喜歡 甜甜螢放出的甜甜香氣。",
|
||||
th: "กะพริบแสงที่ก้นเพื่อสื่อสารกับพวกพ้อง ชอบกลิ่นหอมหวานที่อิลูมิเซะปล่อยออกมามาก"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,26 +30,30 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ファストサイン",
|
||||
'zh-tw': "急速信號"
|
||||
'zh-tw': "急速信號",
|
||||
th: "เฟิสต์ไซน์"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "このワザは、先攻プレイヤーの最初の番でも使える。自分の山札からたねポケモンを2枚まで選び、ベンチに出す。そして山札を切る。",
|
||||
'zh-tw': "這個招式可在先攻玩家的最初回合使用。從自己的牌庫選擇最多2張【基礎】寶可夢卡,放置於備戰區。並且重洗牌庫。"
|
||||
'zh-tw': "這個招式可在先攻玩家的最初回合使用。從自己的牌庫選擇最多2張【基礎】寶可夢卡,放置於備戰區。並且重洗牌庫。",
|
||||
th: "ท่าต่อสู้นี้ แม้ในเทิร์นแรกสุดของผู้เล่นฝ่ายเริ่มก่อนก็สามารถใช้ได้ เลือกการ์ดโปเกมอน[พื้นฐาน]ได้สูงสุด 2 ใบจากสำรับการ์ดฝ่ายเรา วางบนเบนช์ แล้วสับสำรับการ์ด"
|
||||
}
|
||||
}, {
|
||||
cost: ["Colorless", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "れんけいアタック",
|
||||
'zh-tw': "聯合攻擊"
|
||||
'zh-tw': "聯合攻擊",
|
||||
th: "ผสานบุกประจัญบาน"
|
||||
},
|
||||
|
||||
damage: "20+",
|
||||
|
||||
effect: {
|
||||
ja: "自分のベンチに「イルミーゼ」がいるなら、60ダメージ追加。",
|
||||
'zh-tw': "若自己的備戰區有「甜甜螢」,則增加60點傷害。"
|
||||
'zh-tw': "若自己的備戰區有「甜甜螢」,則增加60點傷害。",
|
||||
th: "ถ้าบนเบนช์ฝ่ายเรามี [อิลูมิเซะ] อยู่ การโจมตีนี้จะเพิ่มแดเมจอีก 60"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "イルミーゼ",
|
||||
'zh-tw': "甜甜螢"
|
||||
'zh-tw': "甜甜螢",
|
||||
th: "อิลูมิเซะ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "バルビートを 誘導して 夜空に サインを 描く。 サインの 意味を 研究する 学者も いる。",
|
||||
'zh-tw': "會誘導電螢蟲在夜空中 描繪記號。也有些學者 在研究記號的含意。"
|
||||
'zh-tw': "會誘導電螢蟲在夜空中 描繪記號。也有些學者 在研究記號的含意。",
|
||||
th: "จะชักนำบารูบีทขึ้นไปวาดสัญลักษณ์บนท้องฟ้าในเวลากลางคืน และก็มีนักวิชาการที่ศึกษาค้นคว้าถึงความหมายของสัญลักษณ์เหล่านั้น"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,19 +30,22 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "スローパフューム",
|
||||
'zh-tw': "慢芬香"
|
||||
'zh-tw': "慢芬香",
|
||||
th: "สโลว์เพอร์ฟูม"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "このワザは、後攻プレイヤーの最初の番にだけ使える。相手のベンチポケモンを1匹選び、そのポケモンと、ついているすべてのカードを、相手の山札にもどして切る。",
|
||||
'zh-tw': "這個招式只可在後攻玩家的最初回合使用。選擇1隻對手的備戰寶可夢,將那隻寶可夢與附加的卡全部放回對手的牌庫並重洗。"
|
||||
'zh-tw': "這個招式只可在後攻玩家的最初回合使用。選擇1隻對手的備戰寶可夢,將那隻寶可夢與附加的卡全部放回對手的牌庫並重洗。",
|
||||
th: "ท่าต่อสู้นี้ ใช้ได้ในเทิร์นแรกสุดของผู้เล่นฝ่ายเล่นทีหลังเท่านั้น เลือกโปเกมอนบนเบนช์ฝ่ายตรงข้าม 1 ตัว นำโปเกมอนนั้น และการ์ดทั้งหมดที่ติดอยู่ ใส่กลับไปในสำรับการ์ดฝ่ายตรงข้ามแล้วสับ"
|
||||
}
|
||||
}, {
|
||||
cost: ["Grass", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "かっくう",
|
||||
'zh-tw': "滑翔"
|
||||
'zh-tw': "滑翔",
|
||||
th: "ถลาลม"
|
||||
},
|
||||
|
||||
damage: 30
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ボクレー",
|
||||
'zh-tw': "小木靈"
|
||||
'zh-tw': "小木靈",
|
||||
th: "โบคุเร"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "死んだ 子供の 魂が 切り株に 宿った ポケモン。 森を さまよい 仲間を 探す。",
|
||||
'zh-tw': "死去的孩子的靈魂附在 樹樁上,變成了寶可夢。 會徘徊在森林裡尋找夥伴。"
|
||||
'zh-tw': "死去的孩子的靈魂附在 樹樁上,變成了寶可夢。 會徘徊在森林裡尋找夥伴。",
|
||||
th: "โปเกมอนที่เกิดจากการที่วิญญาณเด็กที่เสียชีวิตมาสิงสู่อยู่ในตอไม้ ร่อนเร่ในป่าเพื่อตามหาเพื่อนพ้อง"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "やどりぎのタネ",
|
||||
'zh-tw': "寄生種子"
|
||||
'zh-tw': "寄生種子",
|
||||
th: "เมล็ดกาฝาก"
|
||||
},
|
||||
|
||||
damage: 20,
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンのHPを「20」回復する。",
|
||||
'zh-tw': "將這隻寶可夢恢復「20」HP。"
|
||||
'zh-tw': "將這隻寶可夢恢復「20」HP。",
|
||||
th: "ฟื้นฟู HP ของโปเกมอนนี้ [20]"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "オーロット",
|
||||
'zh-tw': "朽木妖"
|
||||
'zh-tw': "朽木妖",
|
||||
th: "โอร็อต"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "森に 棲む ポケモンには とても 優しい。 頭の しげみを 棲み処にされても 気にしない。",
|
||||
'zh-tw': "對住在森林裡的寶可夢 非常親切,就算被住進了 頭上那叢葉子裡也毫不在意。"
|
||||
'zh-tw': "對住在森林裡的寶可夢 非常親切,就算被住進了 頭上那叢葉子裡也毫不在意。",
|
||||
th: "อ่อนโยนต่อเหล่าโปเกมอนที่อาศัยอยู่ในป่าเป็นอย่างมาก แม้พุ่มไม้บนหัวจะถูกเอาไปทำเป็นที่อยู่อาศัยก็ไม่สนใจ"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,21 +30,24 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ギガドレイン",
|
||||
'zh-tw': "終極吸取"
|
||||
'zh-tw': "終極吸取",
|
||||
th: "กิก้าเดรน"
|
||||
},
|
||||
|
||||
damage: 50,
|
||||
|
||||
effect: {
|
||||
ja: "相手のバトルポケモンに与えたダメージぶん、このポケモンのHPを回復する。",
|
||||
'zh-tw': "將這隻寶可夢恢復對對手的戰鬥寶可夢造成的傷害相同數值的HP。"
|
||||
'zh-tw': "將這隻寶可夢恢復對對手的戰鬥寶可夢造成的傷害相同數值的HP。",
|
||||
th: "ฟื้นฟู HP ของโปเกมอนนี้ ตามจำนวนแดเมจที่ทำกับโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้าม"
|
||||
}
|
||||
}, {
|
||||
cost: ["Grass", "Grass", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "フォレストダンプ",
|
||||
'zh-tw': "森林拋擲"
|
||||
'zh-tw': "森林拋擲",
|
||||
th: "ฟอเรสต์ดัมป์"
|
||||
},
|
||||
|
||||
damage: 130
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "サルノリ",
|
||||
'zh-tw': "敲音猴"
|
||||
'zh-tw': "敲音猴",
|
||||
th: "ซารุโนริ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "特別な スティックで リズムを 刻むと 草花を 元気にする パワーが 音波になって 広がる。",
|
||||
'zh-tw': "當牠用特別的木棒敲奏時, 能夠給予花草活力的力量 就會變成音波擴散開來。"
|
||||
'zh-tw': "當牠用特別的木棒敲奏時, 能夠給予花草活力的力量 就會變成音波擴散開來。",
|
||||
th: "เมื่อใช้แท่งไม้พิเศษเคาะจังหวะดนตรี พลังที่ทำให้ต้นไม้ดอกไม้ร่าเริงจะกลายเป็นคลื่นเสียงแผ่ขยายออกไป"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,7 +30,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "けとばす",
|
||||
'zh-tw': "踢飛"
|
||||
'zh-tw': "踢飛",
|
||||
th: "ดีด"
|
||||
},
|
||||
|
||||
damage: 10
|
||||
@@ -37,7 +40,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "えだづき",
|
||||
'zh-tw': "木枝突刺"
|
||||
'zh-tw': "木枝突刺",
|
||||
th: "ต่อกิ่ง"
|
||||
},
|
||||
|
||||
damage: 30
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "バチンキー",
|
||||
'zh-tw': "啪咚猴"
|
||||
'zh-tw': "啪咚猴",
|
||||
th: "บาจินคี"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "2本の スティックで 激しい ビートを 刻める バチンキーほど 仲間たちの 尊敬を 集める。",
|
||||
'zh-tw': "越是能用2根木棒敲奏出 激烈節拍的啪咚猴,越是 能獲得夥伴們的尊敬。"
|
||||
'zh-tw': "越是能用2根木棒敲奏出 激烈節拍的啪咚猴,越是 能獲得夥伴們的尊敬。",
|
||||
th: "ยิ่งบาจินคีตีจังหวะรุนแรงด้วยแท่งไม้ 2 แท่งเท่าไหร่ ก็ยิ่งได้รับความเคารพจากเหล่าสหาย"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ドンドンだいこ",
|
||||
'zh-tw': "衝衝鼓"
|
||||
'zh-tw': "衝衝鼓",
|
||||
th: "ตีกลองตึ้งตึ้ง"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "自分のバトルポケモンが特性「おまつりおんど」を持つポケモンなら、自分の番に1回使える。自分の山札から好きなカードを1枚選び、手札に加える。そして山札を切る。",
|
||||
'zh-tw': "若自己的戰鬥寶可夢為擁有特性「祭典樂舞」的寶可夢,則在自己的回合時可使用1次。從自己的牌庫任意選擇1張卡加入手牌。並且重洗牌庫。"
|
||||
'zh-tw': "若自己的戰鬥寶可夢為擁有特性「祭典樂舞」的寶可夢,則在自己的回合時可使用1次。從自己的牌庫任意選擇1張卡加入手牌。並且重洗牌庫。",
|
||||
th: "ถ้าโปเกมอนบนตำแหน่งต่อสู้ฝ่ายเราเป็นโปเกมอนที่มีความสามารถ [รำวงงานเทศกาล] ใช้ได้ 1 ครั้งในเทิร์นฝ่ายเรา เลือกการ์ดที่ชอบ 1 ใบจากสำรับการ์ดฝ่ายเรา นำขึ้นมือ แล้วสับสำรับการ์ด"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,7 +46,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "たたく",
|
||||
'zh-tw': "敲擊"
|
||||
'zh-tw': "敲擊",
|
||||
th: "ตี"
|
||||
},
|
||||
|
||||
damage: 50
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ゴリランダー",
|
||||
'zh-tw': "轟擂金剛猩"
|
||||
'zh-tw': "轟擂金剛猩",
|
||||
th: "กอริลลันดา"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "特別な 切り株の パワーを ドラミングで コントロール。 根っこを 操って 戦う。",
|
||||
'zh-tw': "能夠透過打鼓來控制 特別的樹樁中的力量, 操縱樹根進行戰鬥。"
|
||||
'zh-tw': "能夠透過打鼓來控制 特別的樹樁中的力量, 操縱樹根進行戰鬥。",
|
||||
th: "ควบคุมพลังของตอไม้พิเศษด้วยการตีกลอง บังคับตอไม้เพื่อต่อสู้"
|
||||
},
|
||||
|
||||
stage: "Stage2",
|
||||
@@ -28,28 +30,32 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ドラムアタック",
|
||||
'zh-tw': "鼓擊"
|
||||
'zh-tw': "鼓擊",
|
||||
th: "ดรัมแอทแทก"
|
||||
},
|
||||
|
||||
damage: 60,
|
||||
|
||||
effect: {
|
||||
ja: "次の相手の番、このワザを受けたポケモンは、ワザを使うためのエネルギーとにげるためのエネルギーが、それぞれエネルギー1個ぶん多くなる。",
|
||||
'zh-tw': "在下個對手的回合,受到這個招式的寶可夢使用招式所需的能量與【撤退】所需的能量,各增加1個【無】能量。"
|
||||
'zh-tw': "在下個對手的回合,受到這個招式的寶可夢使用招式所需的能量與【撤退】所需的能量,各增加1個【無】能量。",
|
||||
th: "เทิร์นถัดไปของฝ่ายตรงข้าม โปเกมอนที่ได้รับท่าต่อสู้นี้ พลังงานสำหรับใช้ท่าต่อสู้กับพลังงานสำหรับ[หนี] แต่ละอย่างจะใช้พลังงาน[ไร้สี]เพิ่มขึ้น 1 ลูก"
|
||||
}
|
||||
}, {
|
||||
cost: ["Grass", "Grass"],
|
||||
|
||||
name: {
|
||||
ja: "ウッドハンマー",
|
||||
'zh-tw': "木槌"
|
||||
'zh-tw': "木槌",
|
||||
th: "วู้ดแฮมเมอร์"
|
||||
},
|
||||
|
||||
damage: 180,
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンにも50ダメージ。",
|
||||
'zh-tw': "這隻寶可夢也受到50點傷害。"
|
||||
'zh-tw': "這隻寶可夢也受到50點傷害。",
|
||||
th: "โปเกมอนนี้ก็จะได้รับแดเมจ 50 ด้วย"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "カジッチュ",
|
||||
'zh-tw': "啃果蟲"
|
||||
'zh-tw': "啃果蟲",
|
||||
th: "คาจิชชู"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "りんごの 中で 暮らしている。 りんごが なくなると 体の 水分が 抜けて 弱ってしまう。",
|
||||
'zh-tw': "平時都在蘋果中生活。 如果失去了蘋果,身體的 水分就會流失而變得虛弱。"
|
||||
'zh-tw': "平時都在蘋果中生活。 如果失去了蘋果,身體的 水分就會流失而變得虛弱。",
|
||||
th: "อาศัยอยู่ในแอปเปิล พอไม่มีแอปเปิลแล้ว จะสูญเสียน้ำในร่างกายและอ่อนแอลง"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ローリングアタック",
|
||||
'zh-tw': "回轉攻擊"
|
||||
'zh-tw': "回轉攻擊",
|
||||
th: "โรลลิงแอทแทก"
|
||||
},
|
||||
|
||||
damage: "10+",
|
||||
|
||||
effect: {
|
||||
ja: "コインを1回投げオモテなら、20ダメージ追加。",
|
||||
'zh-tw': "擲1次硬幣若為正面,則增加20點傷害。"
|
||||
'zh-tw': "擲1次硬幣若為正面,則增加20點傷害。",
|
||||
th: "ทอยเหรียญ 1 ครั้งถ้าออกหัว การโจมตีนี้จะเพิ่มแดเมจอีก 20"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "カミッチュ",
|
||||
'zh-tw': "裹蜜蟲"
|
||||
'zh-tw': "裹蜜蟲",
|
||||
th: "คามิชชู"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "頭を 出している そとッチュと 尻尾を 出している なかッチュが 助け合い りんごのなかで 暮らす。",
|
||||
'zh-tw': "由露出了頭部的外頭蟲與 露出了尾巴的裡頭蟲相扶相持, 一起在蘋果裡面生活。"
|
||||
'zh-tw': "由露出了頭部的外頭蟲與 露出了尾巴的裡頭蟲相扶相持, 一起在蘋果裡面生活。",
|
||||
th: "ตัวนอกที่ยื่นหัวออกมาและตัวในที่ยื่นหางออกมานั้นอาศัยอยู่ด้วยกันในแอปเปิลและคอยช่วยเหลือซึ่งกันและกัน"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "おまつりおんど",
|
||||
'zh-tw': "祭典樂舞"
|
||||
'zh-tw': "祭典樂舞",
|
||||
th: "รำวงงานเทศกาล"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "場に「お祭り会場」が出ているなら、このポケモンは、持っているワザを2回連続で使える。(1回目のワザで相手のバトルポケモンがきぜつしたなら、次のバトルポケモンが出たあと、2回目のワザを使う。)",
|
||||
'zh-tw': "若場上有「祭典會場」,則這隻寶可夢可使用持有的招式2次。(若對手的戰鬥寶可夢因第1次的招式而【昏厥】了,則在下一隻寶可夢放置後,使用第2次的招式。)"
|
||||
'zh-tw': "若場上有「祭典會場」,則這隻寶可夢可使用持有的招式2次。(若對手的戰鬥寶可夢因第1次的招式而【昏厥】了,則在下一隻寶可夢放置後,使用第2次的招式。)",
|
||||
th: "ถ้ามี [สถานที่จัดเทศกาล] อยู่บนกระดาน โปเกมอนนี้ จะใช้ท่าต่อสู้ที่มีต่อเนื่องกันได้ 2 ครั้ง (ถ้าโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้าม[หมดสภาพ]ด้วยท่าต่อสู้ครั้งที่ 1 หลังจากที่โปเกมอนบนตำแหน่งต่อสู้ตัวถัดไปออกมา ให้ใช้ท่าต่อสู้ครั้งที่ 2)"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,14 +46,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ともだちのわ",
|
||||
'zh-tw': "朋友之環"
|
||||
'zh-tw': "朋友之環",
|
||||
th: "กลุ่มเพื่อน"
|
||||
},
|
||||
|
||||
damage: "20×",
|
||||
|
||||
effect: {
|
||||
ja: "自分のベンチポケモンの数×20ダメージ。",
|
||||
'zh-tw': "造成自己的備戰寶可夢的數量×20點傷害。"
|
||||
'zh-tw': "造成自己的備戰寶可夢的數量×20點傷害。",
|
||||
th: "แดเมจจะเท่ากับจำนวนโปเกมอนบนเบนช์ฝ่ายเรา x20"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "チャデス",
|
||||
'zh-tw': "斯魔茶"
|
||||
'zh-tw': "斯魔茶",
|
||||
th: "ฉะเดธ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "ヤバチャの リージョンフォームに 見えるが まったく 関係のない ポケモンと 最近 判明した。",
|
||||
'zh-tw': "雖然這種寶可夢看起來像是 來悲茶的地區型態,但最近 被發現其實兩者毫無關係。"
|
||||
'zh-tw': "雖然這種寶可夢看起來像是 來悲茶的地區型態,但最近 被發現其實兩者毫無關係。",
|
||||
th: "แม้จะดูเหมือนฟอร์มตามภูมิภาคของยาบาฉะ แต่ไม่นานมานี้มีการค้นพบแล้วว่ามันเป็นโปเกมอนที่ไม่เกี่ยวข้องกันโดยสิ้นเชิง"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,26 +30,30 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "おちゃだし",
|
||||
'zh-tw': "上茶"
|
||||
'zh-tw': "上茶",
|
||||
th: "เสิร์ฟน้ำชา"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "自分のトラッシュから「基本エネルギー」を1枚選び、相手に見せて、手札に加える。",
|
||||
'zh-tw': "從自己的棄牌區選擇1張「基本【草】能量」卡,在給對手看過後加入手牌。"
|
||||
'zh-tw': "從自己的棄牌區選擇1張「基本【草】能量」卡,在給對手看過後加入手牌。",
|
||||
th: "เลือกการ์ด [พลังงานพื้นฐาน[หญ้า]] 1 ใบจากตำแหน่งทิ้งการ์ดฝ่ายเรา ให้ฝ่ายตรงข้ามดู นำขึ้นมือ"
|
||||
}
|
||||
}, {
|
||||
cost: ["Grass"],
|
||||
|
||||
name: {
|
||||
ja: "ふいをつく",
|
||||
'zh-tw': "偷襲"
|
||||
'zh-tw': "偷襲",
|
||||
th: "จู่โจมกะทันหัน"
|
||||
},
|
||||
|
||||
damage: 30,
|
||||
|
||||
effect: {
|
||||
ja: "コインを1回投げウラなら、このワザは失敗。",
|
||||
'zh-tw': "擲1次硬幣若為反面,則這個招式失敗。"
|
||||
'zh-tw': "擲1次硬幣若為反面,則這個招式失敗。",
|
||||
th: "ทอยเหรียญ 1 ครั้งถ้าออกก้อย ท่าต่อสู้นี้จะล้มเหลว"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ヤバソチャ",
|
||||
'zh-tw': "來悲粗茶"
|
||||
'zh-tw': "來悲粗茶",
|
||||
th: "ยาบาโซฉะ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "民家の 床下や 棚の奥など 冷暗所を 好む。 日没後 獲物を 探して 徘徊する。",
|
||||
'zh-tw': "喜歡待在民宅的地板下或 架子深處等陰涼的地方。 日落後會四處徘徊尋找獵物。"
|
||||
'zh-tw': "喜歡待在民宅的地板下或 架子深處等陰涼的地方。 日落後會四處徘徊尋找獵物。",
|
||||
th: "ชอบสถานที่เย็น ๆ มืด ๆ อย่างใต้พื้นบ้านหรือตามซอกมุมชั้นวางของ หลังพระอาทิตย์ตกจะไปตระเวนหาอาหาร"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,26 +30,30 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "のろいのしずく",
|
||||
'zh-tw': "詛咒水滴"
|
||||
'zh-tw': "詛咒水滴",
|
||||
th: "หยาดหยดแห่งคำสาป"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "ダメカン4個を、相手のポケモンに好きなようにのせる。",
|
||||
'zh-tw': "將4個傷害指示物以任意方式放置於對手的寶可夢身上。"
|
||||
'zh-tw': "將4個傷害指示物以任意方式放置於對手的寶可夢身上。",
|
||||
th: "วางตัวนับแดเมจ 4 ตัว บนโปเกมอนฝ่ายตรงข้ามตามชอบ"
|
||||
}
|
||||
}, {
|
||||
cost: ["Grass"],
|
||||
|
||||
name: {
|
||||
ja: "ぶちまけちゃ",
|
||||
'zh-tw': "傾瀉茶"
|
||||
'zh-tw': "傾瀉茶",
|
||||
th: "คว่ำชาทิ้ง"
|
||||
},
|
||||
|
||||
damage: "70×",
|
||||
|
||||
effect: {
|
||||
ja: "自分の場のポケモンについているエネルギーを3枚までトラッシュし、その枚数×70ダメージ。",
|
||||
'zh-tw': "將最多3張自己的場上寶可夢身上附加的【草】能量卡丟棄,造成其張數×70點傷害。"
|
||||
'zh-tw': "將最多3張自己的場上寶可夢身上附加的【草】能量卡丟棄,造成其張數×70點傷害。",
|
||||
th: "ทิ้งการ์ดพลังงาน[หญ้า]ที่ติดอยู่กับโปเกมอนบนกระดานฝ่ายเราได้สูงสุด 3 ใบที่ตำแหน่งทิ้งการ์ด แดเมจจะเท่ากับจำนวนการ์ดนั้น x70"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "オーガポン みどりのめん",
|
||||
'zh-tw': "厄鬼椪 碧草面具"
|
||||
'zh-tw': "厄鬼椪 碧草面具",
|
||||
th: "โอการ์ปอง หน้ากากสีทีล"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "いたずら好きで 好奇心旺盛。 仮面に こめられた タイプの エネルギーを 引き出して 戦う。",
|
||||
'zh-tw': "喜歡惡作劇,好奇心旺盛。 能激發出面具蘊藏的 屬性的能量來戰鬥。"
|
||||
'zh-tw': "喜歡惡作劇,好奇心旺盛。 能激發出面具蘊藏的 屬性的能量來戰鬥。",
|
||||
th: "ชอบเล่นซนและเต็มเปี่ยมไปด้วยความอยากรู้อยากเห็น ต่อสู้ด้วยการดึงพลังงานแห่งประเภทที่อัดแน่นอยู่ในหน้ากากออกมา"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,26 +30,30 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "やまあるき",
|
||||
'zh-tw': "步山"
|
||||
'zh-tw': "步山",
|
||||
th: "เดินเขา"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "自分の山札から基本エネルギーを2枚まで選び、相手に見せて、手札に加える。そして山札を切る。",
|
||||
'zh-tw': "從自己的牌庫選擇最多2張基本能量卡,在給對手看過後加入手牌。並且重洗牌庫。"
|
||||
'zh-tw': "從自己的牌庫選擇最多2張基本能量卡,在給對手看過後加入手牌。並且重洗牌庫。",
|
||||
th: "เลือกการ์ดพลังงานพื้นฐานได้สูงสุด 2 ใบจากสำรับการ์ดฝ่ายเรา ให้ฝ่ายตรงข้ามดู นำขึ้นมือ แล้วสับสำรับการ์ด"
|
||||
}
|
||||
}, {
|
||||
cost: ["Grass", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "おにがえし",
|
||||
'zh-tw': "鬼返"
|
||||
'zh-tw': "鬼返",
|
||||
th: "ยักษ์เอาคืน"
|
||||
},
|
||||
|
||||
damage: "20+",
|
||||
|
||||
effect: {
|
||||
ja: "相手のベンチポケモンの数×20ダメージ追加。",
|
||||
'zh-tw': "增加對手的備戰寶可夢的數量×20點傷害。"
|
||||
'zh-tw': "增加對手的備戰寶可夢的數量×20點傷害。",
|
||||
th: "แดเมจจะเพิ่มตามจำนวนโปเกมอนบนเบนช์ฝ่ายตรงข้าม x20"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "オーガポン みどりのめんex",
|
||||
'zh-tw': "厄鬼椪 碧草面具ex"
|
||||
'zh-tw': "厄鬼椪 碧草面具ex",
|
||||
th: "โอการ์ปอง หน้ากากสีทีลex"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -22,12 +23,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "みどりのまい",
|
||||
'zh-tw': "碧綠之舞"
|
||||
'zh-tw': "碧綠之舞",
|
||||
th: "ระบำเขียวขจี"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "自分の番に1回使える。自分の手札から「基本エネルギー」を1枚選び、このポケモンにつける。その後、自分の山札を1枚引く。",
|
||||
'zh-tw': "在自己的回合時可使用1次。從自己的手牌選擇1張「基本【草】能量」卡,附於這隻寶可夢身上。然後,從自己的牌庫抽出1張卡。"
|
||||
'zh-tw': "在自己的回合時可使用1次。從自己的手牌選擇1張「基本【草】能量」卡,附於這隻寶可夢身上。然後,從自己的牌庫抽出1張卡。",
|
||||
th: "ใช้ได้ 1 ครั้งในเทิร์นฝ่ายเรา เลือกการ์ด [พลังงานพื้นฐาน[หญ้า]] 1 ใบจากบนมือฝ่ายเรา ติดที่โปเกมอนนี้ หลังจากนั้น จั่วการ์ด 1 ใบจากสำรับการ์ดฝ่ายเรา"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -36,14 +39,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "まんようしぐれ",
|
||||
'zh-tw': "萬葉陣雨"
|
||||
'zh-tw': "萬葉陣雨",
|
||||
th: "ฝนใบไม้โปรยปราย"
|
||||
},
|
||||
|
||||
damage: "30+",
|
||||
|
||||
effect: {
|
||||
ja: "おたがいのバトルポケモンについているエネルギーの数×30ダメージ追加。",
|
||||
'zh-tw': "增加雙方的戰鬥寶可夢身上附加的能量的數量×30點傷害。"
|
||||
'zh-tw': "增加雙方的戰鬥寶可夢身上附加的能量的數量×30點傷害。",
|
||||
th: "แดเมจจะเพิ่มตามจำนวนพลังงานที่ติดอยู่กับโปเกมอนบนตำแหน่งต่อสู้ของทั้งสองฝ่าย x30"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ダルマッカ",
|
||||
'zh-tw': "火紅不倒翁"
|
||||
'zh-tw': "火紅不倒翁",
|
||||
th: "ดารุมักกะ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "体の 中で 燃える 炎が パワーの 源。 火が 小さく なると たちまち 眠ってしまう。",
|
||||
'zh-tw': "能量之源是體內的火焰。 如果火焰變小了, 牠馬上就會睡著。"
|
||||
'zh-tw': "能量之源是體內的火焰。 如果火焰變小了, 牠馬上就會睡著。",
|
||||
th: "ไฟที่เผาไหม้อยู่ในร่างกายเป็นแหล่งพลังงาน หากเปลวเพลิงหรี่เล็กลงก็จะหลับไปในทันที"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,7 +30,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "かいりき",
|
||||
'zh-tw': "怪力"
|
||||
'zh-tw': "怪力",
|
||||
th: "พลังมหากาฬ"
|
||||
},
|
||||
|
||||
damage: 10
|
||||
@@ -37,14 +40,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ほのおタックル",
|
||||
'zh-tw': "火焰衝撞"
|
||||
'zh-tw': "火焰衝撞",
|
||||
th: "ไฟกระแทก"
|
||||
},
|
||||
|
||||
damage: 50,
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンにも20ダメージ。",
|
||||
'zh-tw': "這隻寶可夢也受到20點傷害。"
|
||||
'zh-tw': "這隻寶可夢也受到20點傷害。",
|
||||
th: "โปเกมอนนี้ก็จะได้รับแดเมจ 20 ด้วย"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ヒヒダルマ",
|
||||
'zh-tw': "達摩狒狒"
|
||||
'zh-tw': "達摩狒狒",
|
||||
th: "ฮิฮิดารุมะ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "血気 盛んな ポケモン。 太い 腕から 繰りだす パンチは ダンプカーも 粉々に するぞ。",
|
||||
'zh-tw': "總是熱血沸騰的寶可夢。 牠厚重的手臂使出的拳擊 甚至能把砂石車打得粉碎。"
|
||||
'zh-tw': "總是熱血沸騰的寶可夢。 牠厚重的手臂使出的拳擊 甚至能把砂石車打得粉碎。",
|
||||
th: "เป็นโปเกมอนที่มีพละกำลังเต็มเปี่ยม หมัดที่ปล่อยออกมาจากลำแขนท่อนใหญ่ แม้รถบรรทุกเทท้ายก็แหลกเป็นผุยผงได้"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,7 +30,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ころがりタックル",
|
||||
'zh-tw': "滾動衝撞"
|
||||
'zh-tw': "滾動衝撞",
|
||||
th: "กลิ้งโจมตี"
|
||||
},
|
||||
|
||||
damage: 60
|
||||
@@ -37,14 +40,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "もうかのとっしん",
|
||||
'zh-tw': "猛火猛撞"
|
||||
'zh-tw': "猛火猛撞",
|
||||
th: "ไฟลุกพุ่งเข้าใส่"
|
||||
},
|
||||
|
||||
damage: 210,
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンにも70ダメージ。",
|
||||
'zh-tw': "這隻寶可夢也受到70點傷害。"
|
||||
'zh-tw': "這隻寶可夢也受到70點傷害。",
|
||||
th: "โปเกมอนนี้ก็จะได้รับแดเมจ 70 ด้วย"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ヒトモシ",
|
||||
'zh-tw': "燭光靈"
|
||||
'zh-tw': "燭光靈",
|
||||
th: "ฮิโตโมชิ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "明かりを 灯して 道案内を するように 見せかけながら 生命力を 吸い取っている。",
|
||||
'zh-tw': "點亮頭上的燭火, 假裝在指引道路。 但其實是在吸取對方的生命力。"
|
||||
'zh-tw': "點亮頭上的燭火, 假裝在指引道路。 但其實是在吸取對方的生命力。",
|
||||
th: "จุดไฟให้แสงสว่างแล้วแสร้งทำเป็นคอยนำทางให้ผู้อื่น ระหว่างนั้นก็สูบพลังชีวิตของผู้คนเหล่านั้นไปด้วย"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,19 +30,22 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "なかまをよぶ",
|
||||
'zh-tw': "呼朋引伴"
|
||||
'zh-tw': "呼朋引伴",
|
||||
th: "เรียกเพื่อน"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "自分の山札からたねポケモンを1枚選び、ベンチに出す。そして山札を切る。",
|
||||
'zh-tw': "從自己的牌庫選擇1張【基礎】寶可夢卡,放置於備戰區。並且重洗牌庫。"
|
||||
'zh-tw': "從自己的牌庫選擇1張【基礎】寶可夢卡,放置於備戰區。並且重洗牌庫。",
|
||||
th: "เลือกการ์ดโปเกมอน[พื้นฐาน] 1 ใบจากสำรับการ์ดฝ่ายเรา วางบนเบนช์ แล้วสับสำรับการ์ด"
|
||||
}
|
||||
}, {
|
||||
cost: ["Fire", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "ひだね",
|
||||
'zh-tw': "火種"
|
||||
'zh-tw': "火種",
|
||||
th: "เชื้อไฟ"
|
||||
},
|
||||
|
||||
damage: 20
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ランプラー",
|
||||
'zh-tw': "燈火幽靈"
|
||||
'zh-tw': "燈火幽靈",
|
||||
th: "แลมพูลา"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "魂を 吸いとり 火を灯す。 人が 死ぬのを 待つため 病院を うろつくようになった。",
|
||||
'zh-tw': "吸取靈魂來點亮燈火。 為了等待人類死去, 而在醫院裡徘徊遊蕩。"
|
||||
'zh-tw': "吸取靈魂來點亮燈火。 為了等待人類死去, 而在醫院裡徘徊遊蕩。",
|
||||
th: "สูบวิญญาณแล้วนำมาจุดไฟ มักวนเวียนอยู่แถวโรงพยาบาลเพื่อรอให้มีคนเสียชีวิต"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,7 +30,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ひだね",
|
||||
'zh-tw': "火種"
|
||||
'zh-tw': "火種",
|
||||
th: "เชื้อไฟ"
|
||||
},
|
||||
|
||||
damage: 20
|
||||
@@ -37,14 +40,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "もえつくす",
|
||||
'zh-tw': "燃燒盡"
|
||||
'zh-tw': "燃燒盡",
|
||||
th: "เผาเกลี้ยง"
|
||||
},
|
||||
|
||||
damage: 60,
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンについているエネルギーを、すべてトラッシュする。",
|
||||
'zh-tw': "將這隻寶可夢身上附加的能量卡全部丟棄。"
|
||||
'zh-tw': "將這隻寶可夢身上附加的能量卡全部丟棄。",
|
||||
th: "ทิ้งพลังงานที่ติดอยู่กับโปเกมอนนี้ ทั้งหมดที่ตำแหน่งทิ้งการ์ด"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "シャンデラ",
|
||||
'zh-tw': "水晶燈火靈"
|
||||
'zh-tw': "水晶燈火靈",
|
||||
th: "แชนเดลา"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "魂を 吸い取って 燃やす。 腕の 炎を 揺らして 相手を 催眠状態に する。",
|
||||
'zh-tw': "會吸走並燃燒掉靈魂。 透過搖晃手臂的火焰 讓對手陷入催眠狀態。"
|
||||
'zh-tw': "會吸走並燃燒掉靈魂。 透過搖晃手臂的火焰 讓對手陷入催眠狀態。",
|
||||
th: "สูบวิญญาณและเผาให้มอดไหม้ สั่นเปลวเพลิงบนแขนเพื่อทำให้อีกฝ่ายตกอยู่ในสภาวะถูกสะกดจิต"
|
||||
},
|
||||
|
||||
stage: "Stage2",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "いざなうあかり",
|
||||
'zh-tw': "勸誘亮光"
|
||||
'zh-tw': "勸誘亮光",
|
||||
th: "แสงไฟล่อหลอก"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "自分の番に1回使える。おたがいのプレイヤーは、それぞれ山札を1枚引く。",
|
||||
'zh-tw': "在自己的回合時可使用1次。雙方玩家各從牌庫抽出1張卡。"
|
||||
'zh-tw': "在自己的回合時可使用1次。雙方玩家各從牌庫抽出1張卡。",
|
||||
th: "ใช้ได้ 1 ครั้งในเทิร์นฝ่ายเรา ผู้เล่นทั้งสองฝ่าย แต่ละฝ่ายจั่วการ์ด 1 ใบจากสำรับการ์ด"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,14 +46,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "マインドルーラー",
|
||||
'zh-tw': "意志統治者"
|
||||
'zh-tw': "意志統治者",
|
||||
th: "มายด์รูลเลอร์"
|
||||
},
|
||||
|
||||
damage: "30×",
|
||||
|
||||
effect: {
|
||||
ja: "相手の手札の枚数×30ダメージ。",
|
||||
'zh-tw': "造成對手的手牌的張數×30點傷害。"
|
||||
'zh-tw': "造成對手的手牌的張數×30點傷害。",
|
||||
th: "แดเมจจะเท่ากับจำนวนการ์ดบนมือฝ่ายตรงข้าม x30"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "オーガポン かまどのめんex",
|
||||
'zh-tw': "厄鬼椪 火灶面具ex"
|
||||
'zh-tw': "厄鬼椪 火灶面具ex",
|
||||
th: "โอการ์ปอง หน้ากากเตาไฟex"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -22,28 +23,32 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "いかりがま",
|
||||
'zh-tw': "憤怒之窯"
|
||||
'zh-tw': "憤怒之窯",
|
||||
th: "เตาไฟพิโรธ"
|
||||
},
|
||||
|
||||
damage: "20×",
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンにのっているダメカンの数×20ダメージ。",
|
||||
'zh-tw': "造成這隻寶可夢身上放置的傷害指示物的數量×20點傷害。"
|
||||
'zh-tw': "造成這隻寶可夢身上放置的傷害指示物的數量×20點傷害。",
|
||||
th: "แดเมจจะเท่ากับจำนวนตัวนับแดเมจที่วางอยู่บนโปเกมอนนี้ x20"
|
||||
}
|
||||
}, {
|
||||
cost: ["Fire", "Fire", "Fire"],
|
||||
|
||||
name: {
|
||||
ja: "ダイナミックブレイズ",
|
||||
'zh-tw': "極限火焰"
|
||||
'zh-tw': "極限火焰",
|
||||
th: "ไดนามิกเบลซ"
|
||||
},
|
||||
|
||||
damage: "140+",
|
||||
|
||||
effect: {
|
||||
ja: "相手のバトルポケモンが進化ポケモンなら、140ダメージ追加。その場合、このポケモンについているエネルギーを、すべてトラッシュする。",
|
||||
'zh-tw': "若對手的戰鬥寶可夢為進化寶可夢,則增加140點傷害。這個情況下,將這隻寶可夢身上附加的能量卡全部丟棄。"
|
||||
'zh-tw': "若對手的戰鬥寶可夢為進化寶可夢,則增加140點傷害。這個情況下,將這隻寶可夢身上附加的能量卡全部丟棄。",
|
||||
th: "ถ้าโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามเป็นโปเกมอนวิวัฒนาการ การโจมตีนี้จะเพิ่มแดเมจอีก 140 เมื่อทำเช่นนั้นแล้ว ทิ้งพลังงานที่ติดอยู่กับโปเกมอนนี้ ทั้งหมดที่ตำแหน่งทิ้งการ์ด"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ニョロモ",
|
||||
'zh-tw': "蚊香蝌蚪"
|
||||
'zh-tw': "蚊香蝌蚪",
|
||||
th: "เนียวโรโมะ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "まだ 脚が 生えた ばかりで うまく 歩けない。 水の中を 泳いでる ほうが 好きなようだ。",
|
||||
'zh-tw': "由於腳才剛長出來, 因此還不太擅長走路。 似乎更喜歡在水中游泳。"
|
||||
'zh-tw': "由於腳才剛長出來, 因此還不太擅長走路。 似乎更喜歡在水中游泳。",
|
||||
th: "ขาพึ่งงอกออกมาไม่นาน จึงยังเดินได้ไม่คล่อง ดูเหมือนจะชอบว่ายไปมาในน้ำมากกว่า"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,7 +30,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ふむ",
|
||||
'zh-tw': "踩"
|
||||
'zh-tw': "踩",
|
||||
th: "เหยียบ"
|
||||
},
|
||||
|
||||
damage: 10
|
||||
@@ -37,14 +40,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "しっぽビンタ",
|
||||
'zh-tw': "擺尾拍打"
|
||||
'zh-tw': "擺尾拍打",
|
||||
th: "ตบด้วยหาง"
|
||||
},
|
||||
|
||||
damage: "20×",
|
||||
|
||||
effect: {
|
||||
ja: "コインを2回投げ、オモテの数×20ダメージ。",
|
||||
'zh-tw': "擲2次硬幣,造成正面出現的次數×20點傷害。"
|
||||
'zh-tw': "擲2次硬幣,造成正面出現的次數×20點傷害。",
|
||||
th: "ทอยเหรียญ 2 ครั้ง แดเมจจะเท่ากับจำนวนครั้งที่ออกหัว x20"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ニョロゾ",
|
||||
'zh-tw': "蚊香君"
|
||||
'zh-tw': "蚊香君",
|
||||
th: "เนียวโรโซ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "全身の 皮膚は 湿っているが お腹の 渦巻きの 部分の 感触は すべすべとしている。",
|
||||
'zh-tw': "全身的皮膚都濕答答的, 但肚子上的漩渦部分 摸起來很光滑。"
|
||||
'zh-tw': "全身的皮膚都濕答答的, 但肚子上的漩渦部分 摸起來很光滑。",
|
||||
th: "ผิวทั่วร่างชุ่มชื้น แต่ส่วนที่ขดเป็นวงตรงท้องนั้นมีผิวสัมผัสที่นุ่มลื่น"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,26 +30,30 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "さいみんじゅつ",
|
||||
'zh-tw': "催眠術"
|
||||
'zh-tw': "催眠術",
|
||||
th: "สะกดจิต"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "相手のバトルポケモンをねむりにする。",
|
||||
'zh-tw': "將對手的戰鬥寶可夢【睡眠】。"
|
||||
'zh-tw': "將對手的戰鬥寶可夢【睡眠】。",
|
||||
th: "ทำให้โปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามเป็นสภาวะ[หลับ]"
|
||||
}
|
||||
}, {
|
||||
cost: ["Colorless", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "おうふくビンタ",
|
||||
'zh-tw': "連環巴掌"
|
||||
'zh-tw': "連環巴掌",
|
||||
th: "ตบเรียกสติ"
|
||||
},
|
||||
|
||||
damage: "30×",
|
||||
|
||||
effect: {
|
||||
ja: "コインを2回投げ、オモテの数×30ダメージ。",
|
||||
'zh-tw': "擲2次硬幣,造成正面出現的次數×30點傷害。"
|
||||
'zh-tw': "擲2次硬幣,造成正面出現的次數×30點傷害。",
|
||||
th: "ทอยเหรียญ 2 ครั้ง แดเมจจะเท่ากับจำนวนครั้งที่ออกหัว x30"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ニョロボン",
|
||||
'zh-tw': "蚊香泳士"
|
||||
'zh-tw': "蚊香泳士",
|
||||
th: "เนียวโรบอน"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "発達した 手足を 使って ほんの 一瞬だけなら 水の上を 走ることができる。",
|
||||
'zh-tw': "如果只是一瞬間的話, 牠能夠用肌肉發達的 四肢在水上奔跑。"
|
||||
'zh-tw': "如果只是一瞬間的話, 牠能夠用肌肉發達的 四肢在水上奔跑。",
|
||||
th: "สามารถวิ่งเหนือน้ำได้ชั่วครู่ด้วยแขนและขาที่พัฒนาขึ้นมา"
|
||||
},
|
||||
|
||||
stage: "Stage2",
|
||||
@@ -28,26 +30,30 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "さいみんじゅつ",
|
||||
'zh-tw': "催眠術"
|
||||
'zh-tw': "催眠術",
|
||||
th: "สะกดจิต"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "相手のバトルポケモンをねむりにする。",
|
||||
'zh-tw': "將對手的戰鬥寶可夢【睡眠】。"
|
||||
'zh-tw': "將對手的戰鬥寶可夢【睡眠】。",
|
||||
th: "ทำให้โปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามเป็นสภาวะ[หลับ]"
|
||||
}
|
||||
}, {
|
||||
cost: ["Colorless", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "ジャンピングアッパー",
|
||||
'zh-tw': "跳躍衝天"
|
||||
'zh-tw': "跳躍衝天",
|
||||
th: "กระโดดอัดเสย"
|
||||
},
|
||||
|
||||
damage: "120+",
|
||||
|
||||
effect: {
|
||||
ja: "のぞむなら、120ダメージ追加。その場合、このポケモンと、ついているすべてのカードを、自分の山札にもどして切る。",
|
||||
'zh-tw': "若希望,增加120點傷害。這個情況下,將這隻寶可夢與附加的卡,全部放回自己的牌庫並重洗。"
|
||||
'zh-tw': "若希望,增加120點傷害。這個情況下,將這隻寶可夢與附加的卡,全部放回自己的牌庫並重洗。",
|
||||
th: "หากต้องการ การโจมตีนี้จะเพิ่มแดเมจอีก 120 เมื่อทำเช่นนั้นแล้ว นำการ์ดโปเกมอนนี้ และการ์ดทั้งหมดที่ติดอยู่ ใส่กลับไปในสำรับการ์ดฝ่ายเราแล้วสับ"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "トサキント",
|
||||
'zh-tw': "角金魚"
|
||||
'zh-tw': "角金魚",
|
||||
th: "โทซาคินโตะ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "背びれ 胸びれ 尾びれが 優雅に たなびくので 水の踊り子 と呼ばれる。",
|
||||
'zh-tw': "會優雅地搖擺 背鰭、胸鰭和尾鰭, 所以被稱為水中的舞者。"
|
||||
'zh-tw': "會優雅地搖擺 背鰭、胸鰭和尾鰭, 所以被稱為水中的舞者。",
|
||||
th: "ครีบหลัง ครีบอก ครีบหางโบกสะบัดอย่างงดงามจนถูกเรียกว่านักระบำแห่งท้องน้ำ"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "おまつりおんど",
|
||||
'zh-tw': "祭典樂舞"
|
||||
'zh-tw': "祭典樂舞",
|
||||
th: "รำวงงานเทศกาล"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "場に「お祭り会場」が出ているなら、このポケモンは、持っているワザを2回連続で使える。(1回目のワザで相手のバトルポケモンがきぜつしたなら、次のバトルポケモンが出たあと、2回目のワザを使う。)",
|
||||
'zh-tw': "若場上有「祭典會場」,則這隻寶可夢可使用持有的招式2次。(若對手的戰鬥寶可夢因第1次的招式而【昏厥】了,則在下一隻寶可夢放置後,使用第2次的招式。)"
|
||||
'zh-tw': "若場上有「祭典會場」,則這隻寶可夢可使用持有的招式2次。(若對手的戰鬥寶可夢因第1次的招式而【昏厥】了,則在下一隻寶可夢放置後,使用第2次的招式。)",
|
||||
th: "ถ้ามี [สถานที่จัดเทศกาล] อยู่บนกระดาน โปเกมอนนี้ จะใช้ท่าต่อสู้ที่มีต่อเนื่องกันได้ 2 ครั้ง (ถ้าโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้าม[หมดสภาพ]ด้วยท่าต่อสู้ครั้งที่ 1 หลังจากที่โปเกมอนบนตำแหน่งต่อสู้ตัวถัดไปออกมา ให้ใช้ท่าต่อสู้ครั้งที่ 2)"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,14 +46,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "うずしお",
|
||||
'zh-tw': "潮旋"
|
||||
'zh-tw': "潮旋",
|
||||
th: "น้ำวน"
|
||||
},
|
||||
|
||||
damage: 10,
|
||||
|
||||
effect: {
|
||||
ja: "コインを1回投げオモテなら、相手のバトルポケモンについているエネルギーを1個選び、トラッシュする。",
|
||||
'zh-tw': "擲1次硬幣若為正面,則選擇1個對手的戰鬥寶可夢身上附加的能量,將其丟棄。"
|
||||
'zh-tw': "擲1次硬幣若為正面,則選擇1個對手的戰鬥寶可夢身上附加的能量,將其丟棄。",
|
||||
th: "ทอยเหรียญ 1 ครั้งถ้าออกหัว เลือกพลังงานที่ติดอยู่กับโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้าม 1 ลูก ทิ้งที่ตำแหน่งทิ้งการ์ด"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "アズマオウ",
|
||||
'zh-tw': "金魚王"
|
||||
'zh-tw': "金魚王",
|
||||
th: "อซึมาโอ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "秋になると プロポーズのため 体に 脂が のってきて とても きれいな色に 変化する。",
|
||||
'zh-tw': "到了秋天,體內的脂肪 會因為要求偶而增加, 體色也會變得非常漂亮。"
|
||||
'zh-tw': "到了秋天,體內的脂肪 會因為要求偶而增加, 體色也會變得非常漂亮。",
|
||||
th: "เมื่อเข้าสู่ฤดูใบไม้ร่วง ร่างกายจะมีไขมันออกมาตามตัวและเปลี่ยนเป็นสีที่สวยงามมาก เพื่อรอผสมพันธุ์"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,21 +30,24 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "つつきおとす",
|
||||
'zh-tw': "啄落"
|
||||
'zh-tw': "啄落",
|
||||
th: "จิกลงมา"
|
||||
},
|
||||
|
||||
damage: 50,
|
||||
|
||||
effect: {
|
||||
ja: "ダメージを与える前に、相手のバトルポケモンについている「ポケモンのどうぐ」をトラッシュする。",
|
||||
'zh-tw': "在造成傷害前,將對手的戰鬥寶可夢身上附加的「寶可夢道具」卡丟棄。"
|
||||
'zh-tw': "在造成傷害前,將對手的戰鬥寶可夢身上附加的「寶可夢道具」卡丟棄。",
|
||||
th: "ก่อนจะทำแดเมจ ทิ้ง [ไอเท็มติดโปเกมอน] ที่ติดอยู่กับโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามที่ตำแหน่งทิ้งการ์ด"
|
||||
}
|
||||
}, {
|
||||
cost: ["Colorless", "Colorless", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "つのドリル",
|
||||
'zh-tw': "角鑽"
|
||||
'zh-tw': "角鑽",
|
||||
th: "เขาสว่าน"
|
||||
},
|
||||
|
||||
damage: 90
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ルージュラ",
|
||||
'zh-tw': "迷唇姐"
|
||||
'zh-tw': "迷唇姐",
|
||||
th: "รูจูลา"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "ガラルの とある 地域では 氷の 女王と 呼んで ルージュラを 恐れ崇めていた。",
|
||||
'zh-tw': "在伽勒爾的某個地區, 人們稱迷唇姐為冰之女王, 並且敬畏崇拜牠。"
|
||||
'zh-tw': "在伽勒爾的某個地區, 人們稱迷唇姐為冰之女王, 並且敬畏崇拜牠。",
|
||||
th: "ณ ดินแดนแห่งหนึ่งในกาลาร์ เคยยำเกรงต่อรูจูลาและเรียกเธอว่าราชินีน้ำแข็ง"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,19 +30,22 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "おさそいキッス",
|
||||
'zh-tw': "邀請之吻"
|
||||
'zh-tw': "邀請之吻",
|
||||
th: "จูบชักชวน"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "自分の山札からたねポケモンを1枚選び、ベンチに出す。そして山札を切る。その後、このポケモンについているエネルギーを1個選び、新しく出したポケモンにつけ替える。",
|
||||
'zh-tw': "從自己的牌庫選擇1張【基礎】寶可夢卡,放置於備戰區。並且重洗牌庫。然後,選擇1個這隻寶可夢身上附加的能量,改附於新上場的寶可夢身上。"
|
||||
'zh-tw': "從自己的牌庫選擇1張【基礎】寶可夢卡,放置於備戰區。並且重洗牌庫。然後,選擇1個這隻寶可夢身上附加的能量,改附於新上場的寶可夢身上。",
|
||||
th: "เลือกการ์ดโปเกมอน[พื้นฐาน] 1 ใบจากสำรับการ์ดฝ่ายเรา วางบนเบนช์ แล้วสับสำรับการ์ด หลังจากนั้น เลือกพลังงานที่ติดอยู่กับโปเกมอนนี้ 1 ลูก ย้ายไปติดกับโปเกมอนที่เพิ่งออกมาใหม่"
|
||||
}
|
||||
}, {
|
||||
cost: ["Water"],
|
||||
|
||||
name: {
|
||||
ja: "スノーアイス",
|
||||
'zh-tw': "雪花冰"
|
||||
'zh-tw': "雪花冰",
|
||||
th: "สโนว์ไอซ์"
|
||||
},
|
||||
|
||||
damage: 30
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ヒンバス",
|
||||
'zh-tw': "醜醜魚"
|
||||
'zh-tw': "醜醜魚",
|
||||
th: "ฮินบาส"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "一番 みすぼらしい ポケモン。 水草の 多い 川底で 大勢 集まって 暮らしている。",
|
||||
'zh-tw': "最寒酸的寶可夢。 在有許多水草的河底 群聚而居。"
|
||||
'zh-tw': "最寒酸的寶可夢。 在有許多水草的河底 群聚而居。",
|
||||
th: "โปเกมอนที่ดูโทรมที่สุด อาศัยอยู่กันเป็นฝูงที่ก้นแม่น้ำที่มีพืชน้ำมากมาย"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "じたばた",
|
||||
'zh-tw': "抓狂"
|
||||
'zh-tw': "抓狂",
|
||||
th: "กระเสือกกระสน"
|
||||
},
|
||||
|
||||
damage: "10×",
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンにのっているダメカンの数×10ダメージ。",
|
||||
'zh-tw': "造成這隻寶可夢身上放置的傷害指示物的數量×10點傷害。"
|
||||
'zh-tw': "造成這隻寶可夢身上放置的傷害指示物的數量×10點傷害。",
|
||||
th: "แดเมจจะเท่ากับจำนวนตัวนับแดเมจที่วางอยู่บนโปเกมอนนี้ x10"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ミロカロス",
|
||||
'zh-tw': "美納斯"
|
||||
'zh-tw': "美納斯",
|
||||
th: "มิโลคารอส"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "澄んだ 湖の 底に 棲む。 戦争が 起こるとき 現れ 人々の 心を いやす。",
|
||||
'zh-tw': "棲息在清澈的湖底。 在發生戰爭時出現, 治癒人們的心。"
|
||||
'zh-tw': "棲息在清澈的湖底。 在發生戰爭時出現, 治癒人們的心。",
|
||||
th: "อาศัยอยู่ก้นทะเลสาบที่ใสสะอาด จะปรากฏตัวเมื่อเกิดสงครามเพื่อเยียวยาจิตใจของผู้คน"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "なぎのきょうち",
|
||||
'zh-tw': "平穩境地"
|
||||
'zh-tw': "平穩境地",
|
||||
th: "สภาวะสงบนิ่ง"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンがいるかぎり、相手の場のポケモンと、そのポケモンについているすべてのカードは、手札にもどせない。",
|
||||
'zh-tw': "只要這隻寶可夢在場上,對手的場上寶可夢與那隻寶可夢身上附加的卡,全部無法放回手牌。"
|
||||
'zh-tw': "只要這隻寶可夢在場上,對手的場上寶可夢與那隻寶可夢身上附加的卡,全部無法放回手牌。",
|
||||
th: "ตราบใดที่โปเกมอนนี้ยังอยู่ โปเกมอนบนกระดานฝ่ายตรงข้าม และการ์ดทั้งหมดที่ติดอยู่กับโปเกมอนนั้น จะนำกลับขึ้นมือไม่ได้"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,7 +46,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ハイドロスプラッシュ",
|
||||
'zh-tw': "水炮濺射"
|
||||
'zh-tw': "水炮濺射",
|
||||
th: "ไฮโดรสแปลช"
|
||||
},
|
||||
|
||||
damage: 100
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ユキワラシ",
|
||||
'zh-tw': "雪童子"
|
||||
'zh-tw': "雪童子",
|
||||
th: "ยูกิวาราชิ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "ユキワラシが 訪れた 家は お金持ちに なると 言われている。 マイナス 100度でも へっちゃら。",
|
||||
'zh-tw': "據說雪童子到訪過的家 將會變得富有。對牠來說 零下100度根本不算什麼。"
|
||||
'zh-tw': "據說雪童子到訪過的家 將會變得富有。對牠來說 零下100度根本不算什麼。",
|
||||
th: "ว่ากันว่าบ้านที่ยูกิวาราชิมาเยือนจะมั่งคั่ง แม้จะอยู่ในที่ที่อากาศติดลบ 100 องศาเซลเซียสก็ยังสบาย ๆ"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "おどろかす",
|
||||
'zh-tw': "驚嚇"
|
||||
'zh-tw': "驚嚇",
|
||||
th: "ทำให้ตกใจ"
|
||||
},
|
||||
|
||||
damage: 20,
|
||||
|
||||
effect: {
|
||||
ja: "相手の手札からオモテを見ないで1枚選び、そのカードのオモテを見て、相手の山札にもどして切る。",
|
||||
'zh-tw': "在不看正面的情況下,從對手的手牌選擇1張,查看那張卡的正面後放回對手的牌庫並重洗。"
|
||||
'zh-tw': "在不看正面的情況下,從對手的手牌選擇1張,查看那張卡的正面後放回對手的牌庫並重洗。",
|
||||
th: "เลือกการ์ด 1 ใบจากบนมือฝ่ายตรงข้ามโดยไม่ดูหน้าการ์ด หลังจากดูหน้าการ์ดนั้นแล้ว ใส่กลับไปในสำรับการ์ดฝ่ายตรงข้ามแล้วสับ"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "オニゴーリ",
|
||||
'zh-tw': "冰鬼護"
|
||||
'zh-tw': "冰鬼護",
|
||||
th: "โอนิโกริ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "空気中の 水分を 一瞬で 凍らせることで 獲物が 逃げられないように する。",
|
||||
'zh-tw': "會透過瞬間凍結 空氣中的水分, 使獵物無法逃脫。"
|
||||
'zh-tw': "會透過瞬間凍結 空氣中的水分, 使獵物無法逃脫。",
|
||||
th: "ทำให้เหยื่อไม่สามารถหนีได้โดยการแช่แข็งน้ำในอากาศในชั่วพริบตา"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,28 +30,32 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ダメージビート",
|
||||
'zh-tw': "傷害律動"
|
||||
'zh-tw': "傷害律動",
|
||||
th: "แดเมจบีต"
|
||||
},
|
||||
|
||||
damage: "20×",
|
||||
|
||||
effect: {
|
||||
ja: "相手のバトルポケモンにのっているダメカンの数×20ダメージ。",
|
||||
'zh-tw': "造成對手的戰鬥寶可夢身上放置的傷害指示物的數量×20點傷害。"
|
||||
'zh-tw': "造成對手的戰鬥寶可夢身上放置的傷害指示物的數量×20點傷害。",
|
||||
th: "แดเมจจะเท่ากับจำนวนตัวนับแดเมจที่วางอยู่บนโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้าม x20"
|
||||
}
|
||||
}, {
|
||||
cost: ["Water", "Colorless", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "クレイジーヘッズ",
|
||||
'zh-tw': "瘋狂頭"
|
||||
'zh-tw': "瘋狂頭",
|
||||
th: "เครซีเฮด"
|
||||
},
|
||||
|
||||
damage: 140,
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンについているエネルギーを1個選び、トラッシュする。",
|
||||
'zh-tw': "選擇1個這隻寶可夢身上附加的能量,將其丟棄。"
|
||||
'zh-tw': "選擇1個這隻寶可夢身上附加的能量,將其丟棄。",
|
||||
th: "เลือกพลังงานที่ติดอยู่กับโปเกมอนนี้ 1 ลูก ทิ้งที่ตำแหน่งทิ้งการ์ด"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ユキメノコ",
|
||||
'zh-tw': "雪妖女"
|
||||
'zh-tw': "雪妖女",
|
||||
th: "ยูกิเมโนโกะ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "マイナス50度の 息を 吹きかけ 凍らせた 獲物を 秘密の 場所に 飾っていると 言われる。",
|
||||
'zh-tw': "據說會吐出零下50度的 氣息凍結獵物,然後帶到 秘密的地方裝飾起來。"
|
||||
'zh-tw': "據說會吐出零下50度的 氣息凍結獵物,然後帶到 秘密的地方裝飾起來。",
|
||||
th: "ว่ากันว่าเอาเหยื่อที่แช่แข็งด้วยการเป่าไอเย็นติดลบ 50 องศาเซลเซียสใส่ไปวางตกแต่งในสถานที่ลับ"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "いてつくとばり",
|
||||
'zh-tw': "冰冷之帳"
|
||||
'zh-tw': "冰冷之帳",
|
||||
th: "ฉากกั้นแช่แข็ง"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンがいるかぎり、ポケモンチェックのたび、おたがいの特性を持つポケモン(「ユキメノコ」をのぞく)全員に、それぞれダメカンを1個のせる。",
|
||||
'zh-tw': "只要這隻寶可夢在場上,每次寶可夢檢查時,在雙方的擁有特性的所有寶可夢(「雪妖女」除外)身上各放置1個傷害指示物。"
|
||||
'zh-tw': "只要這隻寶可夢在場上,每次寶可夢檢查時,在雙方的擁有特性的所有寶可夢(「雪妖女」除外)身上各放置1個傷害指示物。",
|
||||
th: "ตราบใดที่โปเกมอนนี้ยังอยู่ ทุกครั้งที่ตรวจสอบโปเกมอน ให้วางตัวนับแดเมจบนโปเกมอนที่มีความสามารถของทั้งสองฝ่ายทุกตัว (ยกเว้น [ยูกิเมโนโกะ]) ตัวละ 1 ตัว"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,7 +46,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "フロストスマッシュ",
|
||||
'zh-tw': "冰霜粉碎"
|
||||
'zh-tw': "冰霜粉碎",
|
||||
th: "ฟรอสต์สแมช"
|
||||
},
|
||||
|
||||
damage: 60
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ナミイルカ",
|
||||
'zh-tw': "波普海豚"
|
||||
'zh-tw': "波普海豚",
|
||||
th: "นามิอิรุกะ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "水のリングは 頭の 穴から 出る 粘着液と 海の水を 混ぜて 作り出したものなのだ。",
|
||||
'zh-tw': "牠的水環是頭部的洞 冒出來的黏膠與海水 混合後製造出來的。"
|
||||
'zh-tw': "牠的水環是頭部的洞 冒出來的黏膠與海水 混合後製造出來的。",
|
||||
th: "วงแหวนน้ำถูกสร้างขึ้นมาจากการผสมกันของของเหลวเหนียวหนืดที่ออกมาจากรูที่หัวและน้ำทะเล"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "アクアスラッシュ",
|
||||
'zh-tw': "水流斬"
|
||||
'zh-tw': "水流斬",
|
||||
th: "อควาสแลช"
|
||||
},
|
||||
|
||||
damage: 30,
|
||||
|
||||
effect: {
|
||||
ja: "次の自分の番、このポケモンはワザが使えない。",
|
||||
'zh-tw': "在下個自己的回合,這隻寶可夢無法使用招式。"
|
||||
'zh-tw': "在下個自己的回合,這隻寶可夢無法使用招式。",
|
||||
th: "เทิร์นถัดไปของฝ่ายเรา โปเกมอนนี้จะใช้ท่าต่อสู้ไม่ได้"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "イルカマン",
|
||||
'zh-tw': "海豚俠"
|
||||
'zh-tw': "海豚俠",
|
||||
th: "อิรุกะแมน"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "身体能力は ナミイルカと 変わらないが 仲間の ピンチには 変身して パワーアップするぞ。",
|
||||
'zh-tw': "體能與波普海豚不相上下, 但一旦夥伴陷入了危機, 就會變身來提高自己的力量。"
|
||||
'zh-tw': "體能與波普海豚不相上下, 但一旦夥伴陷入了危機, 就會變身來提高自己的力量。",
|
||||
th: "ความสามารถทางกายภาพนั้นไม่ต่างจากนามิอิรุกะ แต่เมื่อเพื่อนพ้องตกอยู่ในอันตรายจะแปลงร่างและแข็งแกร่งขึ้น"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "マイティチェンジ",
|
||||
'zh-tw': "全能變身"
|
||||
'zh-tw': "全能變身",
|
||||
th: "แปลงร่างขั้นสุดยอด"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "自分の番に、このポケモンがバトル場からベンチにもどったとき、1回使える。自分の山札から「イルカマンex」を1枚選び、このカードと入れ替える(ついているカード・ダメカン・特殊状態・効果などは、すべて引きつぐ)。入れ替えたなら、このカードは山札にもどす。そして山札を切る。",
|
||||
'zh-tw': "在自己的回合,這隻寶可夢從戰鬥場回到備戰區時,可使用1次。從自己的牌庫選擇1張「海豚俠【ex】」,與這張卡互換(所附加的卡・傷害指示物・特殊狀態・效果等全部保留)。若互換了,則這張卡放回牌庫。並且重洗牌庫。"
|
||||
'zh-tw': "在自己的回合,這隻寶可夢從戰鬥場回到備戰區時,可使用1次。從自己的牌庫選擇1張「海豚俠【ex】」,與這張卡互換(所附加的卡・傷害指示物・特殊狀態・效果等全部保留)。若互換了,則這張卡放回牌庫。並且重洗牌庫。",
|
||||
th: "ในเทิร์นฝ่ายเรา เมื่อโปเกมอนนี้ออกจากตำแหน่งต่อสู้กลับมาบนเบนช์ ใช้ได้ 1 ครั้ง เลือกการ์ด [อิรุกะแมน【ex】] 1 ใบจากสำรับการ์ดฝ่ายเรา สลับกับการ์ดนี้ (การ์ดที่ติดอยู่ ตัวนับแดเมจ สภาวะผิดปกติ เอฟเฟกต์ทั้งหมดยังคงอยู่ต่อไป) ถ้าสลับแล้ว นำการ์ดนี้ใส่กลับไปในสำรับการ์ด แล้วสับสำรับการ์ด"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,7 +46,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "スプラッシュ",
|
||||
'zh-tw': "飛濺"
|
||||
'zh-tw': "飛濺",
|
||||
th: "สแปลช"
|
||||
},
|
||||
|
||||
damage: 30
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "イルカマンex",
|
||||
'zh-tw': "海豚俠ex"
|
||||
'zh-tw': "海豚俠ex",
|
||||
th: "อิรุกะแมนex"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -22,12 +23,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "マイティソウル",
|
||||
'zh-tw': "全能靈魂"
|
||||
'zh-tw': "全能靈魂",
|
||||
th: "ไมตี้โซล"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "このカードは、「イルカマン」の特性「マイティチェンジ」の効果によってしか場に出せない。",
|
||||
'zh-tw': "這張卡只可依據「海豚俠」的特性「全能變身」的效果放置於場上。"
|
||||
'zh-tw': "這張卡只可依據「海豚俠」的特性「全能變身」的效果放置於場上。",
|
||||
th: "การ์ดนี้ สามารถวางบนกระดานได้ด้วยเอฟเฟกต์ของความสามารถ [แปลงร่างขั้นสุดยอด] ของ [อิรุกะแมน] เท่านั้น"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -36,14 +39,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ギガインパクト",
|
||||
'zh-tw': "終極衝擊"
|
||||
'zh-tw': "終極衝擊",
|
||||
th: "กิก้าอิมแพกต์"
|
||||
},
|
||||
|
||||
damage: 250,
|
||||
|
||||
effect: {
|
||||
ja: "次の自分の番、このポケモンはワザが使えない。",
|
||||
'zh-tw': "在下個自己的回合,這隻寶可夢無法使用招式。"
|
||||
'zh-tw': "在下個自己的回合,這隻寶可夢無法使用招式。",
|
||||
th: "เทิร์นถัดไปของฝ่ายเรา โปเกมอนนี้จะใช้ท่าต่อสู้ไม่ได้"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "テツノツツミ",
|
||||
'zh-tw': "鐵包袱"
|
||||
'zh-tw': "鐵包袱",
|
||||
th: "ถุงเหล็ก"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "古い 書物に 登場する 謎の 物体に 似た ポケモン。 目撃例は 過去 2件のみ。",
|
||||
'zh-tw': "與古書裡記載的神秘物體 長得很相像的寶可夢。 過去只被目擊過2次。"
|
||||
'zh-tw': "與古書裡記載的神秘物體 長得很相像的寶可夢。 過去只被目擊過2次。",
|
||||
th: "โปเกมอนที่มีความคล้ายคลึงกับวัตถุลึกลับที่ปรากฏในบันทึกเก่าแก่ ในอดีตมีข้อมูลว่ามีผู้พบเห็นเพียง 2 ครั้งเท่านั้น"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "インタージェット",
|
||||
'zh-tw': "內部噴射"
|
||||
'zh-tw': "內部噴射",
|
||||
th: "อินเทอร์เจ็ต"
|
||||
},
|
||||
|
||||
damage: 60,
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンをベンチポケモンと入れ替える。その後、相手は相手自身のバトルポケモンをベンチポケモンと入れ替える。",
|
||||
'zh-tw': "將這隻寶可夢與備戰寶可夢互換。然後,對手將對手自己的戰鬥寶可夢與備戰寶可夢互換。"
|
||||
'zh-tw': "將這隻寶可夢與備戰寶可夢互換。然後,對手將對手自己的戰鬥寶可夢與備戰寶可夢互換。",
|
||||
th: "สลับโปเกมอนนี้กับโปเกมอนบนเบนช์ หลังจากนั้น ฝ่ายตรงข้ามสลับโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามเองกับโปเกมอนบนเบนช์"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "オーガポン いどのめんex",
|
||||
'zh-tw': "厄鬼椪 水井面具ex"
|
||||
'zh-tw': "厄鬼椪 水井面具ex",
|
||||
th: "โอการ์ปอง หน้ากากบ่อน้ำex"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -22,28 +23,32 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "すすりなく",
|
||||
'zh-tw': "啜泣"
|
||||
'zh-tw': "啜泣",
|
||||
th: "สะอึกสะอื้น"
|
||||
},
|
||||
|
||||
damage: 20,
|
||||
|
||||
effect: {
|
||||
ja: "次の相手の番、このワザを受けたポケモンは、にげられない。",
|
||||
'zh-tw': "在下個對手的回合,受到這個招式的寶可夢無法撤退。"
|
||||
'zh-tw': "在下個對手的回合,受到這個招式的寶可夢無法撤退。",
|
||||
th: "เทิร์นถัดไปของฝ่ายตรงข้าม โปเกมอนที่ได้รับท่าต่อสู้นี้ จะหนีไม่ได้"
|
||||
}
|
||||
}, {
|
||||
cost: ["Water", "Colorless", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "げきりゅうポンプ",
|
||||
'zh-tw': "激流水泵"
|
||||
'zh-tw': "激流水泵",
|
||||
th: "ปั๊มพ์น้ำเชี่ยว"
|
||||
},
|
||||
|
||||
damage: 100,
|
||||
|
||||
effect: {
|
||||
ja: "のぞむなら、このポケモンについているエネルギーを3個選び、山札にもどして切る。その場合、相手のベンチポケモン1匹にも、120ダメージ。[ベンチは弱点・抵抗力を計算しない。]",
|
||||
'zh-tw': "若希望,選擇3個這隻寶可夢身上附加的能量,放回牌庫並重洗。這個情況下,對手的1隻備戰寶可夢也受到120點傷害。[在備戰區不計算弱點・抵抗力。]"
|
||||
'zh-tw': "若希望,選擇3個這隻寶可夢身上附加的能量,放回牌庫並重洗。這個情況下,對手的1隻備戰寶可夢也受到120點傷害。[在備戰區不計算弱點・抵抗力。]",
|
||||
th: "หากต้องการ เลือกพลังงานที่ติดอยู่กับโปเกมอนนี้ 3 ลูก ใส่กลับไปในสำรับการ์ดแล้วสับ เมื่อทำเช่นนั้นแล้ว โปเกมอนบนเบนช์ฝ่ายตรงข้าม 1 ตัว ก็จะได้รับแดเมจ 120 ด้วย {โปเกมอนบนเบนช์จะไม่นำจุดอ่อนและความต้านทานมาคิด}"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "コリンク",
|
||||
'zh-tw': "小貓怪"
|
||||
'zh-tw': "小貓怪",
|
||||
th: "โคลิงก์"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "筋肉が 伸び縮み することで 電気が 発生。 ピンチになると 体毛が まぶしく 光る。",
|
||||
'zh-tw': "只要伸縮肌肉就能夠 產生電流。身陷危機時 體毛會發出刺眼的亮光。"
|
||||
'zh-tw': "只要伸縮肌肉就能夠 產生電流。身陷危機時 體毛會發出刺眼的亮光。",
|
||||
th: "สร้างไฟฟ้าโดยการยืดและหดตัวของกล้ามเนื้อ พอเข้าตาจน ขนทั่วตัวจะเปล่งแสงแสบตา"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,19 +30,22 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "こうきしん",
|
||||
'zh-tw': "好奇心"
|
||||
'zh-tw': "好奇心",
|
||||
th: "อยากรู้อยากเห็น"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "相手の手札を見る。",
|
||||
'zh-tw': "查看對手的手牌。"
|
||||
'zh-tw': "查看對手的手牌。",
|
||||
th: "ดูการ์ดบนมือฝ่ายตรงข้าม"
|
||||
}
|
||||
}, {
|
||||
cost: ["Lightning", "Lightning"],
|
||||
|
||||
name: {
|
||||
ja: "バチバチ",
|
||||
'zh-tw': "劈哩啪啦"
|
||||
'zh-tw': "劈哩啪啦",
|
||||
th: "ประกายไฟ"
|
||||
},
|
||||
|
||||
damage: 30
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ルクシオ",
|
||||
'zh-tw': "勒克貓"
|
||||
'zh-tw': "勒克貓",
|
||||
th: "ลุคซิโอ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "仲間と 尻尾を つなげると より 強力な 電撃を ツメから 出すことが できる。",
|
||||
'zh-tw': "只要與夥伴的尾巴互相 串聯,就能將更加強大 的電擊從爪子釋放出去。"
|
||||
'zh-tw': "只要與夥伴的尾巴互相 串聯,就能將更加強大 的電擊從爪子釋放出去。",
|
||||
th: "สามารถปล่อยไฟฟ้าที่ทรงพลังกว่าปกติจากกรงเล็บได้โดยการพันหางตัวเองกับเพื่อนพ้อง"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "かじりつく",
|
||||
'zh-tw': "咬緊"
|
||||
'zh-tw': "咬緊",
|
||||
th: "กัด"
|
||||
},
|
||||
|
||||
damage: 60,
|
||||
|
||||
effect: {
|
||||
ja: "次の相手の番、このワザを受けたポケモンは、にげられない。",
|
||||
'zh-tw': "在下個對手的回合,受到這個招式的寶可夢無法撤退。"
|
||||
'zh-tw': "在下個對手的回合,受到這個招式的寶可夢無法撤退。",
|
||||
th: "เทิร์นถัดไปของฝ่ายตรงข้าม โปเกมอนที่ได้รับท่าต่อสู้นี้ จะหนีไม่ได้"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "レントラーex",
|
||||
'zh-tw': "倫琴貓ex"
|
||||
'zh-tw': "倫琴貓ex",
|
||||
th: "เร็นโทราex"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -22,28 +23,32 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "つきさすがんこう",
|
||||
'zh-tw': "突刺目光"
|
||||
'zh-tw': "突刺目光",
|
||||
th: "ตาประกายทิ่มแทง"
|
||||
},
|
||||
|
||||
damage: 120,
|
||||
|
||||
effect: {
|
||||
ja: "相手の手札を見て、その中からカードを1枚選び、トラッシュする。",
|
||||
'zh-tw': "查看對手的手牌,從其中選擇1張卡,將其丟棄。"
|
||||
'zh-tw': "查看對手的手牌,從其中選擇1張卡,將其丟棄。",
|
||||
th: "ดูการ์ดบนมือฝ่ายตรงข้าม เลือกการ์ด 1 ใบจากในนั้น ทิ้งที่ตำแหน่งทิ้งการ์ด"
|
||||
}
|
||||
}, {
|
||||
cost: ["Lightning", "Lightning"],
|
||||
|
||||
name: {
|
||||
ja: "ボルトストライク",
|
||||
'zh-tw': "伏特強襲"
|
||||
'zh-tw': "伏特強襲",
|
||||
th: "โวลต์สไตรค์"
|
||||
},
|
||||
|
||||
damage: 250,
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンについているエネルギーを、すべてトラッシュする。",
|
||||
'zh-tw': "將這隻寶可夢身上附加的能量卡全部丟棄。"
|
||||
'zh-tw': "將這隻寶可夢身上附加的能量卡全部丟棄。",
|
||||
th: "ทิ้งพลังงานที่ติดอยู่กับโปเกมอนนี้ ทั้งหมดที่ตำแหน่งทิ้งการ์ด"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "エモンガ",
|
||||
'zh-tw': "電飛鼠"
|
||||
'zh-tw': "電飛鼠",
|
||||
th: "เอมอนกา"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "電気を ほとばしらせながら 空を 舞うように 飛ぶ。 可愛いが やっかいなのだ。",
|
||||
'zh-tw': "會一邊放電一邊像是 在空中跳舞般地飛行。 雖然可愛,但很難纏。"
|
||||
'zh-tw': "會一邊放電一邊像是 在空中跳舞般地飛行。 雖然可愛,但很難纏。",
|
||||
th: "บินราวกับร่ายรำอยู่บนท้องฟ้าพลางปล่อยไฟฟ้าพุ่งทะลักออกมาด้วย ถึงแม้ว่าจะน่ารักแต่ก็สร้างปัญหาไม่น้อย"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "スカイウェーブ",
|
||||
'zh-tw': "天空波"
|
||||
'zh-tw': "天空波",
|
||||
th: "สกายเวฟ"
|
||||
},
|
||||
|
||||
damage: 10,
|
||||
|
||||
effect: {
|
||||
ja: "おたがいのベンチポケモン全員にも、それぞれ10ダメージ。[ベンチは弱点・抵抗力を計算しない。]",
|
||||
'zh-tw': "雙方的所有備戰寶可夢也各受到10點傷害。 [在備戰區不計算弱點・抵抗力。]"
|
||||
'zh-tw': "雙方的所有備戰寶可夢也各受到10點傷害。 [在備戰區不計算弱點・抵抗力。]",
|
||||
th: "โปเกมอนบนเบนช์ของทั้งสองฝ่ายทุกตัว ก็จะได้รับแดเมจตัวละ 10 ด้วย {โปเกมอนบนเบนช์จะไม่นำจุดอ่อนและความต้านทานมาคิด}"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "カイデン",
|
||||
'zh-tw': "電海燕"
|
||||
'zh-tw': "電海燕",
|
||||
th: "ไคเด็น"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "海岸の 崖に 巣を 作る。 巣は パチパチ 弾ける 不思議な 食感で 人気の 珍味。",
|
||||
'zh-tw': "會在海岸的懸崖上築巢。 吃起來劈哩啪啦跳的神奇口感, 讓牠的巢成了受歡迎的珍奇美食。"
|
||||
'zh-tw': "會在海岸的懸崖上築巢。 吃起來劈哩啪啦跳的神奇口感, 讓牠的巢成了受歡迎的珍奇美食。",
|
||||
th: "สร้างรังบนหน้าผาริมชายฝั่ง รังของมันเป็นอาหารแสนโอชะและเป็นที่นิยมเนื่องจากเนื้อสัมผัสประหลาดที่จะแตกเปรี๊ยะภายในปาก"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "でんきショック",
|
||||
'zh-tw': "電擊"
|
||||
'zh-tw': "電擊",
|
||||
th: "ช็อกไฟฟ้า"
|
||||
},
|
||||
|
||||
damage: 10,
|
||||
|
||||
effect: {
|
||||
ja: "コインを1回投げオモテなら、相手のバトルポケモンをマヒにする。",
|
||||
'zh-tw': "擲1次硬幣若為正面,則將對手的戰鬥寶可夢【麻痺】。"
|
||||
'zh-tw': "擲1次硬幣若為正面,則將對手的戰鬥寶可夢【麻痺】。",
|
||||
th: "ทอยเหรียญ 1 ครั้งถ้าออกหัว จะทำให้โปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามเป็นสภาวะ[ชา]"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "タイカイデン",
|
||||
'zh-tw': "大電海燕"
|
||||
'zh-tw': "大電海燕",
|
||||
th: "ไทไคเด็น"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "のど袋に 翼で 作った 電気を 溜める。 羽の 油分が とても 少なく 泳ぎは 苦手。",
|
||||
'zh-tw': "會把翅膀製造的電儲存到喉囊裡。 由於羽毛含的油脂少之又少, 導致牠不是很擅長游泳。"
|
||||
'zh-tw': "會把翅膀製造的電儲存到喉囊裡。 由於羽毛含的油脂少之又少, 導致牠不是很擅長游泳。",
|
||||
th: "สะสมไฟฟ้าที่สร้างจากปีกไว้ในถุงที่คอ ปริมาณน้ำมันในขนปีกนั้นน้อยมากจึงไม่ถนัดการว่ายน้ำ"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,28 +30,32 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ふうりょくチャージ",
|
||||
'zh-tw': "風力充能"
|
||||
'zh-tw': "風力充能",
|
||||
th: "ชาร์จพลังลม"
|
||||
},
|
||||
|
||||
damage: 10,
|
||||
|
||||
effect: {
|
||||
ja: "次の自分の番、このポケモンが使うワザの、相手のバトルポケモンへのダメージは「+120」される。",
|
||||
'zh-tw': "在下個自己的回合,這隻寶可夢使用的招式,對對手的戰鬥寶可夢造成的傷害「+120」點。"
|
||||
'zh-tw': "在下個自己的回合,這隻寶可夢使用的招式,對對手的戰鬥寶可夢造成的傷害「+120」點。",
|
||||
th: "เทิร์นถัดไปของฝ่ายเรา แดเมจของท่าต่อสู้ที่โปเกมอนนี้ ใช้ทำกับโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามจะถูก [+120]"
|
||||
}
|
||||
}, {
|
||||
cost: ["Lightning", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "ストロングボルト",
|
||||
'zh-tw': "強力伏特"
|
||||
'zh-tw': "強力伏特",
|
||||
th: "สตรองโวลต์"
|
||||
},
|
||||
|
||||
damage: 100,
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンについているエネルギーを1個選び、トラッシュする。",
|
||||
'zh-tw': "選擇1個這隻寶可夢身上附加的能量,將其丟棄。"
|
||||
'zh-tw': "選擇1個這隻寶可夢身上附加的能量,將其丟棄。",
|
||||
th: "เลือกพลังงานที่ติดอยู่กับโปเกมอนนี้ 1 ลูก ทิ้งที่ตำแหน่งทิ้งการ์ด"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ピッピ",
|
||||
'zh-tw': "皮皮"
|
||||
'zh-tw': "皮皮",
|
||||
th: "ปิปปี"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "満月の 晩に 集まって 仲間と ダンス。 その周囲は 異常な 磁場に 包まれる。",
|
||||
'zh-tw': "在月圓之夜聚集, 和夥伴一起跳舞。 周圍被異常的磁場包圍著。"
|
||||
'zh-tw': "在月圓之夜聚集, 和夥伴一起跳舞。 周圍被異常的磁場包圍著。",
|
||||
th: "ออกมารวมตัวและเต้นกับพวกพ้องในค่ำคืนที่พระจันทร์เต็มดวง บริเวณโดยรอบนั้นจะถูกห้อมล้อมด้วยสนามแม่เหล็กที่ผิดธรรมชาติ"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,7 +30,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ムーンキック",
|
||||
'zh-tw': "月亮踢"
|
||||
'zh-tw': "月亮踢",
|
||||
th: "มูนคิก"
|
||||
},
|
||||
|
||||
damage: 40
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ピクシー",
|
||||
'zh-tw': "皮可西"
|
||||
'zh-tw': "皮可西",
|
||||
th: "ปิคซี"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "耳が 良くて 1キロ 離れた ところで 落とした 針の音を 見事に 聞き分けられる。",
|
||||
'zh-tw': "聽覺靈敏,連1公里以外 針落地的聲音都能夠 分辨得一清二楚。"
|
||||
'zh-tw': "聽覺靈敏,連1公里以外 針落地的聲音都能夠 分辨得一清二楚。",
|
||||
th: "มีประสาทรับฟังเสียงที่ดี สามารถแยกแยะเสียงของเข็มที่หล่นในสถานที่ที่ห่างออกไป 1 กิโลเมตรได้อย่างง่ายดาย"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,19 +30,22 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ゆびをふる",
|
||||
'zh-tw': "揮指"
|
||||
'zh-tw': "揮指",
|
||||
th: "ตวัดนิ้ว"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "相手のバトルポケモンが持っているワザを1つ選び、このワザとして使う。",
|
||||
'zh-tw': "選擇1個對手的戰鬥寶可夢持有的招式,作為這個招式使用。"
|
||||
'zh-tw': "選擇1個對手的戰鬥寶可夢持有的招式,作為這個招式使用。",
|
||||
th: "เลือกท่าต่อสู้ที่โปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามมี 1 ท่า ใช้เป็นท่าต่อสู้นี้ได้"
|
||||
}
|
||||
}, {
|
||||
cost: ["Psychic", "Colorless", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "マジカルショット",
|
||||
'zh-tw': "魔法射擊"
|
||||
'zh-tw': "魔法射擊",
|
||||
th: "เมจิคัลช็อต"
|
||||
},
|
||||
|
||||
damage: 100
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ケーシィ",
|
||||
'zh-tw': "凱西"
|
||||
'zh-tw': "凱西",
|
||||
th: "เคซี"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "寝ながら 超能力を 操る。 夢の 内容が 使う 力に 影響する。",
|
||||
'zh-tw': "會一邊睡覺一邊操控超能力。 夢的內容會影響牠使用的能力。"
|
||||
'zh-tw': "會一邊睡覺一邊操控超能力。 夢的內容會影響牠使用的能力。",
|
||||
th: "ขณะที่นอนอยู่ก็ใช้พลังจิตไปด้วย เรื่องในฝันจะส่งผลกระทบกับพลังที่จะใช้"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "テレポーター",
|
||||
'zh-tw': "瞬間移動者"
|
||||
'zh-tw': "瞬間移動者",
|
||||
th: "เทเลพอร์เตอร์"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンがバトル場にいるなら、自分の番に1回使える。このポケモンと、ついているすべてのカードを、自分の山札にもどして切る。",
|
||||
'zh-tw': "若這隻寶可夢在戰鬥場上,則在自己的回合時可使用1次。將這隻寶可夢與附加的卡,全部放回自己的牌庫並重洗。"
|
||||
'zh-tw': "若這隻寶可夢在戰鬥場上,則在自己的回合時可使用1次。將這隻寶可夢與附加的卡,全部放回自己的牌庫並重洗。",
|
||||
th: "ถ้าโปเกมอนนี้อยู่บนตำแหน่งต่อสู้ ใช้ได้ 1 ครั้งในเทิร์นฝ่ายเรา นำโปเกมอนนี้ และการ์ดทั้งหมดที่ติดอยู่ ใส่กลับไปในสำรับการ์ดฝ่ายเราแล้วสับ"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,7 +46,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ビーム",
|
||||
'zh-tw': "光束"
|
||||
'zh-tw': "光束",
|
||||
th: "ลำแสง"
|
||||
},
|
||||
|
||||
damage: 10
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ユンゲラー",
|
||||
'zh-tw': "勇基拉"
|
||||
'zh-tw': "勇基拉",
|
||||
th: "ยุนเกเรอร์"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "サイコパワーで 宙に 浮いたまま 眠る。 弾力に 優れた しっぽを 枕がわりに するぞ。",
|
||||
'zh-tw': "會用精神力量浮在空中睡覺。 牠還會把彈力十足的尾巴 當成枕頭用喔。"
|
||||
'zh-tw': "會用精神力量浮在空中睡覺。 牠還會把彈力十足的尾巴 當成枕頭用喔。",
|
||||
th: "ใช้พลังจิตเพื่อลอยตัวหลับอยู่ในอากาศ ใช้หางที่มีความยืดหยุ่นเป็นหมอน"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "サイコキネシス",
|
||||
'zh-tw': "精神強念"
|
||||
'zh-tw': "精神強念",
|
||||
th: "ไซโคคิเนซิส"
|
||||
},
|
||||
|
||||
damage: "10+",
|
||||
|
||||
effect: {
|
||||
ja: "相手のバトルポケモンについているエネルギーの数×30ダメージ追加。",
|
||||
'zh-tw': "增加對手的戰鬥寶可夢身上附加的能量的數量×30點傷害。"
|
||||
'zh-tw': "增加對手的戰鬥寶可夢身上附加的能量的數量×30點傷害。",
|
||||
th: "แดเมจจะเพิ่มตามจำนวนพลังงานที่ติดอยู่กับโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้าม x30"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "フーディン",
|
||||
'zh-tw': "胡地"
|
||||
'zh-tw': "胡地",
|
||||
th: "ฟูดิน"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "非常に 高い 知能を 持つ。 生まれてから 死ぬまでの できごとを すべて 覚えている という。",
|
||||
'zh-tw': "擁有非常高的智商。 據說牠能記住從出生到死 一輩子發生過的所有事情。"
|
||||
'zh-tw': "擁有非常高的智商。 據說牠能記住從出生到死 一輩子發生過的所有事情。",
|
||||
th: "มีสติปัญญาสูงมาก สามารถจำทุกสิ่งที่เกิดขึ้นได้ตั้งแต่เกิดจนเสียชีวิต"
|
||||
},
|
||||
|
||||
stage: "Stage2",
|
||||
@@ -28,26 +30,30 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ストレンジハック",
|
||||
'zh-tw': "奇異駭入"
|
||||
'zh-tw': "奇異駭入",
|
||||
th: "สเตรนจ์แฮก"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "相手のバトルポケモンをこんらんにする。相手の場のポケモンにのっているダメカンを好きなだけ選び、相手の場のポケモンに好きなようにのせ替える。",
|
||||
'zh-tw': "將對手的戰鬥寶可夢【混亂】。選擇任意數量的對手的場上寶可夢身上放置的傷害指示物,以任意方式改放於對手的場上寶可夢身上。"
|
||||
'zh-tw': "將對手的戰鬥寶可夢【混亂】。選擇任意數量的對手的場上寶可夢身上放置的傷害指示物,以任意方式改放於對手的場上寶可夢身上。",
|
||||
th: "ทำให้โปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามเป็นสภาวะ[สับสน] เลือกตัวนับแดเมจที่วางอยู่บนโปเกมอนบนกระดานฝ่ายตรงข้ามตามจำนวนที่ชอบ ย้ายไปวางที่โปเกมอนบนกระดานฝ่ายตรงข้ามตามชอบ"
|
||||
}
|
||||
}, {
|
||||
cost: ["Psychic"],
|
||||
|
||||
name: {
|
||||
ja: "サイコキネシス",
|
||||
'zh-tw': "精神強念"
|
||||
'zh-tw': "精神強念",
|
||||
th: "ไซโคคิเนซิส"
|
||||
},
|
||||
|
||||
damage: "10+",
|
||||
|
||||
effect: {
|
||||
ja: "相手のバトルポケモンについているエネルギーの数×50ダメージ追加。",
|
||||
'zh-tw': "增加對手的戰鬥寶可夢身上附加的能量的數量×50點傷害。"
|
||||
'zh-tw': "增加對手的戰鬥寶可夢身上附加的能量的數量×50點傷害。",
|
||||
th: "แดเมจจะเพิ่มตามจำนวนพลังงานที่ติดอยู่กับโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้าม x50"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "チリーン",
|
||||
'zh-tw': "風鈴鈴"
|
||||
'zh-tw': "風鈴鈴",
|
||||
th: "ชิรีน"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "鳴き声は 体の 空洞で 響き合って きれいな 音色になり 敵を驚かせ 追いはらう。",
|
||||
'zh-tw': "叫聲會在身體的空洞裡 迴盪出美麗的音色, 趕走被嚇到的敵人。"
|
||||
'zh-tw': "叫聲會在身體的空洞裡 迴盪出美麗的音色, 趕走被嚇到的敵人。",
|
||||
th: "เสียงร้องก้องกังวานภายในร่างที่กลวงเกิดเป็นเสียงที่ไพเราะ ทำให้ศัตรูตกใจและไล่มันออกไป"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,7 +30,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ハイパーボイス",
|
||||
'zh-tw': "巨聲"
|
||||
'zh-tw': "巨聲",
|
||||
th: "ไฮเปอร์วอยซ์"
|
||||
},
|
||||
|
||||
damage: 20
|
||||
@@ -37,12 +40,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "おかえりチャイム",
|
||||
'zh-tw': "回家鐘聲"
|
||||
'zh-tw': "回家鐘聲",
|
||||
th: "เสียงกระดิ่งต้อนรับกลับ"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "自分のベンチポケモンを1匹選び、そのポケモンと、ついているすべてのカードを、山札にもどして切る。",
|
||||
'zh-tw': "選擇1隻自己的備戰寶可夢,將那隻寶可夢與附加的卡全部放回牌庫並重洗。"
|
||||
'zh-tw': "選擇1隻自己的備戰寶可夢,將那隻寶可夢與附加的卡全部放回牌庫並重洗。",
|
||||
th: "เลือกโปเกมอนบนเบนช์ฝ่ายเรา 1 ตัว นำโปเกมอนนั้น และการ์ดทั้งหมดที่ติดอยู่ ใส่กลับไปในสำรับการ์ดแล้วสับ"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ペロッパフ",
|
||||
'zh-tw': "綿綿泡芙"
|
||||
'zh-tw': "綿綿泡芙",
|
||||
th: "เพร็อพพัฟ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "1日に 食べる 砂糖は 自分の 体重と 同じ。 糖分が 足りないと ひどく 不機嫌になる。",
|
||||
'zh-tw': "每天要吃掉與自己體重 相同重量的砂糖, 糖分不夠就會鬧脾氣。"
|
||||
'zh-tw': "每天要吃掉與自己體重 相同重量的砂糖, 糖分不夠就會鬧脾氣。",
|
||||
th: "ปริมาณน้ำตาลที่กินต่อหนึ่งวันเทียบเท่ากับน้ำหนักตัวของมัน หากน้ำตาลไม่พอจะอารมณ์เสียมาก"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "おまつりおんど",
|
||||
'zh-tw': "祭典樂舞"
|
||||
'zh-tw': "祭典樂舞",
|
||||
th: "รำวงงานเทศกาล"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "場に「お祭り会場」が出ているなら、このポケモンは、持っているワザを2回連続で使える。(1回目のワザで相手のバトルポケモンがきぜつしたなら、次のバトルポケモンが出たあと、2回目のワザを使う。)",
|
||||
'zh-tw': "若場上有「祭典會場」,則這隻寶可夢可使用持有的招式2次。(若對手的戰鬥寶可夢因第1次的招式而【昏厥】了,則在下一隻寶可夢放置後,使用第2次的招式。)"
|
||||
'zh-tw': "若場上有「祭典會場」,則這隻寶可夢可使用持有的招式2次。(若對手的戰鬥寶可夢因第1次的招式而【昏厥】了,則在下一隻寶可夢放置後,使用第2次的招式。)",
|
||||
th: "ถ้ามี [สถานที่จัดเทศกาล] อยู่บนกระดาน โปเกมอนนี้ จะใช้ท่าต่อสู้ที่มีต่อเนื่องกันได้ 2 ครั้ง (ถ้าโปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้าม[หมดสภาพ]ด้วยท่าต่อสู้ครั้งที่ 1 หลังจากที่โปเกมอนบนตำแหน่งต่อสู้ตัวถัดไปออกมา ให้ใช้ท่าต่อสู้ครั้งที่ 2)"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,12 +46,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "そっとのせる",
|
||||
'zh-tw': "悄聲加害"
|
||||
'zh-tw': "悄聲加害",
|
||||
th: "ค่อย ๆ วาง"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "相手のポケモン1匹に、ダメカンを2個のせる。",
|
||||
'zh-tw': "在對手的1隻寶可夢身上放置2個傷害指示物。"
|
||||
'zh-tw': "在對手的1隻寶可夢身上放置2個傷害指示物。",
|
||||
th: "วางตัวนับแดเมจ 2 ตัว บนโปเกมอนฝ่ายตรงข้าม 1 ตัว"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ペロリーム",
|
||||
'zh-tw': "胖甜妮"
|
||||
'zh-tw': "胖甜妮",
|
||||
th: "เพโรรีม"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "体臭から 心と 体の 調子を 嗅ぎとる。 医療への 応用が 期待されている。",
|
||||
'zh-tw': "能從人們身上的氣味裡 嗅出他們的身心狀態。 在醫療領域的實際應用備受矚目。"
|
||||
'zh-tw': "能從人們身上的氣味裡 嗅出他們的身心狀態。 在醫療領域的實際應用備受矚目。",
|
||||
th: "สามารถรับรู้สภาพร่างกายและจิตใจได้จากการดมกลิ่นตัว ถูกคาดหวังว่าจะสามารถนำมาปรับใช้ในทางการแพทย์ได้"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,14 +30,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ペロペロリン",
|
||||
'zh-tw': "甜甜你"
|
||||
'zh-tw': "甜甜你",
|
||||
th: "แลบลิ้นแพล็บ"
|
||||
},
|
||||
|
||||
damage: "90×",
|
||||
|
||||
effect: {
|
||||
ja: "コインを2回投げ、オモテの数×90ダメージ。すべてウラなら、相手のバトルポケモンをこんらんにする。",
|
||||
'zh-tw': "擲2次硬幣,造成正面出現的次數×90點傷害。若全部為反面,則將對手的戰鬥寶可夢【混亂】。"
|
||||
'zh-tw': "擲2次硬幣,造成正面出現的次數×90點傷害。若全部為反面,則將對手的戰鬥寶可夢【混亂】。",
|
||||
th: "ทอยเหรียญ 2 ครั้ง แดเมจจะเท่ากับจำนวนครั้งที่ออกหัว x90 ถ้าออกก้อยทั้งหมด จะทำให้โปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามเป็นสภาวะ[สับสน]"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "スナバァ",
|
||||
'zh-tw': "沙丘娃"
|
||||
'zh-tw': "沙丘娃",
|
||||
th: "ซึนาบา"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "獲物の 目を 砂で 潰し その隙に 近づこうとするが 動きが 遅いので 逃げられる。",
|
||||
'zh-tw': "會用沙子攻擊獵物的眼睛後 趁機接近,但卻總是因為 行動緩慢而讓獵物逃走。"
|
||||
'zh-tw': "會用沙子攻擊獵物的眼睛後 趁機接近,但卻總是因為 行動緩慢而讓獵物逃走。",
|
||||
th: "สาดทรายเข้าตาเหยื่อแล้วอาศัยจังหวะนั้นขยับเข้าไปใกล้ ๆ แต่เพราะเคลื่อนไหวช้า เหยื่อเลยมักหนีไปได้"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,21 +30,24 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "すなかけ",
|
||||
'zh-tw': "潑沙"
|
||||
'zh-tw': "潑沙",
|
||||
th: "สาดทราย"
|
||||
},
|
||||
|
||||
damage: 10,
|
||||
|
||||
effect: {
|
||||
ja: "次の相手の番、このワザを受けたポケモンがワザを使うとき、相手はコインを1回投げる。ウラならそのワザは失敗。",
|
||||
'zh-tw': "在下個對手的回合,受到這個招式的寶可夢使用招式時,對手擲1次硬幣。若為反面,則那個招式失敗。"
|
||||
'zh-tw': "在下個對手的回合,受到這個招式的寶可夢使用招式時,對手擲1次硬幣。若為反面,則那個招式失敗。",
|
||||
th: "เทิร์นถัดไปของฝ่ายตรงข้าม เมื่อโปเกมอนที่ได้รับท่าต่อสู้นี้จะใช้ท่าต่อสู้ ฝ่ายตรงข้ามทอยเหรียญ 1 ครั้ง ถ้าออกก้อยท่าต่อสู้นั้นจะล้มเหลว"
|
||||
}
|
||||
}, {
|
||||
cost: ["Psychic", "Colorless", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "ホロウショット",
|
||||
'zh-tw': "陰森射擊"
|
||||
'zh-tw': "陰森射擊",
|
||||
th: "ฮอลโลว์ช็อต"
|
||||
},
|
||||
|
||||
damage: 30
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "シロデスナ",
|
||||
'zh-tw': "噬沙堡爺"
|
||||
'zh-tw': "噬沙堡爺",
|
||||
th: "ชิโรเดซึนะ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "生命エネルギーを 吸い取り 干からびた ものたちの 骨を 腕の へこみから 発射する。",
|
||||
'zh-tw': "會把對手的生命能量 吸得精光,然後把骨骸 從臂上的凹洞發射出去。"
|
||||
'zh-tw': "會把對手的生命能量 吸得精光,然後把骨骸 從臂上的凹洞發射出去。",
|
||||
th: "สูบพลังชีวิตจนหมด แล้วพ่นกระดูกที่เหี่ยวแห้งของเหยื่อออกมาจากหลุมที่แขน"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,21 +30,24 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "すなかけ",
|
||||
'zh-tw': "潑沙"
|
||||
'zh-tw': "潑沙",
|
||||
th: "สาดทราย"
|
||||
},
|
||||
|
||||
damage: 60,
|
||||
|
||||
effect: {
|
||||
ja: "次の相手の番、このワザを受けたポケモンがワザを使うとき、相手はコインを1回投げる。ウラならそのワザは失敗。",
|
||||
'zh-tw': "在下個對手的回合,受到這個招式的寶可夢使用招式時,對手擲1次硬幣。若為反面,則那個招式失敗。"
|
||||
'zh-tw': "在下個對手的回合,受到這個招式的寶可夢使用招式時,對手擲1次硬幣。若為反面,則那個招式失敗。",
|
||||
th: "เทิร์นถัดไปของฝ่ายตรงข้าม เมื่อโปเกมอนที่ได้รับท่าต่อสู้นี้จะใช้ท่าต่อสู้ ฝ่ายตรงข้ามทอยเหรียญ 1 ครั้ง ถ้าออกก้อยท่าต่อสู้นั้นจะล้มเหลว"
|
||||
}
|
||||
}, {
|
||||
cost: ["Psychic", "Colorless", "Colorless", "Colorless"],
|
||||
|
||||
name: {
|
||||
ja: "サンドホロウ",
|
||||
'zh-tw': "沙之陰森"
|
||||
'zh-tw': "沙之陰森",
|
||||
th: "แซนด์ฮอลโลว์"
|
||||
},
|
||||
|
||||
damage: 150
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "マシマシラ",
|
||||
'zh-tw': "願增猿"
|
||||
'zh-tw': "願增猿",
|
||||
th: "มาชิมาชิระ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "安全な 場所から 強烈な めまいを 引き起こす 念力を 放って 敵を 翻弄する。",
|
||||
'zh-tw': "會從安全的地方釋放出 能引起強烈頭暈的念力, 把敵手戲弄得團團轉。"
|
||||
'zh-tw': "會從安全的地方釋放出 能引起強烈頭暈的念力, 把敵手戲弄得團團轉。",
|
||||
th: "อยู่ในสถานที่ที่ปลอดภัยแล้วหยอกล้อศัตรูด้วยการปล่อยพลังจิตที่ทำให้เวียนหัวรุนแรงได้"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "アドレナブレイン",
|
||||
'zh-tw': "腎上腺腦力"
|
||||
'zh-tw': "腎上腺腦力",
|
||||
th: "อะดรีนาลีนเบรน"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンにエネルギーがついているなら、自分の番に1回使える。自分の場のポケモン1匹にのっているダメカンを3個まで選び、相手の場のポケモン1匹にのせ替える。",
|
||||
'zh-tw': "若這隻寶可夢身上附有【惡】能量卡,則在自己的回合時可使用1次。選擇最多3個自己的1隻場上寶可夢身上放置的傷害指示物,改放於對手的1隻場上寶可夢身上。"
|
||||
'zh-tw': "若這隻寶可夢身上附有【惡】能量卡,則在自己的回合時可使用1次。選擇最多3個自己的1隻場上寶可夢身上放置的傷害指示物,改放於對手的1隻場上寶可夢身上。",
|
||||
th: "ถ้าโปเกมอนนี้มีพลังงาน[ความมืด]ติดอยู่ ใช้ได้ 1 ครั้งในเทิร์นฝ่ายเรา เลือกตัวนับแดเมจที่วางอยู่บนโปเกมอนบนกระดานฝ่ายเรา 1 ตัวได้สูงสุด 3 ตัว ย้ายไปวางที่โปเกมอนบนกระดานฝ่ายตรงข้าม 1 ตัว"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,14 +46,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "サイコトリップ",
|
||||
'zh-tw': "精神歪曲"
|
||||
'zh-tw': "精神歪曲",
|
||||
th: "ไซโคทริป"
|
||||
},
|
||||
|
||||
damage: 60,
|
||||
|
||||
effect: {
|
||||
ja: "相手のバトルポケモンをこんらんにする。",
|
||||
'zh-tw': "將對手的戰鬥寶可夢【混亂】。"
|
||||
'zh-tw': "將對手的戰鬥寶可夢【混亂】。",
|
||||
th: "ทำให้โปเกมอนบนตำแหน่งต่อสู้ฝ่ายตรงข้ามเป็นสภาวะ[สับสน]"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "キチキギス",
|
||||
'zh-tw': "吉雉雞"
|
||||
'zh-tw': "吉雉雞",
|
||||
th: "คิจิคิกิสึ"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "艶やかな 翼を 羽ばたかせて フェロモンを 振りまき 人や ポケモンを 蠱惑に 魅了する。",
|
||||
'zh-tw': "會拍動豔麗的翅膀散佈 費洛蒙,使人類和寶可夢 神魂顛倒,為牠著迷。"
|
||||
'zh-tw': "會拍動豔麗的翅膀散佈 費洛蒙,使人類和寶可夢 神魂顛倒,為牠著迷。",
|
||||
th: "กระพือปีกที่แสนเย้ายวนเพื่อโปรยฟีโรโมนยั่วยวนคนและโปเกมอนให้หลงใหล"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,12 +30,14 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "アドレナフェロモン",
|
||||
'zh-tw': "腎上腺費洛蒙"
|
||||
'zh-tw': "腎上腺費洛蒙",
|
||||
th: "อะดรีนาลีนฟีโรโมน"
|
||||
},
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンにエネルギーがついているなら、このポケモンがワザのダメージを受けるとき、自分はコインを1回投げる。オモテなら、このポケモンはそのダメージを受けない。",
|
||||
'zh-tw': "若這隻寶可夢身上附有【惡】能量卡,則這隻寶可夢受到招式的傷害時,自己擲1次硬幣。若為正面,則這隻寶可夢不會受到那個傷害。"
|
||||
'zh-tw': "若這隻寶可夢身上附有【惡】能量卡,則這隻寶可夢受到招式的傷害時,自己擲1次硬幣。若為正面,則這隻寶可夢不會受到那個傷害。",
|
||||
th: "ถ้าโปเกมอนนี้มีพลังงาน[ความมืด]ติดอยู่ เมื่อโปเกมอนนี้ได้รับแดเมจของท่าต่อสู้ ฝ่ายเราทอยเหรียญ 1 ครั้ง ถ้าออกหัว โปเกมอนนี้จะไม่ได้รับแดเมจนั้น"
|
||||
}
|
||||
}],
|
||||
|
||||
@@ -42,14 +46,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "エナジーフェザー",
|
||||
'zh-tw': "能量羽毛"
|
||||
'zh-tw': "能量羽毛",
|
||||
th: "เอนเนอร์จี้ฟีเธอร์"
|
||||
},
|
||||
|
||||
damage: "30×",
|
||||
|
||||
effect: {
|
||||
ja: "このポケモンについているエネルギーの数×30ダメージ。",
|
||||
'zh-tw': "造成這隻寶可夢身上附加的能量的數量×30點傷害。"
|
||||
'zh-tw': "造成這隻寶可夢身上附加的能量的數量×30點傷害。",
|
||||
th: "แดเมจจะเท่ากับจำนวนพลังงานที่ติดอยู่กับโปเกมอนนี้ x30"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "サンド",
|
||||
'zh-tw': "穿山鼠"
|
||||
'zh-tw': "穿山鼠",
|
||||
th: "แซนด์"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "どんなに 高い ところから 落ちても 体を 丸めれば バウンドできて 助かるのだ。",
|
||||
'zh-tw': "不管從多高的地方掉下, 只要把身體蜷成一團 就可以藉著反彈而得救。"
|
||||
'zh-tw': "不管從多高的地方掉下, 只要把身體蜷成一團 就可以藉著反彈而得救。",
|
||||
th: "ไม่ว่าจะตกลงมาจากที่ที่สูงขนาดไหนก็ตาม หากมันม้วนตัวกลมแล้วกระดอนไปมาก็จะปลอดภัย"
|
||||
},
|
||||
|
||||
stage: "Basic",
|
||||
@@ -28,7 +30,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ころがる",
|
||||
'zh-tw': "滾動"
|
||||
'zh-tw': "滾動",
|
||||
th: "กลิ้ง"
|
||||
},
|
||||
|
||||
damage: 10
|
||||
@@ -37,14 +40,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ダブルひっかき",
|
||||
'zh-tw': "雙重抓"
|
||||
'zh-tw': "雙重抓",
|
||||
th: "ข่วนทวีคูณ"
|
||||
},
|
||||
|
||||
damage: "20×",
|
||||
|
||||
effect: {
|
||||
ja: "コインを2回投げ、オモテの数×20ダメージ。",
|
||||
'zh-tw': "擲2次硬幣,造成正面出現的次數×20點傷害。"
|
||||
'zh-tw': "擲2次硬幣,造成正面出現的次數×20點傷害。",
|
||||
th: "ทอยเหรียญ 2 ครั้ง แดเมจจะเท่ากับจำนวนครั้งที่ออกหัว x20"
|
||||
}
|
||||
}],
|
||||
|
||||
|
@@ -6,7 +6,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "サンドパン",
|
||||
'zh-tw': "穿山王"
|
||||
'zh-tw': "穿山王",
|
||||
th: "แซนด์แพน"
|
||||
},
|
||||
|
||||
category: "Pokemon",
|
||||
@@ -18,7 +19,8 @@ const card: Card = {
|
||||
|
||||
description: {
|
||||
ja: "トゲは 皮膚が 硬くなったもの。 体を 丸めて トゲトゲを 刺すように 相手を 攻撃する。",
|
||||
'zh-tw': "身上的刺是皮膚硬化後形成的。 會將身體蜷成一團, 用尖刺刺向對手進行攻擊。"
|
||||
'zh-tw': "身上的刺是皮膚硬化後形成的。 會將身體蜷成一團, 用尖刺刺向對手進行攻擊。",
|
||||
th: "หนามคือผิวหนังที่แข็งตัว ม้วนตัวกลมแล้วโจมตีศัตรูด้วยการใช้หนามทิ่มแทง"
|
||||
},
|
||||
|
||||
stage: "Stage1",
|
||||
@@ -28,7 +30,8 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "ツメをたてる",
|
||||
'zh-tw': "豎爪"
|
||||
'zh-tw': "豎爪",
|
||||
th: "กางกรงเล็บ"
|
||||
},
|
||||
|
||||
damage: 30
|
||||
@@ -37,14 +40,16 @@ const card: Card = {
|
||||
|
||||
name: {
|
||||
ja: "じしん",
|
||||
'zh-tw': "地震"
|
||||
'zh-tw': "地震",
|
||||
th: "แผ่นดินไหว"
|
||||
},
|
||||
|
||||
damage: 120,
|
||||
|
||||
effect: {
|
||||
ja: "自分のベンチポケモン全員にも、それぞれ10ダメージ。[ベンチは弱点・抵抗力を計算しない。]",
|
||||
'zh-tw': "自己的所有備戰寶可夢也各受到10點傷害。 [在備戰區不計算弱點・抵抗力。]"
|
||||
'zh-tw': "自己的所有備戰寶可夢也各受到10點傷害。 [在備戰區不計算弱點・抵抗力。]",
|
||||
th: "โปเกมอนบนเบนช์ฝ่ายเราทุกตัว ก็จะได้รับแดเมจตัวละ 10 ด้วย {โปเกมอนบนเบนช์จะไม่นำจุดอ่อนและความต้านทานมาคิด}"
|
||||
}
|
||||
}],
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user