Commit 2e237987 authored by mercury233's avatar mercury233

Revert "fix player leave when finger-guessing"

This reverts commit 29d8350a.
parent 946819c2
...@@ -20,7 +20,6 @@ extern unsigned short time_limit; ...@@ -20,7 +20,6 @@ extern unsigned short time_limit;
extern unsigned char start_hand; extern unsigned char start_hand;
extern unsigned char draw_count; extern unsigned char draw_count;
bool runasserver = true; bool runasserver = true;
bool started_hand = false;
SingleDuel::SingleDuel(bool is_match) { SingleDuel::SingleDuel(bool is_match) {
match_mode = is_match; match_mode = is_match;
...@@ -197,7 +196,7 @@ void SingleDuel::LeaveGame(DuelPlayer* dp) { ...@@ -197,7 +196,7 @@ void SingleDuel::LeaveGame(DuelPlayer* dp) {
} }
if(dp->type == NETPLAYER_TYPE_OBSERVER) { if(dp->type == NETPLAYER_TYPE_OBSERVER) {
observers.erase(dp); observers.erase(dp);
if(!started_hand) { if(!pduel) {
STOC_HS_WatchChange scwc; STOC_HS_WatchChange scwc;
scwc.watch_count = observers.size(); scwc.watch_count = observers.size();
if(players[0]) if(players[0])
...@@ -209,7 +208,7 @@ void SingleDuel::LeaveGame(DuelPlayer* dp) { ...@@ -209,7 +208,7 @@ void SingleDuel::LeaveGame(DuelPlayer* dp) {
} }
NetServer::DisconnectPlayer(dp); NetServer::DisconnectPlayer(dp);
} else { } else {
if(!started_hand && duel_count == 0) { if(!pduel && duel_count == 0) {
STOC_HS_PlayerChange scpc; STOC_HS_PlayerChange scpc;
players[dp->type] = 0; players[dp->type] = 0;
ready[dp->type] = false; ready[dp->type] = false;
...@@ -222,7 +221,7 @@ void SingleDuel::LeaveGame(DuelPlayer* dp) { ...@@ -222,7 +221,7 @@ void SingleDuel::LeaveGame(DuelPlayer* dp) {
NetServer::SendPacketToPlayer(*pit, STOC_HS_PLAYER_CHANGE, scpc); NetServer::SendPacketToPlayer(*pit, STOC_HS_PLAYER_CHANGE, scpc);
NetServer::DisconnectPlayer(dp); NetServer::DisconnectPlayer(dp);
} else { } else {
if(!started_hand) { if(!pduel) {
if(!ready[0]) if(!ready[0])
NetServer::SendPacketToPlayer(players[0], STOC_DUEL_START); NetServer::SendPacketToPlayer(players[0], STOC_DUEL_START);
if(!ready[1]) if(!ready[1])
...@@ -368,7 +367,6 @@ void SingleDuel::StartDuel(DuelPlayer* dp) { ...@@ -368,7 +367,6 @@ void SingleDuel::StartDuel(DuelPlayer* dp) {
(*oit)->state = CTOS_LEAVE_GAME; (*oit)->state = CTOS_LEAVE_GAME;
NetServer::ReSendToPlayer(*oit); NetServer::ReSendToPlayer(*oit);
} }
started_hand = true;
NetServer::SendPacketToPlayer(players[0], STOC_SELECT_HAND); NetServer::SendPacketToPlayer(players[0], STOC_SELECT_HAND);
NetServer::ReSendToPlayer(players[1]); NetServer::ReSendToPlayer(players[1]);
hand_result[0] = 0; hand_result[0] = 0;
......
...@@ -19,7 +19,6 @@ extern unsigned int start_lp; ...@@ -19,7 +19,6 @@ extern unsigned int start_lp;
extern unsigned short time_limit; extern unsigned short time_limit;
extern unsigned char start_hand; extern unsigned char start_hand;
extern unsigned char draw_count; extern unsigned char draw_count;
bool started_hand_tag = false;
TagDuel::TagDuel() { TagDuel::TagDuel() {
for(int i = 0; i < 4; ++i) { for(int i = 0; i < 4; ++i) {
...@@ -175,7 +174,7 @@ void TagDuel::LeaveGame(DuelPlayer* dp) { ...@@ -175,7 +174,7 @@ void TagDuel::LeaveGame(DuelPlayer* dp) {
} }
if(dp->type == NETPLAYER_TYPE_OBSERVER) { if(dp->type == NETPLAYER_TYPE_OBSERVER) {
observers.erase(dp); observers.erase(dp);
if(!started_hand_tag) { if(!pduel) {
STOC_HS_WatchChange scwc; STOC_HS_WatchChange scwc;
scwc.watch_count = observers.size(); scwc.watch_count = observers.size();
for(int i = 0; i < 4; ++i) for(int i = 0; i < 4; ++i)
...@@ -186,7 +185,7 @@ void TagDuel::LeaveGame(DuelPlayer* dp) { ...@@ -186,7 +185,7 @@ void TagDuel::LeaveGame(DuelPlayer* dp) {
} }
NetServer::DisconnectPlayer(dp); NetServer::DisconnectPlayer(dp);
} else { } else {
if(!started_hand_tag) { if(!pduel) {
STOC_HS_PlayerChange scpc; STOC_HS_PlayerChange scpc;
players[dp->type] = 0; players[dp->type] = 0;
ready[dp->type] = false; ready[dp->type] = false;
...@@ -326,7 +325,6 @@ void TagDuel::StartDuel(DuelPlayer* dp) { ...@@ -326,7 +325,6 @@ void TagDuel::StartDuel(DuelPlayer* dp) {
(*oit)->state = CTOS_LEAVE_GAME; (*oit)->state = CTOS_LEAVE_GAME;
NetServer::ReSendToPlayer(*oit); NetServer::ReSendToPlayer(*oit);
} }
started_hand_tag = true;
NetServer::SendPacketToPlayer(players[0], STOC_SELECT_HAND); NetServer::SendPacketToPlayer(players[0], STOC_SELECT_HAND);
NetServer::ReSendToPlayer(players[2]); NetServer::ReSendToPlayer(players[2]);
hand_result[0] = 0; hand_result[0] = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment