Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro-2pick
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
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
MyCard
ygopro-2pick
Commits
ab550a4b
Commit
ab550a4b
authored
Sep 12, 2014
by
VanillaSalt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
673e09d5
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
76 additions
and
9 deletions
+76
-9
gframe/client_field.cpp
gframe/client_field.cpp
+54
-0
gframe/client_field.h
gframe/client_field.h
+1
-0
gframe/duelclient.cpp
gframe/duelclient.cpp
+21
-9
No files found.
gframe/client_field.cpp
View file @
ab550a4b
...
@@ -406,6 +406,60 @@ void ClientField::ShowSelectCard(bool buttonok) {
...
@@ -406,6 +406,60 @@ void ClientField::ShowSelectCard(bool buttonok) {
else
mainGame
->
btnSelectOK
->
setVisible
(
false
);
else
mainGame
->
btnSelectOK
->
setVisible
(
false
);
mainGame
->
PopupElement
(
mainGame
->
wCardSelect
);
mainGame
->
PopupElement
(
mainGame
->
wCardSelect
);
}
}
void
ClientField
::
ShowChainCard
()
{
if
(
selectable_cards
.
size
()
<=
5
)
{
int
startpos
=
30
+
125
*
(
5
-
selectable_cards
.
size
())
/
2
;
for
(
size_t
i
=
0
;
i
<
selectable_cards
.
size
();
++
i
)
{
if
(
selectable_cards
[
i
]
->
code
)
mainGame
->
imageLoading
.
insert
(
std
::
make_pair
(
mainGame
->
btnCardSelect
[
i
],
selectable_cards
[
i
]
->
code
));
else
mainGame
->
btnCardSelect
[
i
]
->
setImage
(
imageManager
.
tCover
);
mainGame
->
btnCardSelect
[
i
]
->
setRelativePosition
(
rect
<
s32
>
(
startpos
+
i
*
125
,
55
,
startpos
+
120
+
i
*
125
,
225
));
mainGame
->
btnCardSelect
[
i
]
->
setPressed
(
false
);
mainGame
->
btnCardSelect
[
i
]
->
setVisible
(
true
);
myswprintf
(
formatBuffer
,
L"%ls[%d]"
,
dataManager
.
FormatLocation
(
selectable_cards
[
i
]
->
location
,
selectable_cards
[
i
]
->
sequence
),
selectable_cards
[
i
]
->
sequence
+
1
);
mainGame
->
stCardPos
[
i
]
->
setText
(
formatBuffer
);
mainGame
->
stCardPos
[
i
]
->
setVisible
(
true
);;
if
(
selectable_cards
[
i
]
->
controler
)
mainGame
->
stCardPos
[
i
]
->
setBackgroundColor
(
0xffd0d0d0
);
else
mainGame
->
stCardPos
[
i
]
->
setBackgroundColor
(
0xffffffff
);
mainGame
->
stCardPos
[
i
]
->
setRelativePosition
(
rect
<
s32
>
(
startpos
+
10
+
i
*
125
,
30
,
startpos
+
109
+
i
*
125
,
50
));
}
for
(
int
i
=
selectable_cards
.
size
();
i
<
5
;
++
i
)
{
mainGame
->
btnCardSelect
[
i
]
->
setVisible
(
false
);
mainGame
->
stCardPos
[
i
]
->
setVisible
(
false
);
}
mainGame
->
scrCardList
->
setPos
(
0
);
mainGame
->
scrCardList
->
setVisible
(
false
);
}
else
{
for
(
int
i
=
0
;
i
<
5
;
++
i
)
{
if
(
selectable_cards
[
i
]
->
code
)
mainGame
->
imageLoading
.
insert
(
std
::
make_pair
(
mainGame
->
btnCardSelect
[
i
],
selectable_cards
[
i
]
->
code
));
else
mainGame
->
btnCardSelect
[
i
]
->
setImage
(
imageManager
.
tCover
);
mainGame
->
btnCardSelect
[
i
]
->
setRelativePosition
(
rect
<
s32
>
(
30
+
i
*
125
,
55
,
30
+
120
+
i
*
125
,
225
));
mainGame
->
btnCardSelect
[
i
]
->
setPressed
(
false
);
mainGame
->
btnCardSelect
[
i
]
->
setVisible
(
true
);
myswprintf
(
formatBuffer
,
L"%ls[%d]"
,
dataManager
.
FormatLocation
(
selectable_cards
[
i
]
->
location
,
selectable_cards
[
i
]
->
sequence
),
selectable_cards
[
i
]
->
sequence
+
1
);
mainGame
->
stCardPos
[
i
]
->
setText
(
formatBuffer
);
mainGame
->
stCardPos
[
i
]
->
setVisible
(
true
);
if
(
selectable_cards
[
i
]
->
controler
)
mainGame
->
stCardPos
[
i
]
->
setBackgroundColor
(
0xffd0d0d0
);
else
mainGame
->
stCardPos
[
i
]
->
setBackgroundColor
(
0xffffffff
);
mainGame
->
stCardPos
[
i
]
->
setRelativePosition
(
rect
<
s32
>
(
40
+
i
*
125
,
30
,
139
+
i
*
125
,
50
));
}
mainGame
->
scrCardList
->
setVisible
(
true
);
mainGame
->
scrCardList
->
setMin
(
0
);
mainGame
->
scrCardList
->
setMax
((
selectable_cards
.
size
()
-
5
)
*
10
+
9
);
mainGame
->
scrCardList
->
setPos
(
0
);
}
if
(
!
chain_forced
)
mainGame
->
btnSelectOK
->
setVisible
(
true
);
else
mainGame
->
btnSelectOK
->
setVisible
(
false
);
mainGame
->
PopupElement
(
mainGame
->
wCardSelect
);
}
void
ClientField
::
ReplaySwap
()
{
void
ClientField
::
ReplaySwap
()
{
std
::
swap
(
deck
[
0
],
deck
[
1
]);
std
::
swap
(
deck
[
0
],
deck
[
1
]);
std
::
swap
(
hand
[
0
],
hand
[
1
]);
std
::
swap
(
hand
[
0
],
hand
[
1
]);
...
...
gframe/client_field.h
View file @
ab550a4b
...
@@ -82,6 +82,7 @@ public:
...
@@ -82,6 +82,7 @@ public:
void
ClearSelect
();
void
ClearSelect
();
void
ClearChainSelect
();
void
ClearChainSelect
();
void
ShowSelectCard
(
bool
buttonok
=
false
);
void
ShowSelectCard
(
bool
buttonok
=
false
);
void
ShowChainCard
();
void
ReplaySwap
();
void
ReplaySwap
();
void
RefreshAllCards
();
void
RefreshAllCards
();
...
...
gframe/duelclient.cpp
View file @
ab550a4b
...
@@ -1152,6 +1152,7 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
...
@@ -1152,6 +1152,7 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
/*int hint1 = */
BufferIO
::
ReadInt32
(
pbuf
);
/*int hint1 = */
BufferIO
::
ReadInt32
(
pbuf
);
int
c
,
l
,
s
,
ss
,
desc
;
int
c
,
l
,
s
,
ss
,
desc
;
ClientCard
*
pcard
;
ClientCard
*
pcard
;
bool
panelmode
=
false
;
mainGame
->
dField
.
chain_forced
=
(
forced
!=
0
);
mainGame
->
dField
.
chain_forced
=
(
forced
!=
0
);
mainGame
->
dField
.
activatable_cards
.
clear
();
mainGame
->
dField
.
activatable_cards
.
clear
();
mainGame
->
dField
.
activatable_descs
.
clear
();
mainGame
->
dField
.
activatable_descs
.
clear
();
...
@@ -1168,10 +1169,12 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
...
@@ -1168,10 +1169,12 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
pcard
->
is_selectable
=
true
;
pcard
->
is_selectable
=
true
;
pcard
->
is_selected
=
false
;
pcard
->
is_selected
=
false
;
pcard
->
cmdFlag
|=
COMMAND_ACTIVATE
;
pcard
->
cmdFlag
|=
COMMAND_ACTIVATE
;
if
(
pcard
->
location
==
LOCATION_GRAVE
)
if
(
l
==
LOCATION_GRAVE
)
mainGame
->
dField
.
grave_act
=
true
;
mainGame
->
dField
.
grave_act
=
true
;
if
(
pcard
->
location
==
LOCATION_REMOVED
)
if
(
l
==
LOCATION_REMOVED
)
mainGame
->
dField
.
remove_act
=
true
;
mainGame
->
dField
.
remove_act
=
true
;
if
(
l
&
0xc1
)
panelmode
=
true
;
}
}
if
(
!
forced
&&
(
mainGame
->
ignore_chain
||
((
count
==
0
||
specount
==
0
)
&&
!
mainGame
->
always_chain
)))
{
if
(
!
forced
&&
(
mainGame
->
ignore_chain
||
((
count
==
0
||
specount
==
0
)
&&
!
mainGame
->
always_chain
)))
{
SetResponseI
(
-
1
);
SetResponseI
(
-
1
);
...
@@ -1191,13 +1194,22 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
...
@@ -1191,13 +1194,22 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
mainGame
->
gMutex
.
Lock
();
mainGame
->
gMutex
.
Lock
();
mainGame
->
stHintMsg
->
setText
(
dataManager
.
GetSysString
(
550
));
mainGame
->
stHintMsg
->
setText
(
dataManager
.
GetSysString
(
550
));
mainGame
->
stHintMsg
->
setVisible
(
true
);
mainGame
->
stHintMsg
->
setVisible
(
true
);
if
(
!
forced
)
{
if
(
panelmode
)
{
if
(
count
==
0
)
mainGame
->
dField
.
list_command
=
COMMAND_ACTIVATE
;
myswprintf
(
textBuffer
,
L"%ls
\n
%ls"
,
dataManager
.
GetSysString
(
201
),
dataManager
.
GetSysString
(
202
));
mainGame
->
dField
.
selectable_cards
=
mainGame
->
dField
.
activatable_cards
;
else
std
::
sort
(
mainGame
->
dField
.
selectable_cards
.
begin
(),
mainGame
->
dField
.
selectable_cards
.
end
());
myswprintf
(
textBuffer
,
L"%ls
\n
%ls"
,
event_string
,
dataManager
.
GetSysString
(
203
));
auto
eit
=
std
::
unique
(
mainGame
->
dField
.
selectable_cards
.
begin
(),
mainGame
->
dField
.
selectable_cards
.
end
());
mainGame
->
SetStaticText
(
mainGame
->
stQMessage
,
310
,
mainGame
->
textFont
,
(
wchar_t
*
)
textBuffer
);
mainGame
->
dField
.
selectable_cards
.
erase
(
eit
,
mainGame
->
dField
.
selectable_cards
.
end
());
mainGame
->
PopupElement
(
mainGame
->
wQuery
);
mainGame
->
dField
.
ShowChainCard
();
}
else
{
if
(
!
forced
)
{
if
(
count
==
0
)
myswprintf
(
textBuffer
,
L"%ls
\n
%ls"
,
dataManager
.
GetSysString
(
201
),
dataManager
.
GetSysString
(
202
));
else
myswprintf
(
textBuffer
,
L"%ls
\n
%ls"
,
event_string
,
dataManager
.
GetSysString
(
203
));
mainGame
->
SetStaticText
(
mainGame
->
stQMessage
,
310
,
mainGame
->
textFont
,
(
wchar_t
*
)
textBuffer
);
mainGame
->
PopupElement
(
mainGame
->
wQuery
);
}
}
}
mainGame
->
gMutex
.
Unlock
();
mainGame
->
gMutex
.
Unlock
();
return
false
;
return
false
;
...
...
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