Commit 60340764 authored by argon.sun's avatar argon.sun

match test

parent f02cefe0
...@@ -336,6 +336,11 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) { ...@@ -336,6 +336,11 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
mainGame->gMutex.Lock(); mainGame->gMutex.Lock();
mainGame->dField.Clear(); mainGame->dField.Clear();
mainGame->dInfo.isStarted = true; mainGame->dInfo.isStarted = true;
mainGame->dInfo.lp[0] = 0;
mainGame->dInfo.lp[1] = 0;
mainGame->dInfo.strLP[0][0] = 0;
mainGame->dInfo.strLP[1][0] = 0;
mainGame->dInfo.turn = 0;
mainGame->is_building = false; mainGame->is_building = false;
mainGame->wCardImg->setVisible(true); mainGame->wCardImg->setVisible(true);
mainGame->wInfos->setVisible(true); mainGame->wInfos->setVisible(true);
......
...@@ -765,6 +765,8 @@ void Game::CloseDuelWindow() { ...@@ -765,6 +765,8 @@ void Game::CloseDuelWindow() {
btnSideOK->setVisible(false); btnSideOK->setVisible(false);
lstLog->clear(); lstLog->clear();
logParam.clear(); logParam.clear();
lstHostList->clear();
DuelClient::hosts.clear();
ClearTextures(); ClearTextures();
} }
int Game::LocalPlayer(int player) { int Game::LocalPlayer(int player) {
......
...@@ -433,12 +433,29 @@ void SingleDuel::Process() { ...@@ -433,12 +433,29 @@ void SingleDuel::Process() {
for(int i = 0; i < duel_count; ++i) for(int i = 0; i < duel_count; ++i)
winc[match_result[i]]++; winc[match_result[i]]++;
if(winc[0] == 2 || (winc[0] == 1 && winc[2] == 2)) { if(winc[0] == 2 || (winc[0] == 1 && winc[2] == 2)) {
NetServer::SendPacketToPlayer(players[0], STOC_DUEL_END);
NetServer::ReSendToPlayer(players[1]);
for(auto oit = observers.begin(); oit != observers.end(); ++oit)
NetServer::ReSendToPlayer(*oit);
NetServer::StopServer();
} else if(winc[1] == 2 || (winc[1] == 1 && winc[2] == 2)) { } else if(winc[1] == 2 || (winc[1] == 1 && winc[2] == 2)) {
NetServer::SendPacketToPlayer(players[0], STOC_DUEL_END);
NetServer::ReSendToPlayer(players[1]);
for(auto oit = observers.begin(); oit != observers.end(); ++oit)
NetServer::ReSendToPlayer(*oit);
NetServer::StopServer();
} else if(winc[2] == 3 || (winc[0] == 1 && winc[1] == 1 && winc[2] == 1)) { } else if(winc[2] == 3 || (winc[0] == 1 && winc[1] == 1 && winc[2] == 1)) {
NetServer::SendPacketToPlayer(players[0], STOC_DUEL_END);
NetServer::ReSendToPlayer(players[1]);
for(auto oit = observers.begin(); oit != observers.end(); ++oit)
NetServer::ReSendToPlayer(*oit);
NetServer::StopServer();
} else { } else {
if(players[0] != pplayer[0]) { if(players[0] != pplayer[0]) {
players[0] = pplayer[0]; players[0] = pplayer[0];
players[1] = pplayer[1]; players[1] = pplayer[1];
players[0]->type = 0;
players[1]->type = 1;
Deck d = pdeck[0]; Deck d = pdeck[0];
pdeck[0] = pdeck[1]; pdeck[0] = pdeck[1];
pdeck[1] = d; pdeck[1] = d;
......
...@@ -7,5 +7,5 @@ lastdeck = tgagent ...@@ -7,5 +7,5 @@ lastdeck = tgagent
textfont = c:/windows/fonts/simsun.ttc textfont = c:/windows/fonts/simsun.ttc
numfont = c:/windows/fonts/arialbd.ttf numfont = c:/windows/fonts/arialbd.ttf
serverport = 7911 serverport = 7911
lastip = 192.168.3.235 lastip = 192.168.2.100
lastport = 7911 lastport = 7911
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