Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
REIKAI
ygopro
Commits
c9264cdc
Commit
c9264cdc
authored
Feb 20, 2019
by
nanahira
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'server' of
https://github.com/purerosefallen/ygopro
parents
94dd87f1
f17f8a80
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
309 additions
and
38 deletions
+309
-38
.gitignore
.gitignore
+1
-0
README.md
README.md
+5
-0
appveyor.yml
appveyor.yml
+37
-3
cards.cdb
cards.cdb
+0
-0
gframe/drawing.cpp
gframe/drawing.cpp
+1
-1
gframe/game.cpp
gframe/game.cpp
+35
-27
gframe/game.h
gframe/game.h
+2
-2
gframe/myfilesystem.h
gframe/myfilesystem.h
+38
-1
lflist.conf
lflist.conf
+186
-1
ocgcore
ocgcore
+1
-1
script
script
+1
-1
strings.conf
strings.conf
+2
-1
No files found.
.gitignore
View file @
c9264cdc
...
...
@@ -85,3 +85,4 @@ core*
/*.bat
/*.sh
/*.sql
README.md
View file @
c9264cdc
...
...
@@ -40,3 +40,8 @@
*
每回合抽卡
*
每回合时间
*
录像保存模式
### 特殊编译参数
执行
`premake5 gmake`
之前,可以通过设置一些环境变量,来改变一些编译参数。
*
`YGOPRO_DEFAULT_DUEL_RULE=X`
设置默认决斗规则为大师规则X。
*
`YGOPRO_NO_LUA_SAFE`
若有定义,则开启默认禁用的
`os`
和
`io`
库。请慎用这个参数,确保运行的卡片脚本文件是可以信任的。
appveyor.yml
View file @
c9264cdc
...
...
@@ -18,9 +18,6 @@ install:
-
bash -c "curl --retry 5 --connect-timeout 30 --location --remote-header-name --remote-name https://www.sqlite.org/2018/sqlite-amalgamation-3240000.zip ; exit 0"
-
7z x -y sqlite-amalgamation-3240000.zip
-
move sqlite-amalgamation-3240000 sqlite3
-
appveyor DownloadFile https://github.com/tronkko/dirent/raw/master/include/dirent.h
-
move dirent.h gframe\
# let premake happy
-
xcopy /E premake\* .
...
...
@@ -37,12 +34,49 @@ build:
after_build
:
-
ps
:
move bin\release\ygopro.exe .
# redis
-
bash -c "curl --retry 5 --connect-timeout 30 --location --remote-header-name --remote-name https://github.com/MicrosoftArchive/redis/releases/download/win-3.2.100/Redis-x64-3.2.100.zip ; exit 0"
-
7z x -y -oredis Redis-x64-3.2.100.zip
# nodejs
-
bash -c "curl --retry 5 --connect-timeout 30 --location --remote-header-name --remote-name https://nodejs.org/dist/v10.15.0/node-v10.15.0-win-x64.zip ; exit 0"
-
7z x -y node-v10.15.0-win-x64.zip
-
mv node-v10.15.0-win-x64 node
# srvpro
-
git clone https://github.com/purerosefallen/ygopro-server
-
cd ygopro-server
-
../node/npm install
-
bash -c "curl --retry 5 --connect-timeout 30 --location --remote-header-name --remote-name https://github.com/purerosefallen/windbot/releases/download/latest/WindBot.7z ; exit 0"
-
7z x -y WindBot.7z
-
rm -rf Bot.exe bot.conf
-
mv WindBot windbot_
-
mv windbot_ windbot
# Windows NTFS does not support case sensitive, so renaming the folder twice.
-
rm -rf WindBot.7z
-
cp ../cards.cdb windbot/
-
mkdir ygopro decks_save
-
cp -rf ../ygopro.exe ygopro/
-
mv ../cards.cdb ygopro/
-
mv ../lflist.conf ygopro/
-
mv ../script ygopro/
-
cd ygopro
-
mkdir gframe
-
cp -rf ../../gframe/game.cpp gframe/
# Toss game.cpp in for version detection
# - cp -rf config_build config
-
cd ../..
# start script
-
bash -c "echo '@echo off' >> run.bat ; echo 'start redis/redis-server.exe' >> run.bat ; echo 'cd ygopro-server/windbot' >> run.bat ; echo 'start WindBot.exe servermode=true serverport=2399' >> run.bat ; echo 'cd ..' >> run.bat ; echo 'start ../node/node.exe ygopro-server.js' >> run.bat"
-
7z a -mx9 -xr!.git* ygopro-server-win.zip node redis ygopro-server run.bat
test
:
off
artifacts
:
-
path
:
ygopro.exe
name
:
ygopro server mode
-
path
:
ygopro-server-win.zip
name
:
Windows version of SRVPro
deploy
:
release
:
win
...
...
cards.cdb
View file @
c9264cdc
No preview for this file type
gframe/drawing.cpp
View file @
c9264cdc
...
...
@@ -1129,7 +1129,7 @@ void Game::DrawThumb(code_pointer cp, position2di pos, std::unordered_map<int, i
if
(
drag
)
{
dragloc
=
recti
(
pos
.
X
,
pos
.
Y
,
pos
.
X
+
CARD_THUMB_WIDTH
*
mainGame
->
xScale
,
pos
.
Y
+
CARD_THUMB_HEIGHT
*
mainGame
->
yScale
);
limitloc
=
recti
(
pos
.
X
,
pos
.
Y
,
pos
.
X
+
20
*
mainGame
->
xScale
,
pos
.
Y
+
20
*
mainGame
->
yScale
);
otloc
=
recti
(
pos
.
X
+
7
,
pos
.
Y
+
50
,
pos
.
X
+
37
*
mainGame
->
xScale
,
pos
.
Y
+
65
*
mainGame
->
yScale
);
otloc
=
recti
(
pos
.
X
+
7
,
pos
.
Y
+
50
*
mainGame
->
yScale
,
pos
.
X
+
37
*
mainGame
->
xScale
,
pos
.
Y
+
65
*
mainGame
->
yScale
);
}
driver
->
draw2DImage
(
img
,
dragloc
,
rect
<
s32
>
(
0
,
0
,
size
.
Width
,
size
.
Height
));
if
(
lflist
->
count
(
lcode
))
{
...
...
gframe/game.cpp
View file @
c9264cdc
...
...
@@ -704,14 +704,23 @@ bool Game::Initialize() {
btnStartFilter
->
setRelativePosition
(
rect
<
s32
>
(
260
,
80
+
125
/
6
,
390
,
100
+
125
/
6
));
btnClearFilter
=
env
->
addButton
(
rect
<
s32
>
(
205
,
80
+
125
/
6
,
255
,
100
+
125
/
6
),
wFilter
,
BUTTON_CLEAR_FILTER
,
dataManager
.
GetSysString
(
1304
));
}
wCategories
=
env
->
addWindow
(
rect
<
s32
>
(
6
30
,
60
,
1000
,
270
),
false
,
dataManager
.
strBuffer
);
wCategories
=
env
->
addWindow
(
rect
<
s32
>
(
6
00
,
60
,
1000
,
305
),
false
,
dataManager
.
strBuffer
);
wCategories
->
getCloseButton
()
->
setVisible
(
false
);
wCategories
->
setDrawTitlebar
(
false
);
wCategories
->
setDraggable
(
false
);
wCategories
->
setVisible
(
false
);
btnCategoryOK
=
env
->
addButton
(
rect
<
s32
>
(
135
,
175
,
235
,
200
),
wCategories
,
BUTTON_CATEGORY_OK
,
dataManager
.
GetSysString
(
1211
));
btnCategoryOK
=
env
->
addButton
(
rect
<
s32
>
(
150
,
210
,
250
,
235
),
wCategories
,
BUTTON_CATEGORY_OK
,
dataManager
.
GetSysString
(
1211
));
int
catewidth
=
0
;
for
(
int
i
=
0
;
i
<
32
;
++
i
)
{
irr
::
core
::
dimension2d
<
unsigned
int
>
dtxt
=
mainGame
->
guiFont
->
getDimension
(
dataManager
.
GetSysString
(
1100
+
i
));
if
(
dtxt
.
Width
+
40
>
catewidth
)
catewidth
=
dtxt
.
Width
+
40
;
}
for
(
int
i
=
0
;
i
<
32
;
++
i
)
chkCategory
[
i
]
=
env
->
addCheckBox
(
false
,
recti
(
10
+
(
i
%
4
)
*
90
,
10
+
(
i
/
4
)
*
20
,
100
+
(
i
%
4
)
*
90
,
30
+
(
i
/
4
)
*
20
),
wCategories
,
-
1
,
dataManager
.
GetSysString
(
1100
+
i
));
chkCategory
[
i
]
=
env
->
addCheckBox
(
false
,
recti
(
10
+
(
i
%
4
)
*
catewidth
,
5
+
(
i
/
4
)
*
25
,
10
+
(
i
%
4
+
1
)
*
catewidth
,
5
+
(
i
/
4
+
1
)
*
25
),
wCategories
,
-
1
,
dataManager
.
GetSysString
(
1100
+
i
));
int
wcatewidth
=
catewidth
*
4
+
16
;
wCategories
->
setRelativePosition
(
rect
<
s32
>
(
1000
-
wcatewidth
,
60
,
1000
,
305
));
btnCategoryOK
->
setRelativePosition
(
recti
(
wcatewidth
/
2
-
50
,
210
,
wcatewidth
/
2
+
50
,
235
));
btnMarksFilter
=
env
->
addButton
(
rect
<
s32
>
(
60
,
80
+
125
/
6
,
190
,
100
+
125
/
6
),
wFilter
,
BUTTON_MARKS_FILTER
,
dataManager
.
GetSysString
(
1374
));
wLinkMarks
=
env
->
addWindow
(
rect
<
s32
>
(
700
,
30
,
820
,
150
),
false
,
dataManager
.
strBuffer
);
wLinkMarks
->
getCloseButton
()
->
setVisible
(
false
);
...
...
@@ -1947,7 +1956,13 @@ void Game::OnResize() {
btnClearFilter
->
setRelativePosition
(
Resize
(
205
,
80
+
125
/
6
,
255
,
100
+
125
/
6
));
btnMarksFilter
->
setRelativePosition
(
Resize
(
60
,
80
+
125
/
6
,
190
,
100
+
125
/
6
));
wCategories
->
setRelativePosition
(
ResizeWin
(
450
,
60
,
1000
,
270
));
recti
btncatepos
=
btnEffectFilter
->
getAbsolutePosition
();
wCategories
->
setRelativePosition
(
recti
(
btncatepos
.
LowerRightCorner
.
X
-
wCategories
->
getRelativePosition
().
getWidth
(),
btncatepos
.
LowerRightCorner
.
Y
-
btncatepos
.
getHeight
()
/
2
,
btncatepos
.
LowerRightCorner
.
X
,
btncatepos
.
LowerRightCorner
.
Y
-
btncatepos
.
getHeight
()
/
2
+
245
));
wLinkMarks
->
setRelativePosition
(
ResizeWin
(
700
,
30
,
820
,
150
));
stBanlist
->
setRelativePosition
(
Resize
(
10
,
9
,
100
,
29
));
stDeck
->
setRelativePosition
(
Resize
(
10
,
39
,
100
,
59
));
...
...
@@ -1987,7 +2002,8 @@ void Game::OnResize() {
wANAttribute
->
setRelativePosition
(
ResizeWin
(
500
,
200
,
830
,
285
));
wANRace
->
setRelativePosition
(
ResizeWin
(
480
,
200
,
850
,
410
));
wReplaySave
->
setRelativePosition
(
ResizeWin
(
510
,
200
,
820
,
320
));
stHintMsg
->
setRelativePosition
(
ResizeWin
(
500
,
60
,
820
,
90
));
stHintMsg
->
setRelativePosition
(
ResizeWin
(
660
-
160
*
xScale
,
60
,
660
+
160
*
xScale
,
90
));
//sound / music volume bar
scrSoundVolume
->
setRelativePosition
(
recti
(
scrSoundVolume
->
getRelativePosition
().
UpperLeftCorner
.
X
,
scrSoundVolume
->
getRelativePosition
().
UpperLeftCorner
.
Y
,
20
+
(
300
*
xScale
)
-
70
,
scrSoundVolume
->
getRelativePosition
().
LowerRightCorner
.
Y
));
...
...
@@ -2034,8 +2050,8 @@ void Game::OnResize() {
btnReset
->
setRelativePosition
(
recti
(
1
,
1
,
width
,
height
));
}
wCardImg
->
setRelativePosition
(
ResizeCard
(
1
,
1
,
20
,
18
));
imgCard
->
setRelativePosition
(
ResizeCard
(
10
,
9
,
0
,
0
));
wCardImg
->
setRelativePosition
(
ResizeCard
ImgWin
(
1
,
1
,
20
,
18
));
imgCard
->
setRelativePosition
(
ResizeCard
ImgWin
(
10
,
9
,
0
,
0
));
wInfos
->
setRelativePosition
(
Resize
(
1
,
275
,
301
,
639
));
stName
->
setRelativePosition
(
recti
(
10
,
10
,
300
*
xScale
-
13
,
10
+
22
));
lstLog
->
setRelativePosition
(
Resize
(
10
,
10
,
290
,
290
));
...
...
@@ -2049,7 +2065,7 @@ void Game::OnResize() {
btnM2
->
setRelativePosition
(
Resize
(
160
,
0
,
210
,
20
));
btnEP
->
setRelativePosition
(
Resize
(
320
,
0
,
370
,
20
));
wChat
->
setRelativePosition
(
ResizeWin
(
wInfos
->
getRelativePosition
().
LowerRightCorner
.
X
+
6
,
615
,
1020
,
640
,
true
));
wChat
->
setRelativePosition
(
recti
(
wInfos
->
getRelativePosition
().
LowerRightCorner
.
X
+
6
,
window_size
.
Height
-
25
,
window_size
.
Width
,
window_size
.
Height
));
ebChatInput
->
setRelativePosition
(
recti
(
3
,
2
,
window_size
.
Width
-
wChat
->
getRelativePosition
().
UpperLeftCorner
.
X
-
6
,
22
));
btnLeaveGame
->
setRelativePosition
(
Resize
(
205
,
5
,
295
,
80
));
...
...
@@ -2092,19 +2108,13 @@ position2di Game::ResizeReverse(s32 x, s32 y) {
y
=
y
/
yScale
;
return
position2di
(
x
,
y
);
}
recti
Game
::
ResizeWin
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
,
bool
chat
)
{
s32
sx
=
x2
-
x
;
s32
sy
=
y2
-
y
;
if
(
chat
)
{
y
=
window_size
.
Height
-
sy
;
x2
=
window_size
.
Width
;
y2
=
y
+
sy
;
return
recti
(
x
,
y
,
x2
,
y2
);
}
x
=
(
x
+
sx
/
2
)
*
xScale
-
sx
/
2
;
y
=
(
y
+
sy
/
2
)
*
yScale
-
sy
/
2
;
x2
=
sx
+
x
;
y2
=
sy
+
y
;
recti
Game
::
ResizeWin
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
)
{
s32
w
=
x2
-
x
;
s32
h
=
y2
-
y
;
x
=
(
x
+
w
/
2
)
*
xScale
-
w
/
2
;
y
=
(
y
+
h
/
2
)
*
yScale
-
h
/
2
;
x2
=
w
+
x
;
y2
=
h
+
y
;
return
recti
(
x
,
y
,
x2
,
y2
);
}
recti
Game
::
ResizePhaseHint
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
,
s32
width
)
{
...
...
@@ -2114,17 +2124,15 @@ recti Game::ResizePhaseHint(s32 x, s32 y, s32 x2, s32 y2, s32 width) {
y2
=
y2
*
yScale
;
return
recti
(
x
,
y
,
x2
,
y2
);
}
recti
Game
::
ResizeCard
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
)
{
recti
Game
::
ResizeCard
ImgWin
(
s32
x
,
s32
y
,
s32
mx
,
s32
my
)
{
float
mul
=
xScale
;
if
(
xScale
>
yScale
)
mul
=
yScale
;
s32
sx
=
CARD_IMG_WIDTH
*
mul
+
x2
*
xScale
;
s32
sy
=
CARD_IMG_HEIGHT
*
mul
+
y2
*
yScale
;
s32
w
=
CARD_IMG_WIDTH
*
mul
+
mx
*
xScale
;
s32
h
=
CARD_IMG_HEIGHT
*
mul
+
my
*
yScale
;
x
=
x
*
xScale
;
y
=
y
*
yScale
;
x2
=
sx
+
x
;
y2
=
sy
+
y
;
return
recti
(
x
,
y
,
x2
,
y2
);
return
recti
(
x
,
y
,
x
+
w
,
y
+
h
);
}
recti
Game
::
ResizeCardHint
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
)
{
return
ResizeCardMid
(
x
,
y
,
x2
,
y2
,
(
x
+
x2
)
*
0.5
,
(
y
+
y2
)
*
0.5
);
...
...
gframe/game.h
View file @
c9264cdc
...
...
@@ -199,8 +199,8 @@ public:
position2di
Resize
(
s32
x
,
s32
y
);
position2di
ResizeReverse
(
s32
x
,
s32
y
);
recti
ResizePhaseHint
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
,
s32
width
);
recti
ResizeWin
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
,
bool
chat
=
false
);
recti
ResizeCard
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
);
recti
ResizeWin
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
);
recti
ResizeCard
ImgWin
(
s32
x
,
s32
y
,
s32
mx
,
s32
my
);
recti
ResizeCardHint
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
);
position2di
ResizeCardHint
(
s32
x
,
s32
y
);
recti
ResizeCardMid
(
s32
x
,
s32
y
,
s32
x2
,
s32
y2
,
s32
midx
,
s32
midy
);
...
...
gframe/myfilesystem.h
View file @
c9264cdc
...
...
@@ -8,6 +8,8 @@
#ifndef _WIN32
#include <dirent.h>
#include <sys/stat.h>
#include <vector>
#include <algorithm>
#endif
#ifdef _WIN32
...
...
@@ -109,23 +111,58 @@ public:
return
MakeDir
(
dir
);
}
#ifndef YGOPRO_SERVER_MODE
struct
file_unit
{
std
::
string
filename
;
bool
is_dir
;
};
#endif
static
void
TraversalDir
(
const
char
*
path
,
const
std
::
function
<
void
(
const
char
*
,
bool
)
>&
cb
)
{
DIR
*
dir
=
nullptr
;
struct
dirent
*
dirp
=
nullptr
;
if
((
dir
=
opendir
(
path
))
==
nullptr
)
return
;
struct
stat
fileStat
;
while
((
dirp
=
readdir
(
dir
))
!=
nullptr
)
{
#ifndef YGOPRO_SERVER_MODE
std
::
vector
<
file_unit
>
file_list
;
#endif
while
((
dirp
=
readdir
(
dir
))
!=
nullptr
)
{
#ifndef YGOPRO_SERVER_MODE
file_unit
funit
;
#endif
char
fname
[
1024
];
strcpy
(
fname
,
path
);
strcat
(
fname
,
"/"
);
strcat
(
fname
,
dirp
->
d_name
);
stat
(
fname
,
&
fileStat
);
#ifdef YGOPRO_SERVER_MODE
cb
(
dirp
->
d_name
,
S_ISDIR
(
fileStat
.
st_mode
));
#else
funit
.
filename
=
std
::
string
(
dirp
->
d_name
);
funit
.
is_dir
=
S_ISDIR
(
fileStat
.
st_mode
);
file_list
.
push_back
(
funit
);
#endif
}
closedir
(
dir
);
#ifndef YGOPRO_SERVER_MODE
std
::
sort
(
file_list
.
begin
(),
file_list
.
end
(),
TraversalDirSort
);
for
(
file_unit
funit
:
file_list
)
cb
(
funit
.
filename
.
c_str
(),
funit
.
is_dir
);
#endif
}
#ifndef YGOPRO_SERVER_MODE
static
bool
TraversalDirSort
(
file_unit
file1
,
file_unit
file2
)
{
if
(
file1
.
is_dir
!=
file2
.
is_dir
)
{
return
file1
.
is_dir
;
}
else
{
return
file1
.
filename
<
file2
.
filename
;
}
}
#endif
static
void
TraversalDir
(
const
wchar_t
*
wpath
,
const
std
::
function
<
void
(
const
wchar_t
*
,
bool
)
>&
cb
)
{
char
path
[
1024
];
BufferIO
::
EncodeUTF8
(
wpath
,
path
);
...
...
lflist.conf
View file @
c9264cdc
#[2019.1][2018.10][2018.12 TCG][2018.7][2018.4][2018.1][2017.10][2017.7][2017.4][2017.1][2016.10][2016.7][2016.4][2016.1][2015.10][2015.4][2015.1][2014.10][2014.7][2014.4][2014.2][2013.9][2018.9 TCG][2018.5 TCG][2018.2 TCG][2017.11 TCG][2017.9 TCG][2017.6 TCG][2017.3 TCG][2016.8 TCG][2016.4 TCG][2015.11 TCG][2015.7 TCG][2015.4 TCG][2015.1 TCG][2014.10 TCG][2014.7 TCG][2014.4 TCG][2014.1.1 TCG][2013.10.11 TCG][2013.3.1][2012.9.1][2012.3.1][2011.9.1]
#[2019.1][2018.10][201
9.1 TCG][201
8.12 TCG][2018.7][2018.4][2018.1][2017.10][2017.7][2017.4][2017.1][2016.10][2016.7][2016.4][2016.1][2015.10][2015.4][2015.1][2014.10][2014.7][2014.4][2014.2][2013.9][2018.9 TCG][2018.5 TCG][2018.2 TCG][2017.11 TCG][2017.9 TCG][2017.6 TCG][2017.3 TCG][2016.8 TCG][2016.4 TCG][2015.11 TCG][2015.7 TCG][2015.4 TCG][2015.1 TCG][2014.10 TCG][2014.7 TCG][2014.4 TCG][2014.1.1 TCG][2013.10.11 TCG][2013.3.1][2012.9.1][2012.3.1][2011.9.1]
!
2019
.
1
#forbidden
...
...
@@ -340,6 +340,191 @@
35125879
2
--真竜皇の復活
83555666
2
--破壊輪
!
2019
.
1
TCG
#Forbidden TCG
53804307
0
--
Blaster
,
Dragon
Ruler
of
Infernos
MAIN
DECK
MONSTERS
34124316
0
--
Cyber
Jar
8903700
0
--
Djinn
Releaser
of
Rituals
78706415
0
--
Fiber
Jar
93369354
0
--
Fishborg
Blaster
34206604
0
--
Magical
Scientist
31178212
0
--
Majespecter
Unicorn
-
Kirin
21593977
0
--
Makyura
the
Destructor
96782886
0
--
Mind
Master
79106360
0
--
Morphing
Jar
#2
7563579
0
--
Performage
PlushFire
17330916
0
--
Performapal
Monkeyboard
90411554
0
--
Redox
,
Dragon
Ruler
of
Boulders
20663556
0
--
Substitoad
89399912
0
--
Tempest
,
Dragon
Ruler
of
Storms
88071625
0
--
The
Tyrant
Neptune
26400609
0
--
Tidal
,
Dragon
Ruler
of
Waterfalls
33184167
0
--
Tribe
-
Infecting
Virus
44910027
0
--
Victory
Dragon
30539496
0
--
True
King
Lithosagym
,
the
Disaster
3078576
0
--
Yata
-
Garasu
9929398
0
--
Blackwing
-
Gofu
the
Vague
Shadow
15341821
0
--
Dandylion
49684352
0
--
Double
Iris
Magician
40318957
0
--
Performapal
Skullcrobat
Joker
57421866
0
--
Level
Eater
23434538
0
--
Maxx
"C"
76794549
0
--
Astrograph
Sorcerer
21377582
0
--
Master
Peace
,
The
True
Dracoslaying
King
23558733
0
--
Phoenixian
Cluster
Amaryllis
5592689
0
--
Samsara
Lotus
75732622
0
--
Grinder
Golem
55623480
0
--
Fairy
Tail
–
Snow
17412721
0
--
Elder
Entity
Norden
EXTRA
DECK
MONSTERS
43387895
0
--
Supreme
King
Dragon
Starving
Venom
65536818
0
--
Denglong
,
First
of
the
Yang
Zing
25862681
0
--
Ancient
Fairy
Dragon
34086406
0
--
Lavalval
Chain
54719828
0
--
Number
16
:
Shock
Master
18326736
0
--
Tellarknight
Ptolomaeus
81122844
0
--
Wind
-
Up
Carrier
Zenmaity
581014
0
--
Daigusto
Emeral
48905153
0
--
Zoodiac
Drident
85115440
0
--
Zoodiac
Broadbull
63504681
0
--
Number
86
:
Heroic
Champion
–
Rhongomyniad
10389142
0
--
Number
42
:
Galaxy
Tomahawk
39064822
0
--
Knightmare
Goblin
4423206
0
--
M
-
X
-
Saber
Invoker
5043010
0
--
Firewall
Dragon
22593417
0
--
Topologic
Gumblar
Dragon
69243953
0
--
Butterfly
Dagger
-
Elma
SPELLS
CARDS
57953380
0
--
Card
of
Safe
Return
4031928
0
--
Change
of
Heart
67616300
0
--
Chicken
Game
60682203
0
--
Cold
Wave
17375316
0
--
Confiscation
44763025
0
--
Deliquent
Duo
23557835
0
--
Dimension
Fusion
42703248
0
--
Giant
Trunade
79571449
0
--
Graceful
Charity
18144507
0
--
Harpie
'
s
Feather
Duster
18144506
0
--
Harpie
'
s
Feather
Duster
35059553
0
--
Kaiser
Colloseum
19613556
0
--
Heavy
Storm
85602018
0
--
Last
Will
46411259
0
--
Metamorphosis
74191942
0
--
Painful
Choice
67169062
0
--
Pot
of
Avarice
55144522
0
--
Pot
of
greed
34906152
0
--
Mass
Driver
41482598
0
--
Mirage
of
Nightmare
70828912
0
--
Premature
Burial
45986603
0
--
Snatch
Steal
46448938
0
--
Spellbook
of
Judgement
27770341
0
--
Super
Rejuvenation
42829885
0
--
The
Forceful
Sentry
11110587
0
--
That
Grass
Looks
Greener
94220427
0
--
Rank
-
Up
-
Magic
Argent
Chaos
Force
54447022
0
--
Soul
Charge
28566710
0
--
Last
Turn
TRAPS
CARDS
27174286
0
--
Return
from
the
Different
Dimension
93016201
0
--
Royal
Oppression
57585212
0
--
Self
-
Destruct
Button
3280747
0
--
Sixth
Sense
35316708
0
--
Time
Seal
64697231
0
--
Trap
Dustshot
80604091
0
--
Ultimate
Offering
80604092
0
--
Ultimate
Offering
5851097
0
--
Vanity
'
s
Emptiness
#Limited TCG
7902349
1
--
Left
Arm
of
the
forbidden
one
MAIN
DECK
MONSTERS
44519536
1
--
Left
Leg
of
the
forbidden
one
70903634
1
--
Right
Arm
of
the
forbidden
one
8124921
1
--
Right
Leg
of
the
forbidden
one
65518099
1
--
Qliporth
Scout
33396948
1
--
Exxodia
the
Forbidden
One
65192027
1
--
Dark
Armed
Dragon
78868119
1
--
Deep
Sea
Diva
64034255
1
--
Genex
Ally
birdman
20758643
1
--
Graff
,
Malembrance
of
the
Burning
Abyss
99177923
1
--
Infernity
Archfiend
68184115
1
--
Inzektor
DragonFly
16226786
1
--
Night
Assailant
88264978
1
--
Red
-
eyes
Darkness
Metal
Dragon
61740673
1
--
Imperial
Order
10802915
1
--
Tour
Guide
From
the
Underworld
81275020
1
--
Speedroid
Terrortop
57143342
1
--
Cir
,
Malebranche
of
the
Burning
Abyss
96570609
1
--
Ether
the
Heavenly
monarch
38572779
1
--
Miscellaneousaurus
78872731
1
--
Zoodiac
Ratpier
4474060
1
--
SPYRAL
Gear
-
Drone
78080961
1
--
SPYRAL
Quik
-
Fix
68819554
1
--
Performage
Damage
Juggler
58984738
1
--
Dinomight
Knight
,
the
True
Dracofighter
45222299
1
--
Evigishki
Gustkraken
11877465
1
--
Evigishki
Mind
Augus
90307777
1
--
Shurit
,
Strategist
of
the
Nekroz
89463537
1
--
Nekroz
of
Unicore
40044918
1
--
Elemental
Hero
Stratos
33508719
1
--
Morphing
Jar
28985331
1
--
Armageddon
Knight
14536035
1
--
Dark
Grepher
69015963
1
--
Cyber
Stein
82301904
1
--
Chaos
Emperor
Dragon
-
Envoy
of
the
End
18239909
1
--
Ignister
Prominence
,
the
Blasting
Dracoslayer
EXTRA
DECK
MONSTERS
20366274
1
--
El
Shaddoll
Construct
48063985
1
--
Ritual
Beast
Ulti
-
Cannahawk
39512984
1
--
Gem
-
Knight
Master
Diamond
70583986
1
--
Dewloren
,
Tiger
King
of
the
Ice
Barrier
52687916
1
--
Trishula
,
Dragon
of
the
Ice
Barrier
27552504
1
--
Beatrice
,
Lady
of
Eternal
24094258
1
--
Heavymetalfoes
Electrumite
74586817
1
--
Psy
-
Framelord
Omega
14087893
1
--
Book
of
Moon
SPELLS
CARDS
81674782
1
--
Dimensional
Fissure
95308449
1
--
Final
Countdown
81439173
1
--
Foolish
Burial
66957584
1
--
Infernity
Launcher
43040603
1
--
Monster
Gate
33782437
1
--
One
Day
of
Peace
2295440
1
--
One
for
One
12580477
1
--
Raigeki
53129443
1
--
Dark
Hole
32807846
1
--
Reinforcement
of
the
Army
74845897
1
--
Rekindling
72405967
1
--
Royal
Tribute
45305419
1
--
Symbol
of
Heritage
14733538
1
--
Draco
Face
-
off
73468603
1
--
Set
Rotation
58577036
1
--
Reasoning
27970830
1
--
Gateway
of
the
Six
7394770
1
--
Brilliant
Fusion
70368879
1
--
Upstart
Goblin
83764718
1
--
Monster
Reborn
83764719
1
--
Monster
Reborn
71344451
1
--
Slash
Draw
75500286
1
--
Gold
Sarcophagus
67723438
1
--
Emergency
Teleporter
22842126
1
--
Phanteism
of
the
Monarchs
15854426
1
--
Divine
Wind
of
the
Mist
Valley
54631665
1
--
SPYRAL
Resort
71650854
1
--
Magical
Mid
-
Breaker
Field
91623717
1
--
Chain
Strike
8949584
1
--
A
Hero
Lives
72892473
1
--
Card
Destruction
52340444
1
--
Sky
Striker
Mecha
-
Hornet
Drones
48130397
1
--
Super
Polymerization
73915051
1
--
Scapegoat
32723153
1
--
Magical
Explosion
--
TRAP
CARDS
35125879
1
--
True
King
'
s
Return
82732705
1
--
Skill
Drain
73599290
1
--
Soul
Drain
30241314
1
--
Macro
Cosmos
17078030
1
--
Wall
of
Revealing
light
84749824
1
--
Solemn
Warning
41420027
1
--
Solemn
Judgement
#Semi limited TCG
92746535
2
--
Luster
Pendulum
,
the
Dracoslayer
28297833
2
--
Necroface
9411399
2
--
Destiny
HERO
-
Malicious
73628505
2
--
Terraforming
!
2018
.
12
TCG
#forbidden
05043010
0
--ファイアウォール・ドラゴン
...
...
ocgcore
@
e1b32399
Subproject commit
bbc8e973e3d206d51d1be3ddd201cf071e517ba
1
Subproject commit
e1b3239967a34da9f7bcd42a62778e785fbaf32
1
script
@
2ce1259b
Subproject commit
d38fcb65d5b94661b84fc469415cc600a06a2ba0
Subproject commit
2ce1259b08b57f15f636e99a6a02172cbf0dffd3
strings.conf
View file @
c9264cdc
...
...
@@ -858,7 +858,7 @@
!
setname
0
xd4
伯吉斯异兽 バージェストマ
!
setname
0
xd5
但丁 ダンテ
!
setname
0
xd6
破坏剑 破壊剣
!
setname
0
xd7
巴斯达·布雷达
バスター・ブレイダー
!
setname
0
xd7
破坏之剑士
バスター・ブレイダー
!
setname
0
xd8
雾动机龙 ダイナミスト
!
setname
0
xd9
不知火
!
setname
0
x10d9
妖刀-不知火 妖刀-不知火
...
...
@@ -952,3 +952,4 @@
!
setname
0
x123
蔷薇龙 ローズ・ドラゴン
!
setname
0
x124
机械天使 機械天使
!
setname
0
x125
笑容 スマイル
!
setname
0
x126
时间怪盗
Time
Thief
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment