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
c39fc021
Commit
c39fc021
authored
Jul 08, 2019
by
nanahira
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'server_mc' into server
parents
5859d279
4938a94e
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
16 additions
and
5 deletions
+16
-5
gframe/netserver.cpp
gframe/netserver.cpp
+5
-0
gframe/single_duel.cpp
gframe/single_duel.cpp
+7
-3
gframe/tag_duel.cpp
gframe/tag_duel.cpp
+4
-2
No files found.
gframe/netserver.cpp
View file @
c39fc021
...
...
@@ -117,7 +117,12 @@ void NetServer::StopServer() {
return
;
if
(
duel_mode
)
duel_mode
->
EndDuel
();
#ifdef YGOPRO_SERVER_MODE // For solving the problem of connection lost after duel. See https://github.com/Fluorohydride/ygopro/issues/2067 for details.
timeval
etv
=
{
0
,
1
};
event_base_loopexit
(
net_evbase
,
&
etv
);
#else
event_base_loopexit
(
net_evbase
,
0
);
#endif
}
void
NetServer
::
StopBroadcast
()
{
if
(
!
net_evbase
||
!
broadcast_ev
)
...
...
gframe/single_duel.cpp
View file @
c39fc021
...
...
@@ -193,7 +193,7 @@ void SingleDuel::LeaveGame(DuelPlayer* dp) {
NetServer
::
StopServer
();
return
;
}
if
(
!
game_started
)
{
if
(
duel_stage
==
DUEL_STAGE_BEGIN
)
{
ready
[
host_pos
]
=
false
;
STOC_TypeChange
sctc
;
sctc
.
type
=
0x10
|
host_pos
;
...
...
@@ -633,8 +633,10 @@ void SingleDuel::DuelEndProc() {
NetServer
::
ReSendToPlayer
(
*
oit
);
#ifdef YGOPRO_SERVER_MODE
NetServer
::
ReSendToPlayers
(
cache_recorder
,
replay_recorder
);
#endif
NetServer
::
StopServer
();
#else
duel_stage
=
DUEL_STAGE_END
;
#endif
}
else
{
int
winc
[
3
]
=
{
0
,
0
,
0
};
for
(
int
i
=
0
;
i
<
duel_count
;
++
i
)
...
...
@@ -649,8 +651,10 @@ void SingleDuel::DuelEndProc() {
NetServer
::
ReSendToPlayer
(
*
oit
);
#ifdef YGOPRO_SERVER_MODE
NetServer
::
ReSendToPlayers
(
cache_recorder
,
replay_recorder
);
#endif
NetServer
::
StopServer
();
#else
duel_stage
=
DUEL_STAGE_END
;
#endif
}
else
{
if
(
players
[
0
]
!=
pplayer
[
0
])
{
players
[
0
]
=
pplayer
[
0
];
...
...
gframe/tag_duel.cpp
View file @
c39fc021
...
...
@@ -179,7 +179,7 @@ void TagDuel::LeaveGame(DuelPlayer* dp) {
NetServer
::
StopServer
();
return
;
}
if
(
!
game_started
)
{
if
(
duel_stage
==
DUEL_STAGE_BEGIN
)
{
ready
[
host_pos
]
=
false
;
STOC_TypeChange
sctc
;
sctc
.
type
=
0x10
|
host_pos
;
...
...
@@ -640,8 +640,10 @@ void TagDuel::DuelEndProc() {
NetServer
::
ReSendToPlayer
(
*
oit
);
#ifdef YGOPRO_SERVER_MODE
NetServer
::
ReSendToPlayers
(
cache_recorder
,
replay_recorder
);
#endif
NetServer
::
StopServer
();
#else
duel_stage
=
DUEL_STAGE_END
;
#endif
}
void
TagDuel
::
Surrender
(
DuelPlayer
*
dp
)
{
if
(
dp
->
type
>
3
||
!
pduel
)
...
...
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