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
12a527b6
Commit
12a527b6
authored
Nov 22, 2015
by
mercury233
Browse files
Options
Browse Files
Download
Plain Diff
Merge
https://github.com/Fluorohydride/ygopro
into server
parents
880d484b
58a892a7
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
55 additions
and
37 deletions
+55
-37
gframe/drawing.cpp
gframe/drawing.cpp
+7
-1
gframe/duelclient.cpp
gframe/duelclient.cpp
+15
-3
gframe/game.cpp
gframe/game.cpp
+9
-9
gframe/menu_handler.cpp
gframe/menu_handler.cpp
+0
-1
gframe/replay_mode.cpp
gframe/replay_mode.cpp
+8
-8
gframe/single_duel.cpp
gframe/single_duel.cpp
+4
-4
gframe/tag_duel.cpp
gframe/tag_duel.cpp
+4
-4
ocgcore
ocgcore
+1
-1
script
script
+1
-1
strings.conf
strings.conf
+6
-5
No files found.
gframe/drawing.cpp
View file @
12a527b6
...
@@ -920,10 +920,12 @@ void Game::DrawDeckBd() {
...
@@ -920,10 +920,12 @@ void Game::DrawDeckBd() {
driver
->
draw2DRectangle
(
0x80000000
,
recti
(
806
,
164
+
i
*
66
,
1019
,
230
+
i
*
66
));
driver
->
draw2DRectangle
(
0x80000000
,
recti
(
806
,
164
+
i
*
66
,
1019
,
230
+
i
*
66
));
DrawThumb
(
ptr
,
position2di
(
810
,
165
+
i
*
66
),
deckBuilder
.
filterList
);
DrawThumb
(
ptr
,
position2di
(
810
,
165
+
i
*
66
),
deckBuilder
.
filterList
);
if
(
ptr
->
second
.
type
&
TYPE_MONSTER
)
{
if
(
ptr
->
second
.
type
&
TYPE_MONSTER
)
{
int
form
=
0x2605
;
if
(
ptr
->
second
.
type
&
TYPE_XYZ
)
++
form
;
myswprintf
(
textBuffer
,
L"%ls"
,
dataManager
.
GetName
(
ptr
->
first
));
myswprintf
(
textBuffer
,
L"%ls"
,
dataManager
.
GetName
(
ptr
->
first
));
textFont
->
draw
(
textBuffer
,
recti
(
859
,
164
+
i
*
66
,
955
,
185
+
i
*
66
),
0xff000000
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
859
,
164
+
i
*
66
,
955
,
185
+
i
*
66
),
0xff000000
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
860
,
165
+
i
*
66
,
955
,
185
+
i
*
66
),
0xffffffff
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
860
,
165
+
i
*
66
,
955
,
185
+
i
*
66
),
0xffffffff
,
false
,
false
);
myswprintf
(
textBuffer
,
L"%ls/%ls
\x2605
%d"
,
dataManager
.
FormatAttribute
(
ptr
->
second
.
attribute
),
dataManager
.
FormatRace
(
ptr
->
second
.
race
)
,
ptr
->
second
.
level
);
myswprintf
(
textBuffer
,
L"%ls/%ls
%c%d"
,
dataManager
.
FormatAttribute
(
ptr
->
second
.
attribute
),
dataManager
.
FormatRace
(
ptr
->
second
.
race
),
form
,
ptr
->
second
.
level
);
textFont
->
draw
(
textBuffer
,
recti
(
859
,
186
+
i
*
66
,
955
,
207
+
i
*
66
),
0xff000000
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
859
,
186
+
i
*
66
,
955
,
207
+
i
*
66
),
0xff000000
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
860
,
187
+
i
*
66
,
955
,
207
+
i
*
66
),
0xffffffff
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
860
,
187
+
i
*
66
,
955
,
207
+
i
*
66
),
0xffffffff
,
false
,
false
);
if
(
ptr
->
second
.
attack
<
0
&&
ptr
->
second
.
defence
<
0
)
if
(
ptr
->
second
.
attack
<
0
&&
ptr
->
second
.
defence
<
0
)
...
@@ -942,6 +944,8 @@ void Game::DrawDeckBd() {
...
@@ -942,6 +944,8 @@ void Game::DrawDeckBd() {
wcscat
(
textBuffer
,
L" [OCG]"
);
wcscat
(
textBuffer
,
L" [OCG]"
);
else
if
((
ptr
->
second
.
ot
&
0x3
)
==
2
)
else
if
((
ptr
->
second
.
ot
&
0x3
)
==
2
)
wcscat
(
textBuffer
,
L" [TCG]"
);
wcscat
(
textBuffer
,
L" [TCG]"
);
else
if
((
ptr
->
second
.
ot
&
0x7
)
==
4
)
wcscat
(
textBuffer
,
L" [Custom]"
);
textFont
->
draw
(
textBuffer
,
recti
(
859
,
208
+
i
*
66
,
955
,
229
+
i
*
66
),
0xff000000
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
859
,
208
+
i
*
66
,
955
,
229
+
i
*
66
),
0xff000000
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
860
,
209
+
i
*
66
,
955
,
229
+
i
*
66
),
0xffffffff
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
860
,
209
+
i
*
66
,
955
,
229
+
i
*
66
),
0xffffffff
,
false
,
false
);
}
else
{
}
else
{
...
@@ -956,6 +960,8 @@ void Game::DrawDeckBd() {
...
@@ -956,6 +960,8 @@ void Game::DrawDeckBd() {
wcscat
(
textBuffer
,
L"[OCG]"
);
wcscat
(
textBuffer
,
L"[OCG]"
);
else
if
((
ptr
->
second
.
ot
&
0x3
)
==
2
)
else
if
((
ptr
->
second
.
ot
&
0x3
)
==
2
)
wcscat
(
textBuffer
,
L"[TCG]"
);
wcscat
(
textBuffer
,
L"[TCG]"
);
else
if
((
ptr
->
second
.
ot
&
0x7
)
==
4
)
wcscat
(
textBuffer
,
L"[Custom]"
);
textFont
->
draw
(
textBuffer
,
recti
(
859
,
208
+
i
*
66
,
955
,
229
+
i
*
66
),
0xff000000
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
859
,
208
+
i
*
66
,
955
,
229
+
i
*
66
),
0xff000000
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
860
,
209
+
i
*
66
,
955
,
229
+
i
*
66
),
0xffffffff
,
false
,
false
);
textFont
->
draw
(
textBuffer
,
recti
(
860
,
209
+
i
*
66
,
955
,
229
+
i
*
66
),
0xffffffff
,
false
,
false
);
}
}
...
...
gframe/duelclient.cpp
View file @
12a527b6
...
@@ -681,6 +681,12 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
...
@@ -681,6 +681,12 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
mainGame
->
gMutex
.
Unlock
();
mainGame
->
gMutex
.
Unlock
();
mainGame
->
WaitFrameSignal
(
11
);
mainGame
->
WaitFrameSignal
(
11
);
}
}
if
(
mainGame
->
wOptions
->
isVisible
())
{
mainGame
->
gMutex
.
Lock
();
mainGame
->
HideElement
(
mainGame
->
wOptions
);
mainGame
->
gMutex
.
Unlock
();
mainGame
->
WaitFrameSignal
(
11
);
}
}
}
if
(
mainGame
->
dInfo
.
time_player
==
1
)
if
(
mainGame
->
dInfo
.
time_player
==
1
)
mainGame
->
dInfo
.
time_player
=
2
;
mainGame
->
dInfo
.
time_player
=
2
;
...
@@ -3085,28 +3091,34 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
...
@@ -3085,28 +3091,34 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
mainGame
->
dField
.
AddCard
(
ccard
,
p
,
LOCATION_DECK
,
seq
);
mainGame
->
dField
.
AddCard
(
ccard
,
p
,
LOCATION_DECK
,
seq
);
mainGame
->
dField
.
GetCardLocation
(
ccard
,
&
ccard
->
curPos
,
&
ccard
->
curRot
,
true
);
mainGame
->
dField
.
GetCardLocation
(
ccard
,
&
ccard
->
curPos
,
&
ccard
->
curRot
,
true
);
}
}
val
=
BufferIO
::
ReadInt8
(
pbuf
);
val
=
BufferIO
::
ReadInt8
(
pbuf
);
for
(
int
seq
=
0
;
seq
<
val
;
++
seq
)
{
for
(
int
seq
=
0
;
seq
<
val
;
++
seq
)
{
ClientCard
*
ccard
=
new
ClientCard
;
ClientCard
*
ccard
=
new
ClientCard
;
mainGame
->
dField
.
AddCard
(
ccard
,
p
,
LOCATION_HAND
,
seq
);
mainGame
->
dField
.
AddCard
(
ccard
,
p
,
LOCATION_HAND
,
seq
);
}
// Use another loop to refresh the hand locations to prevent incorrect positioning
for
(
int
seq
=
0
;
seq
<
val
;
++
seq
)
{
ClientCard
*
ccard
=
mainGame
->
dField
.
hand
[
p
][
seq
];
mainGame
->
dField
.
GetCardLocation
(
ccard
,
&
ccard
->
curPos
,
&
ccard
->
curRot
,
true
);
mainGame
->
dField
.
GetCardLocation
(
ccard
,
&
ccard
->
curPos
,
&
ccard
->
curRot
,
true
);
}
}
val
=
BufferIO
::
ReadInt8
(
pbuf
);
val
=
BufferIO
::
ReadInt8
(
pbuf
);
for
(
int
seq
=
0
;
seq
<
val
;
++
seq
)
{
for
(
int
seq
=
0
;
seq
<
val
;
++
seq
)
{
ClientCard
*
ccard
=
new
ClientCard
;
ClientCard
*
ccard
=
new
ClientCard
;
mainGame
->
dField
.
AddCard
(
ccard
,
p
,
LOCATION_
EXTRA
,
seq
);
mainGame
->
dField
.
AddCard
(
ccard
,
p
,
LOCATION_
GRAVE
,
seq
);
mainGame
->
dField
.
GetCardLocation
(
ccard
,
&
ccard
->
curPos
,
&
ccard
->
curRot
,
true
);
mainGame
->
dField
.
GetCardLocation
(
ccard
,
&
ccard
->
curPos
,
&
ccard
->
curRot
,
true
);
}
}
val
=
BufferIO
::
ReadInt8
(
pbuf
);
val
=
BufferIO
::
ReadInt8
(
pbuf
);
for
(
int
seq
=
0
;
seq
<
val
;
++
seq
)
{
for
(
int
seq
=
0
;
seq
<
val
;
++
seq
)
{
ClientCard
*
ccard
=
new
ClientCard
;
ClientCard
*
ccard
=
new
ClientCard
;
mainGame
->
dField
.
AddCard
(
ccard
,
p
,
LOCATION_
GRAVE
,
seq
);
mainGame
->
dField
.
AddCard
(
ccard
,
p
,
LOCATION_
REMOVED
,
seq
);
mainGame
->
dField
.
GetCardLocation
(
ccard
,
&
ccard
->
curPos
,
&
ccard
->
curRot
,
true
);
mainGame
->
dField
.
GetCardLocation
(
ccard
,
&
ccard
->
curPos
,
&
ccard
->
curRot
,
true
);
}
}
val
=
BufferIO
::
ReadInt8
(
pbuf
);
val
=
BufferIO
::
ReadInt8
(
pbuf
);
for
(
int
seq
=
0
;
seq
<
val
;
++
seq
)
{
for
(
int
seq
=
0
;
seq
<
val
;
++
seq
)
{
ClientCard
*
ccard
=
new
ClientCard
;
ClientCard
*
ccard
=
new
ClientCard
;
mainGame
->
dField
.
AddCard
(
ccard
,
p
,
LOCATION_
REMOVED
,
seq
);
mainGame
->
dField
.
AddCard
(
ccard
,
p
,
LOCATION_
EXTRA
,
seq
);
mainGame
->
dField
.
GetCardLocation
(
ccard
,
&
ccard
->
curPos
,
&
ccard
->
curRot
,
true
);
mainGame
->
dField
.
GetCardLocation
(
ccard
,
&
ccard
->
curPos
,
&
ccard
->
curRot
,
true
);
}
}
val
=
BufferIO
::
ReadInt8
(
pbuf
);
val
=
BufferIO
::
ReadInt8
(
pbuf
);
...
...
gframe/game.cpp
View file @
12a527b6
...
@@ -936,19 +936,19 @@ void Game::ShowCardInfo(int code) {
...
@@ -936,19 +936,19 @@ void Game::ShowCardInfo(int code) {
if
(
cd
.
type
&
TYPE_MONSTER
)
{
if
(
cd
.
type
&
TYPE_MONSTER
)
{
myswprintf
(
formatBuffer
,
L"[%ls] %ls/%ls"
,
dataManager
.
FormatType
(
cd
.
type
),
dataManager
.
FormatRace
(
cd
.
race
),
dataManager
.
FormatAttribute
(
cd
.
attribute
));
myswprintf
(
formatBuffer
,
L"[%ls] %ls/%ls"
,
dataManager
.
FormatType
(
cd
.
type
),
dataManager
.
FormatRace
(
cd
.
race
),
dataManager
.
FormatAttribute
(
cd
.
attribute
));
stInfo
->
setText
(
formatBuffer
);
stInfo
->
setText
(
formatBuffer
);
formatBuffer
[
0
]
=
L'['
;
int
form
=
0x2605
;
for
(
unsigned
int
i
=
1
;
i
<=
cd
.
level
;
++
i
)
if
(
cd
.
type
&
TYPE_XYZ
)
++
form
;
formatBuffer
[
i
]
=
0x2605
;
myswprintf
(
formatBuffer
,
L"[%c%d] "
,
form
,
cd
.
level
);
formatBuffer
[
cd
.
level
+
1
]
=
L']'
;
wchar_t
adBuffer
[
16
];
formatBuffer
[
cd
.
level
+
2
]
=
L' '
;
if
(
cd
.
attack
<
0
&&
cd
.
defence
<
0
)
if
(
cd
.
attack
<
0
&&
cd
.
defence
<
0
)
myswprintf
(
&
formatBuffer
[
cd
.
level
+
3
]
,
L"?/?"
);
myswprintf
(
adBuffer
,
L"?/?"
);
else
if
(
cd
.
attack
<
0
)
else
if
(
cd
.
attack
<
0
)
myswprintf
(
&
formatBuffer
[
cd
.
level
+
3
]
,
L"?/%d"
,
cd
.
defence
);
myswprintf
(
adBuffer
,
L"?/%d"
,
cd
.
defence
);
else
if
(
cd
.
defence
<
0
)
else
if
(
cd
.
defence
<
0
)
myswprintf
(
&
formatBuffer
[
cd
.
level
+
3
]
,
L"%d/?"
,
cd
.
attack
);
myswprintf
(
adBuffer
,
L"%d/?"
,
cd
.
attack
);
else
else
myswprintf
(
&
formatBuffer
[
cd
.
level
+
3
],
L"%d/%d"
,
cd
.
attack
,
cd
.
defence
);
myswprintf
(
adBuffer
,
L"%d/%d"
,
cd
.
attack
,
cd
.
defence
);
wcscat
(
formatBuffer
,
adBuffer
);
if
(
cd
.
type
&
TYPE_PENDULUM
)
{
if
(
cd
.
type
&
TYPE_PENDULUM
)
{
wchar_t
scaleBuffer
[
16
];
wchar_t
scaleBuffer
[
16
];
myswprintf
(
scaleBuffer
,
L" %d/%d"
,
cd
.
lscale
,
cd
.
rscale
);
myswprintf
(
scaleBuffer
,
L" %d/%d"
,
cd
.
lscale
,
cd
.
rscale
);
...
...
gframe/menu_handler.cpp
View file @
12a527b6
...
@@ -54,7 +54,6 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
...
@@ -54,7 +54,6 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
inet_ntop
(
AF_INET
,
&
(((
struct
sockaddr_in
*
)
servinfo
->
ai_addr
)
->
sin_addr
),
ip
,
20
);
inet_ntop
(
AF_INET
,
&
(((
struct
sockaddr_in
*
)
servinfo
->
ai_addr
)
->
sin_addr
),
ip
,
20
);
freeaddrinfo
(
servinfo
);
freeaddrinfo
(
servinfo
);
#else
#else
//int status;
char
hostname
[
100
];
char
hostname
[
100
];
char
ip
[
20
];
char
ip
[
20
];
const
wchar_t
*
pstr
=
mainGame
->
ebJoinIP
->
getText
();
const
wchar_t
*
pstr
=
mainGame
->
ebJoinIP
->
getText
();
...
...
gframe/replay_mode.cpp
View file @
12a527b6
...
@@ -86,25 +86,25 @@ int ReplayMode::ReplayThread(void* param) {
...
@@ -86,25 +86,25 @@ int ReplayMode::ReplayThread(void* param) {
if
(
!
(
opt
&
DUEL_TAG_MODE
))
{
if
(
!
(
opt
&
DUEL_TAG_MODE
))
{
int
main
=
cur_replay
.
ReadInt32
();
int
main
=
cur_replay
.
ReadInt32
();
for
(
int
i
=
0
;
i
<
main
;
++
i
)
for
(
int
i
=
0
;
i
<
main
;
++
i
)
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
0
,
0
,
LOCATION_DECK
,
0
,
0
);
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
0
,
0
,
LOCATION_DECK
,
0
,
POS_FACEDOWN_DEFENCE
);
int
extra
=
cur_replay
.
ReadInt32
();
int
extra
=
cur_replay
.
ReadInt32
();
for
(
int
i
=
0
;
i
<
extra
;
++
i
)
for
(
int
i
=
0
;
i
<
extra
;
++
i
)
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
0
,
0
,
LOCATION_EXTRA
,
0
,
0
);
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
0
,
0
,
LOCATION_EXTRA
,
0
,
POS_FACEDOWN_DEFENCE
);
mainGame
->
dField
.
Initial
(
0
,
main
,
extra
);
mainGame
->
dField
.
Initial
(
0
,
main
,
extra
);
main
=
cur_replay
.
ReadInt32
();
main
=
cur_replay
.
ReadInt32
();
for
(
int
i
=
0
;
i
<
main
;
++
i
)
for
(
int
i
=
0
;
i
<
main
;
++
i
)
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
1
,
1
,
LOCATION_DECK
,
0
,
0
);
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
1
,
1
,
LOCATION_DECK
,
0
,
POS_FACEDOWN_DEFENCE
);
extra
=
cur_replay
.
ReadInt32
();
extra
=
cur_replay
.
ReadInt32
();
for
(
int
i
=
0
;
i
<
extra
;
++
i
)
for
(
int
i
=
0
;
i
<
extra
;
++
i
)
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
1
,
1
,
LOCATION_EXTRA
,
0
,
0
);
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
1
,
1
,
LOCATION_EXTRA
,
0
,
POS_FACEDOWN_DEFENCE
);
mainGame
->
dField
.
Initial
(
1
,
main
,
extra
);
mainGame
->
dField
.
Initial
(
1
,
main
,
extra
);
}
else
{
}
else
{
int
main
=
cur_replay
.
ReadInt32
();
int
main
=
cur_replay
.
ReadInt32
();
for
(
int
i
=
0
;
i
<
main
;
++
i
)
for
(
int
i
=
0
;
i
<
main
;
++
i
)
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
0
,
0
,
LOCATION_DECK
,
0
,
0
);
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
0
,
0
,
LOCATION_DECK
,
0
,
POS_FACEDOWN_DEFENCE
);
int
extra
=
cur_replay
.
ReadInt32
();
int
extra
=
cur_replay
.
ReadInt32
();
for
(
int
i
=
0
;
i
<
extra
;
++
i
)
for
(
int
i
=
0
;
i
<
extra
;
++
i
)
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
0
,
0
,
LOCATION_EXTRA
,
0
,
0
);
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
0
,
0
,
LOCATION_EXTRA
,
0
,
POS_FACEDOWN_DEFENCE
);
mainGame
->
dField
.
Initial
(
0
,
main
,
extra
);
mainGame
->
dField
.
Initial
(
0
,
main
,
extra
);
main
=
cur_replay
.
ReadInt32
();
main
=
cur_replay
.
ReadInt32
();
for
(
int
i
=
0
;
i
<
main
;
++
i
)
for
(
int
i
=
0
;
i
<
main
;
++
i
)
...
@@ -114,10 +114,10 @@ int ReplayMode::ReplayThread(void* param) {
...
@@ -114,10 +114,10 @@ int ReplayMode::ReplayThread(void* param) {
new_tag_card
(
pduel
,
cur_replay
.
ReadInt32
(),
0
,
LOCATION_EXTRA
);
new_tag_card
(
pduel
,
cur_replay
.
ReadInt32
(),
0
,
LOCATION_EXTRA
);
main
=
cur_replay
.
ReadInt32
();
main
=
cur_replay
.
ReadInt32
();
for
(
int
i
=
0
;
i
<
main
;
++
i
)
for
(
int
i
=
0
;
i
<
main
;
++
i
)
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
1
,
1
,
LOCATION_DECK
,
0
,
0
);
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
1
,
1
,
LOCATION_DECK
,
0
,
POS_FACEDOWN_DEFENCE
);
extra
=
cur_replay
.
ReadInt32
();
extra
=
cur_replay
.
ReadInt32
();
for
(
int
i
=
0
;
i
<
extra
;
++
i
)
for
(
int
i
=
0
;
i
<
extra
;
++
i
)
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
1
,
1
,
LOCATION_EXTRA
,
0
,
0
);
new_card
(
pduel
,
cur_replay
.
ReadInt32
(),
1
,
1
,
LOCATION_EXTRA
,
0
,
POS_FACEDOWN_DEFENCE
);
mainGame
->
dField
.
Initial
(
1
,
main
,
extra
);
mainGame
->
dField
.
Initial
(
1
,
main
,
extra
);
main
=
cur_replay
.
ReadInt32
();
main
=
cur_replay
.
ReadInt32
();
for
(
int
i
=
0
;
i
<
main
;
++
i
)
for
(
int
i
=
0
;
i
<
main
;
++
i
)
...
...
gframe/single_duel.cpp
View file @
12a527b6
...
@@ -459,22 +459,22 @@ void SingleDuel::TPResult(DuelPlayer* dp, unsigned char tp) {
...
@@ -459,22 +459,22 @@ void SingleDuel::TPResult(DuelPlayer* dp, unsigned char tp) {
last_replay
.
Flush
();
last_replay
.
Flush
();
last_replay
.
WriteInt32
(
pdeck
[
0
].
main
.
size
(),
false
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
main
.
size
(),
false
);
for
(
int32
i
=
(
int32
)
pdeck
[
0
].
main
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
for
(
int32
i
=
(
int32
)
pdeck
[
0
].
main
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
new_card
(
pduel
,
pdeck
[
0
].
main
[
i
]
->
first
,
0
,
0
,
LOCATION_DECK
,
0
,
0
);
new_card
(
pduel
,
pdeck
[
0
].
main
[
i
]
->
first
,
0
,
0
,
LOCATION_DECK
,
0
,
POS_FACEDOWN_DEFENCE
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
main
[
i
]
->
first
,
false
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
main
[
i
]
->
first
,
false
);
}
}
last_replay
.
WriteInt32
(
pdeck
[
0
].
extra
.
size
(),
false
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
extra
.
size
(),
false
);
for
(
int32
i
=
(
int32
)
pdeck
[
0
].
extra
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
for
(
int32
i
=
(
int32
)
pdeck
[
0
].
extra
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
new_card
(
pduel
,
pdeck
[
0
].
extra
[
i
]
->
first
,
0
,
0
,
LOCATION_EXTRA
,
0
,
0
);
new_card
(
pduel
,
pdeck
[
0
].
extra
[
i
]
->
first
,
0
,
0
,
LOCATION_EXTRA
,
0
,
POS_FACEDOWN_DEFENCE
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
extra
[
i
]
->
first
,
false
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
extra
[
i
]
->
first
,
false
);
}
}
last_replay
.
WriteInt32
(
pdeck
[
1
].
main
.
size
(),
false
);
last_replay
.
WriteInt32
(
pdeck
[
1
].
main
.
size
(),
false
);
for
(
int32
i
=
(
int32
)
pdeck
[
1
].
main
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
for
(
int32
i
=
(
int32
)
pdeck
[
1
].
main
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
new_card
(
pduel
,
pdeck
[
1
].
main
[
i
]
->
first
,
1
,
1
,
LOCATION_DECK
,
0
,
0
);
new_card
(
pduel
,
pdeck
[
1
].
main
[
i
]
->
first
,
1
,
1
,
LOCATION_DECK
,
0
,
POS_FACEDOWN_DEFENCE
);
last_replay
.
WriteInt32
(
pdeck
[
1
].
main
[
i
]
->
first
,
false
);
last_replay
.
WriteInt32
(
pdeck
[
1
].
main
[
i
]
->
first
,
false
);
}
}
last_replay
.
WriteInt32
(
pdeck
[
1
].
extra
.
size
(),
false
);
last_replay
.
WriteInt32
(
pdeck
[
1
].
extra
.
size
(),
false
);
for
(
int32
i
=
(
int32
)
pdeck
[
1
].
extra
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
for
(
int32
i
=
(
int32
)
pdeck
[
1
].
extra
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
new_card
(
pduel
,
pdeck
[
1
].
extra
[
i
]
->
first
,
1
,
1
,
LOCATION_EXTRA
,
0
,
0
);
new_card
(
pduel
,
pdeck
[
1
].
extra
[
i
]
->
first
,
1
,
1
,
LOCATION_EXTRA
,
0
,
POS_FACEDOWN_DEFENCE
);
last_replay
.
WriteInt32
(
pdeck
[
1
].
extra
[
i
]
->
first
,
false
);
last_replay
.
WriteInt32
(
pdeck
[
1
].
extra
[
i
]
->
first
,
false
);
}
}
last_replay
.
Flush
();
last_replay
.
Flush
();
...
...
gframe/tag_duel.cpp
View file @
12a527b6
...
@@ -429,12 +429,12 @@ void TagDuel::TPResult(DuelPlayer* dp, unsigned char tp) {
...
@@ -429,12 +429,12 @@ void TagDuel::TPResult(DuelPlayer* dp, unsigned char tp) {
//
//
last_replay
.
WriteInt32
(
pdeck
[
0
].
main
.
size
(),
false
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
main
.
size
(),
false
);
for
(
int32
i
=
(
int32
)
pdeck
[
0
].
main
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
for
(
int32
i
=
(
int32
)
pdeck
[
0
].
main
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
new_card
(
pduel
,
pdeck
[
0
].
main
[
i
]
->
first
,
0
,
0
,
LOCATION_DECK
,
0
,
0
);
new_card
(
pduel
,
pdeck
[
0
].
main
[
i
]
->
first
,
0
,
0
,
LOCATION_DECK
,
0
,
POS_FACEDOWN_DEFENCE
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
main
[
i
]
->
first
,
false
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
main
[
i
]
->
first
,
false
);
}
}
last_replay
.
WriteInt32
(
pdeck
[
0
].
extra
.
size
(),
false
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
extra
.
size
(),
false
);
for
(
int32
i
=
(
int32
)
pdeck
[
0
].
extra
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
for
(
int32
i
=
(
int32
)
pdeck
[
0
].
extra
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
new_card
(
pduel
,
pdeck
[
0
].
extra
[
i
]
->
first
,
0
,
0
,
LOCATION_EXTRA
,
0
,
0
);
new_card
(
pduel
,
pdeck
[
0
].
extra
[
i
]
->
first
,
0
,
0
,
LOCATION_EXTRA
,
0
,
POS_FACEDOWN_DEFENCE
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
extra
[
i
]
->
first
,
false
);
last_replay
.
WriteInt32
(
pdeck
[
0
].
extra
[
i
]
->
first
,
false
);
}
}
//
//
...
@@ -451,12 +451,12 @@ void TagDuel::TPResult(DuelPlayer* dp, unsigned char tp) {
...
@@ -451,12 +451,12 @@ void TagDuel::TPResult(DuelPlayer* dp, unsigned char tp) {
//
//
last_replay
.
WriteInt32
(
pdeck
[
3
].
main
.
size
(),
false
);
last_replay
.
WriteInt32
(
pdeck
[
3
].
main
.
size
(),
false
);
for
(
int32
i
=
(
int32
)
pdeck
[
3
].
main
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
for
(
int32
i
=
(
int32
)
pdeck
[
3
].
main
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
new_card
(
pduel
,
pdeck
[
3
].
main
[
i
]
->
first
,
1
,
1
,
LOCATION_DECK
,
0
,
0
);
new_card
(
pduel
,
pdeck
[
3
].
main
[
i
]
->
first
,
1
,
1
,
LOCATION_DECK
,
0
,
POS_FACEDOWN_DEFENCE
);
last_replay
.
WriteInt32
(
pdeck
[
3
].
main
[
i
]
->
first
,
false
);
last_replay
.
WriteInt32
(
pdeck
[
3
].
main
[
i
]
->
first
,
false
);
}
}
last_replay
.
WriteInt32
(
pdeck
[
3
].
extra
.
size
(),
false
);
last_replay
.
WriteInt32
(
pdeck
[
3
].
extra
.
size
(),
false
);
for
(
int32
i
=
(
int32
)
pdeck
[
3
].
extra
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
for
(
int32
i
=
(
int32
)
pdeck
[
3
].
extra
.
size
()
-
1
;
i
>=
0
;
--
i
)
{
new_card
(
pduel
,
pdeck
[
3
].
extra
[
i
]
->
first
,
1
,
1
,
LOCATION_EXTRA
,
0
,
0
);
new_card
(
pduel
,
pdeck
[
3
].
extra
[
i
]
->
first
,
1
,
1
,
LOCATION_EXTRA
,
0
,
POS_FACEDOWN_DEFENCE
);
last_replay
.
WriteInt32
(
pdeck
[
3
].
extra
[
i
]
->
first
,
false
);
last_replay
.
WriteInt32
(
pdeck
[
3
].
extra
[
i
]
->
first
,
false
);
}
}
//
//
...
...
ocgcore
@
1f716180
Subproject commit
febeec6fcc51217d2d4f877911304021a6f8f882
Subproject commit
1f7161806ce0ce348a7aa882faf372cc014786c8
script
@
53a774f8
Subproject commit
3f155a114706ec58ae1243e04201ad792756c0e6
Subproject commit
53a774f84c4896ab576c66661c0243243aa8fef0
strings.conf
View file @
12a527b6
...
@@ -75,13 +75,13 @@
...
@@ -75,13 +75,13 @@
!
system
510
请选择要盖放的卡
!
system
510
请选择要盖放的卡
!
system
511
请选择融合召唤的素材
!
system
511
请选择融合召唤的素材
!
system
512
请选择同调召唤的素材
!
system
512
请选择同调召唤的素材
!
system
513
请选择超
维
召唤的素材
!
system
513
请选择超
量
召唤的素材
!
system
514
请选择表侧表示的卡
!
system
514
请选择表侧表示的卡
!
system
515
请选择里侧表示的卡
!
system
515
请选择里侧表示的卡
!
system
516
请选择攻击表示的怪兽
!
system
516
请选择攻击表示的怪兽
!
system
517
请选择守备表示的怪兽
!
system
517
请选择守备表示的怪兽
!
system
518
请选择要装备的卡
!
system
518
请选择要装备的卡
!
system
519
请选择要取除的超
维
素材
!
system
519
请选择要取除的超
量
素材
!
system
520
请选择要改变控制权的怪兽
!
system
520
请选择要改变控制权的怪兽
!
system
521
请选择要代替破坏的卡
!
system
521
请选择要代替破坏的卡
!
system
522
请选择表侧攻击表示的怪兽
!
system
522
请选择表侧攻击表示的怪兽
...
@@ -94,7 +94,7 @@
...
@@ -94,7 +94,7 @@
!
system
529
请选择自己的卡
!
system
529
请选择自己的卡
!
system
530
请选择对方的卡
!
system
530
请选择对方的卡
!
system
531
请选择上级召唤用需要解放的怪兽:
!
system
531
请选择上级召唤用需要解放的怪兽:
!
system
532
请选择要取除超
维
素材的怪兽
!
system
532
请选择要取除超
量
素材的怪兽
!
system
550
请选择要发动的效果
!
system
550
请选择要发动的效果
!
system
551
请选择效果的对象
!
system
551
请选择效果的对象
!
system
552
请选择硬币的正反面
!
system
552
请选择硬币的正反面
...
@@ -173,7 +173,7 @@
...
@@ -173,7 +173,7 @@
!
system
1070
反击
!
system
1070
反击
!
system
1071
反转
!
system
1071
反转
!
system
1072
卡通
!
system
1072
卡通
!
system
1073
超
维
!
system
1073
超
量
!
system
1074
灵摆
!
system
1074
灵摆
!
system
1080
(
N
/
A
)
!
system
1080
(
N
/
A
)
#GUI
#GUI
...
@@ -207,7 +207,7 @@
...
@@ -207,7 +207,7 @@
!
system
1127
幸运
!
system
1127
幸运
!
system
1128
融合相关
!
system
1128
融合相关
!
system
1129
同调相关
!
system
1129
同调相关
!
system
1130
超
维
相关
!
system
1130
超
量
相关
!
system
1131
效果无效
!
system
1131
效果无效
#actions
#actions
!
system
1150
发动
!
system
1150
发动
...
@@ -220,6 +220,7 @@
...
@@ -220,6 +220,7 @@
!
system
1157
攻击
!
system
1157
攻击
!
system
1158
查看列表
!
system
1158
查看列表
!
system
1159
当魔法卡放置
!
system
1159
当魔法卡放置
!
system
1160
在灵摆区域发动
#menu
#menu
!
system
1200
联机模式
!
system
1200
联机模式
!
system
1201
残局模式
!
system
1201
残局模式
...
...
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