Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
R
rd-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
苍蓝
rd-ygopro
Commits
5a5eeabe
Commit
5a5eeabe
authored
Apr 13, 2017
by
edo9300
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added MSG_ROCK_PAPER_SCISSORS and MSG_HAND_RES
parent
6344b48c
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
71 additions
and
5 deletions
+71
-5
gframe/duelclient.cpp
gframe/duelclient.cpp
+18
-0
gframe/event_handler.cpp
gframe/event_handler.cpp
+10
-5
gframe/single_duel.cpp
gframe/single_duel.cpp
+14
-0
gframe/single_mode.cpp
gframe/single_mode.cpp
+13
-0
gframe/tag_duel.cpp
gframe/tag_duel.cpp
+16
-0
No files found.
gframe/duelclient.cpp
View file @
5a5eeabe
...
@@ -2909,6 +2909,24 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
...
@@ -2909,6 +2909,24 @@ int DuelClient::ClientAnalyze(char * msg, unsigned int len) {
mainGame
->
WaitFrameSignal
(
40
);
mainGame
->
WaitFrameSignal
(
40
);
return
true
;
return
true
;
}
}
case
MSG_ROCK_PAPER_SCISSORS
:
{
/*int player = */
mainGame
->
LocalPlayer
(
BufferIO
::
ReadInt8
(
pbuf
));
mainGame
->
gMutex
.
Lock
();
mainGame
->
PopupElement
(
mainGame
->
wHand
);
mainGame
->
gMutex
.
Unlock
();
return
false
;
}
case
MSG_HAND_RES
:
{
int
res1
=
BufferIO
::
ReadInt8
(
pbuf
);
int
res2
=
BufferIO
::
ReadInt8
(
pbuf
);
mainGame
->
stHintMsg
->
setVisible
(
false
);
mainGame
->
showcardcode
=
(
res1
-
1
)
+
((
res2
-
1
)
<<
16
);
mainGame
->
showcarddif
=
50
;
mainGame
->
showcardp
=
0
;
mainGame
->
showcard
=
100
;
mainGame
->
WaitFrameSignal
(
60
);
return
false
;
}
case
MSG_ANNOUNCE_RACE
:
{
case
MSG_ANNOUNCE_RACE
:
{
/*int player = */
mainGame
->
LocalPlayer
(
BufferIO
::
ReadInt8
(
pbuf
));
/*int player = */
mainGame
->
LocalPlayer
(
BufferIO
::
ReadInt8
(
pbuf
));
mainGame
->
dField
.
announce_count
=
BufferIO
::
ReadInt8
(
pbuf
);
mainGame
->
dField
.
announce_count
=
BufferIO
::
ReadInt8
(
pbuf
);
...
...
gframe/event_handler.cpp
View file @
5a5eeabe
...
@@ -29,11 +29,16 @@ bool ClientField::OnEvent(const irr::SEvent& event) {
...
@@ -29,11 +29,16 @@ bool ClientField::OnEvent(const irr::SEvent& event) {
case
BUTTON_HAND2
:
case
BUTTON_HAND2
:
case
BUTTON_HAND3
:
{
case
BUTTON_HAND3
:
{
mainGame
->
wHand
->
setVisible
(
false
);
mainGame
->
wHand
->
setVisible
(
false
);
if
(
mainGame
->
dInfo
.
curMsg
==
MSG_ROCK_PAPER_SCISSORS
){
DuelClient
::
SetResponseI
(
id
-
BUTTON_HAND1
+
1
);
DuelClient
::
SendResponse
();
}
else
{
mainGame
->
stHintMsg
->
setText
(
L""
);
mainGame
->
stHintMsg
->
setText
(
L""
);
mainGame
->
stHintMsg
->
setVisible
(
true
);
mainGame
->
stHintMsg
->
setVisible
(
true
);
CTOS_HandResult
cshr
;
CTOS_HandResult
cshr
;
cshr
.
res
=
id
-
BUTTON_HAND1
+
1
;
cshr
.
res
=
id
-
BUTTON_HAND1
+
1
;
DuelClient
::
SendPacketToServer
(
CTOS_HAND_RESULT
,
cshr
);
DuelClient
::
SendPacketToServer
(
CTOS_HAND_RESULT
,
cshr
);
}
break
;
break
;
}
}
case
BUTTON_FIRST
:
case
BUTTON_FIRST
:
...
...
gframe/single_duel.cpp
View file @
5a5eeabe
...
@@ -1250,6 +1250,20 @@ int SingleDuel::Analyze(char* msgbuffer, unsigned int len) {
...
@@ -1250,6 +1250,20 @@ int SingleDuel::Analyze(char* msgbuffer, unsigned int len) {
NetServer
::
ReSendToPlayer
(
*
oit
);
NetServer
::
ReSendToPlayer
(
*
oit
);
break
;
break
;
}
}
case
MSG_ROCK_PAPER_SCISSORS
:
{
player
=
BufferIO
::
ReadInt8
(
pbuf
);
WaitforResponse
(
player
);
NetServer
::
SendBufferToPlayer
(
players
[
player
],
STOC_GAME_MSG
,
offset
,
pbuf
-
offset
);
return
1
;
}
case
MSG_HAND_RES
:
{
pbuf
+=
2
;
NetServer
::
SendBufferToPlayer
(
players
[
0
],
STOC_GAME_MSG
,
offset
,
pbuf
-
offset
);
NetServer
::
ReSendToPlayer
(
players
[
1
]);
for
(
auto
oit
=
observers
.
begin
();
oit
!=
observers
.
end
();
++
oit
)
NetServer
::
ReSendToPlayer
(
*
oit
);
break
;
}
case
MSG_ANNOUNCE_RACE
:
{
case
MSG_ANNOUNCE_RACE
:
{
player
=
BufferIO
::
ReadInt8
(
pbuf
);
player
=
BufferIO
::
ReadInt8
(
pbuf
);
pbuf
+=
5
;
pbuf
+=
5
;
...
...
gframe/single_mode.cpp
View file @
5a5eeabe
...
@@ -569,6 +569,19 @@ bool SingleMode::SinglePlayAnalyze(char* msg, unsigned int len) {
...
@@ -569,6 +569,19 @@ bool SingleMode::SinglePlayAnalyze(char* msg, unsigned int len) {
DuelClient
::
ClientAnalyze
(
offset
,
pbuf
-
offset
);
DuelClient
::
ClientAnalyze
(
offset
,
pbuf
-
offset
);
break
;
break
;
}
}
case
MSG_ROCK_PAPER_SCISSORS
:
{
player
=
BufferIO
::
ReadInt8
(
pbuf
);
if
(
!
DuelClient
::
ClientAnalyze
(
offset
,
pbuf
-
offset
))
{
mainGame
->
singleSignal
.
Reset
();
mainGame
->
singleSignal
.
Wait
();
}
break
;
}
case
MSG_HAND_RES
:
{
pbuf
+=
2
;
DuelClient
::
ClientAnalyze
(
offset
,
pbuf
-
offset
);
break
;
}
case
MSG_ANNOUNCE_RACE
:
{
case
MSG_ANNOUNCE_RACE
:
{
player
=
BufferIO
::
ReadInt8
(
pbuf
);
player
=
BufferIO
::
ReadInt8
(
pbuf
);
pbuf
+=
5
;
pbuf
+=
5
;
...
...
gframe/tag_duel.cpp
View file @
5a5eeabe
...
@@ -1289,6 +1289,22 @@ int TagDuel::Analyze(char* msgbuffer, unsigned int len) {
...
@@ -1289,6 +1289,22 @@ int TagDuel::Analyze(char* msgbuffer, unsigned int len) {
NetServer
::
ReSendToPlayer
(
*
oit
);
NetServer
::
ReSendToPlayer
(
*
oit
);
break
;
break
;
}
}
case
MSG_ROCK_PAPER_SCISSORS
:
{
player
=
BufferIO
::
ReadInt8
(
pbuf
);
WaitforResponse
(
player
);
NetServer
::
SendBufferToPlayer
(
players
[
player
],
STOC_GAME_MSG
,
offset
,
pbuf
-
offset
);
return
1
;
}
case
MSG_HAND_RES
:
{
pbuf
+=
2
;
NetServer
::
SendBufferToPlayer
(
players
[
0
],
STOC_GAME_MSG
,
offset
,
pbuf
-
offset
);
NetServer
::
ReSendToPlayer
(
players
[
1
]);
NetServer
::
ReSendToPlayer
(
players
[
2
]);
NetServer
::
ReSendToPlayer
(
players
[
3
]);
for
(
auto
oit
=
observers
.
begin
();
oit
!=
observers
.
end
();
++
oit
)
NetServer
::
ReSendToPlayer
(
*
oit
);
break
;
}
case
MSG_ANNOUNCE_RACE
:
{
case
MSG_ANNOUNCE_RACE
:
{
player
=
BufferIO
::
ReadInt8
(
pbuf
);
player
=
BufferIO
::
ReadInt8
(
pbuf
);
pbuf
+=
5
;
pbuf
+=
5
;
...
...
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