📄 arenamanager.cpp
字号:
const int nTeam = pPacket->nTeam;
if (nTeam < 0 || nTeam > 1)
{
return;
}
if (m_vtTeam[nTeam]->IsExistGambler(idGambler))
{
return;
}
m_vtTeam[nTeam]->AddGambler(idGambler);
}
void CArenaManager::RecvDeleteGambling(t_arena_delete_gambling* pPacket)
{
if (!IsSelectGame())
{
OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 114));
return;
}
const WORD idGambler = pPacket->idGambler;
LPCHARACTER pGambler = ::ReturnCharacterPoint(idGambler);
if (pGambler == NULL)
{
return;
}
const int nTeam = pPacket->nTeam;
if (nTeam < 0 || nTeam > 1)
{
return;
}
if (!m_vtTeam[nTeam]->IsExistGambler(idGambler))
{
return;
}
m_vtTeam[nTeam]->DelGambler(idGambler);
}
void CArenaManager::RecvAddObserve(t_arena_add_observe* pPacket)
{
if (!IsSelectGame())
{
OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 114));
return;
}
const WORD idObserve = pPacket->idObserve;
LPCHARACTER pObserve = ::ReturnCharacterPoint(pPacket->idObserve);
if (pObserve == NULL)
{
return;
}
const int nTeam = pPacket->nTeam;
if (nTeam < 0 || nTeam > 1)
{
return;
}
if (m_vtTeam[nTeam]->IsExistObserve(idObserve))
{
return;
}
m_vtTeam[nTeam]->AddObserve(idObserve);
}
void CArenaManager::RecvDeleteObserve(t_arena_delete_observe* pPacket)
{
if (!IsSelectGame())
{
OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 114));
return;
}
const WORD idObserve = pPacket->idObserve;
LPCHARACTER pObserve = ::ReturnCharacterPoint(pPacket->idObserve);
if (pObserve == NULL)
{
return;
}
const int nTeam = pPacket->nTeam;
if (nTeam < 0 || nTeam > 1)
{
return;
}
if (!m_vtTeam[nTeam]->IsExistObserve(idObserve))
{ //< CSD-030522
return;
} //> CSD-030522
m_vtTeam[nTeam]->DelObserve(idObserve);
}
void CArenaManager::RecvLeaderInfo(t_arena_leader_info* pPacket)
{
if (!IsSelectGame())
{
OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 114));
return;
}
const WORD idLeader = pPacket->idLeader;
LPCHARACTER pLeader = ::ReturnCharacterPoint(idLeader);
if (pLeader == NULL)
{
return;
}
// 府歹 汲沥
m_idLeader = idLeader;
}
void CArenaManager::RecvProbabilityInfo(t_arena_probability_info* pPacket)
{
if (!IsSelectGame())
{
OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 114));
return;
}
const int nTeam = pPacket->nArenaTeam;
if (nTeam < 0 || nTeam > 1)
{
return;
}
m_vtTeam[nTeam]->SetTeamProbability(pPacket->fProbability);
}
void CArenaManager::RecvGamblingInfo(t_arena_gambling_info* pPacket)
{
if (!IsSelectGame())
{
OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 114));
return;
}
const int nTeam = pPacket->nArenaTeam;
if (nTeam < 0 || nTeam > 1)
{
return;
}
m_vtTeam[nTeam]->SetBattingMoney(pPacket->dwBattingMoney);
}
void CArenaManager::RecvDividendInfo(t_arena_dividend_info* pPacket)
{
if (!IsSelectGame())
{
OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 114));
return;
}
m_dwBattingMoney = pPacket->dwBattingMoney;
m_dwDividendMoney = pPacket->dwDividendMoney;
}
void CArenaManager::RecvReadyInfo(t_arena_ready_info* pPacket)
{
if (!IsSelectGame())
{
OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 114));
return;
}
m_dwReadyTime = pPacket->dwReadyTime;
if (IsReadyGame())
{ //< CSD-031106
MP3(SN_FIGHT_TIME);
} //> CSD-031106
}
void CArenaManager::RecvGameInfo(t_arena_game_info* pPacket)
{ //< CSD-TW-030701
const char* pMapName = ::GetMapNameByPort(pPacket->wPort);
if (pMapName == NULL)
{
return;
}
const int nCount = pPacket->wMemberCount;
const char* pLeader = pPacket->szLeader;
// [%s] : 醚[%d]疙 规厘 : [%s]
::Kein_PutMessage(KM_INFO, kein_GetMenuString(151), pMapName, nCount, pLeader);
} //> CSD-TW-030701
void CArenaManager::RecvStartGame(t_arena_start_game* pPacket)
{ //< CSD-TW-030618
if (!IsSelectGame())
{
OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 114));
return;
}
const WORD idLeader = pPacket->idLeader;
LPCHARACTER pLeader = ::ReturnCharacterPoint(idLeader);
if (pLeader == NULL)
{
return;
}
::CallServer(CMD_ARENA_START_GAME);
// 府歹 檬扁拳
m_idLeader = 0;
} //> CSD-TW-030618
void CArenaManager::RecvGamblingResult(t_arena_gambling_result* pPacket)
{
switch (pPacket->nPayment)
{
case 0:
{
::AddCurrentStatusMessage(255, 180, 190,
lan->OutputMessage(1, 118), pPacket->dwMoney);
break;
}
case 1:
{
::AddCurrentStatusMessage(255, 180, 190,
lan->OutputMessage(1, 120), pPacket->dwMoney);
break;
}
}
}
void CArenaManager::RecvArenaGameMessage1(t_arena_game_message1* pPacket)
{ //< CSD-030523
const int nTeamNumber = pPacket->nTeamNumber;
const int nMsgType = pPacket->nMsgType;
const int nGameData = pPacket->nGameData;
switch (nMsgType)
{
case 1:
{
AddCurrentStatusMessage(220, 220, 0, lan->OutputMessage(3,41), FightTeam[nTeamNumber], nGameData); //010215 lsw
fight_map_live_man[nTeamNumber] = nGameData;
::OpenFightMapSignMenuOpen(fight_map_live_man);
break;
}
case 2:
{
AddCurrentStatusMessage(220, 220, 0, kein_GetMenuString(159), FightTeam[nTeamNumber], nGameData); //010215 lsw
fight_map_live_man[nTeamNumber] = nGameData;
::OpenFightMapSignMenuOpen(fight_map_live_man);
break;
}
case 6:
{
fight_map_live_man[nTeamNumber] = nGameData;
::OpenFightMapSignMenuOpen(fight_map_live_man);
break;
}
}
} //> CSD-030523
void CArenaManager::RecvArenaGameMessage2(t_arena_game_message2* pPacket)
{
const int nTeamNumber1 = pPacket->nTeamNumber1;
const int nTeamNumber2 = pPacket->nTeamNumber2;
char* pTeamMember1 = pPacket->szTeamMember1;
char* pTeamMember2 = pPacket->szTeamMember2;
// %s(%s)丛捞 %s(%s)丛俊霸 傍拜 寸秦 磷菌嚼聪促.
MP3( SN_KILL_WHO );
Kein_PutMessage(KM_FAIL, kein_GetMenuString(160),
pTeamMember2, FightTeam[nTeamNumber2],
pTeamMember1, FightTeam[nTeamNumber1]);
}
void CArenaManager::RecvArenaGameMessage3(t_arena_game_message3* pPacket)
{
const int nTeamNumber = pPacket->nTeamNumber;
const int nMsgType = pPacket->nMsgType;
const int nStoneNumber = pPacket->nStoneNumber;
char* pTeamMember = pPacket->szTeamMember;
switch (nMsgType)
{
case 4:
{
int r, g, b;
GetRGBByTeam(nTeamNumber, r, g, b);
AddCurrentStatusMessage(r, g, b,
kein_GetMenuString(161),
pTeamMember,
FightTeam[nTeamNumber]);
break;
}
case 5:
{
int r, g, b;
GetRGBByTeam(nTeamNumber, r, g, b);
AddCurrentStatusMessage(r, g, b,
kein_GetMenuString(162),
FightTeam[nTeamNumber],
pTeamMember,
nStoneNumber);
break;
}
}
}
void CArenaManager::RecvArenaGameMessage4(t_arena_game_message4* pPacket)
{ //< CSD-TW-030627
const DWORD dwMinute = pPacket->dwRemainMinute;
OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 121), dwMinute);
} //> CSD-TW-030627
CArenaTeam* CArenaManager::GetArenaTeam(int nTeam)
{
if (nTeam < 0 || nTeam > 1)
{
return NULL;
}
return m_vtTeam[nTeam];
}
CArenaTeam* CArenaManager::GetMemberTeam(WORD idMember)
{
for (ITOR_TEAM i = m_vtTeam.begin(); i != m_vtTeam.end(); ++i)
{
CArenaTeam* pTeam = *i;
if (pTeam->IsExistMember(idMember))
{
return pTeam;
}
}
return NULL;
}
CArenaTeam* CArenaManager::GetObserveTeam(WORD idObserve)
{
for (ITOR_TEAM i = m_vtTeam.begin(); i != m_vtTeam.end(); ++i)
{
CArenaTeam* pTeam = *i;
if (pTeam->IsExistObserve(idObserve))
{
return pTeam;
}
}
return NULL;
}
int CArenaManager::GetGamblingTeam(WORD idGambler)
{ //< CSD-030521
for (ITOR_TEAM i = m_vtTeam.begin(); i != m_vtTeam.end(); ++i)
{
CArenaTeam* pTeam = *i;
if (pTeam->IsExistMember(idGambler))
{
m_nGamblingTeam = pTeam->GetTeamNumber();
return m_nGamblingTeam;
}
if (pTeam->IsExistObserve(idGambler))
{
m_nGamblingTeam = pTeam->GetTeamNumber();
return m_nGamblingTeam;
}
}
return m_nGamblingTeam;
} //> CSD-030521
bool CArenaManager::IsEnableGambling(WORD idGambler)
{
for (ITOR_TEAM i = m_vtTeam.begin(); i != m_vtTeam.end(); ++i)
{
if ((*i)->IsExistMember(idGambler))
{
return false;
}
}
return true;
}
bool CArenaManager::IsEnableObserve(WORD idGambler)
{
for (ITOR_TEAM i = m_vtTeam.begin(); i != m_vtTeam.end(); ++i)
{
if ((*i)->IsExistMember(idGambler))
{
return false;
}
}
return true;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -