📄 nationsys.cpp
字号:
}
// Interface Concern Packet Send Function
void SendCMD_REQUEST_WARFIELD_STATUS(int RequestType) // Request Warfield Status , Parameter : Button No
{
t_packet p;
p.h.header.type=CMD_REQUEST_WARFIELD_STATUS;
p.u.NationWar.CommonDataC.Data=RequestType; // Just Checking Warfield Status
p.h.header.size=sizeof(t_CommonDataC);
QueuePacket( &p, 1 );
}
int CheckWarfieldLoop()
{
if (g_pNation->GetStatus(0)>=2) return 0;
if (g_pNation->GetStatus(1)>=2) return 1;
if (g_pNation->GetStatus(2)>=2) return 2;
return -1;
}
void SendCMD_REQUEST_WARFIELD_INFO()
{
t_packet p;
int WarfieldNo=CheckWarfieldLoop();
if (WarfieldNo>=0)
{
p.h.header.type=CMD_REQUEST_WARFIELD_INFO;
p.u.NationWar.CommonDataC.Data=WarfieldNo;
p.h.header.size=sizeof(t_CommonDataC);
QueuePacket( &p, 1 );
}
}
void SendCMD_REQUEST_VOTE_DATA(int WarfieldNo) // Request Vote Data
{ // CMD_REQUEST_WARFIELD_STATUS -> CMD_ANSWER_WARFIELD_STATUS
t_packet p; // CMD_REQUEST_VOTE_DATA -> CMD_ANSWER_VOTE_DATA
p.h.header.type=CMD_REQUEST_VOTE_DATA; // RecvCMD_ANSWER_VOTE_DATA() -> CallSmallMenu()
p.u.NationWar.CommonDataC.Data=WarfieldNo;
p.h.header.size=sizeof(t_CommonDataC);
QueuePacket( &p, 1 );
}
void RecvCMD_ANSWER_VOTE_DATA(t_packet* p) // Nation War Join Interface Open
{ // Display Data
if (p->u.NationWar.VoteData.WarfieldNo>=0)
{
//弊贰橇肺 弊府扁
// p->u.NationWar.VoteData.WarfieldNo, ->傈里磐 逞滚
switch(p->u.NationWar.VoteData.WarfieldNo)
{
case 0: //魂吝
SMenu[MN_NATION_JOIN].nField[2].nImageNumber = 1;
break;
case 1: //乞盔
SMenu[MN_NATION_JOIN].nField[2].nImageNumber = 3;
break;
case 2: //级
SMenu[MN_NATION_JOIN].nField[2].nImageNumber = 2;
break;
}
//010927 lsw
char msg[10];
sprintf(msg,"%d",p->u.NationWar.VoteData.VoteCount);
strcpy(SMenu[MN_NATION_JOIN].nField[5].temp, msg );
SMenu[MN_NATION_JOIN].nField[4].nWillDo =p->u.NationWar.VoteData.VoteCount ;
char msg2[20];
ReturnNationName(g_DefenceNation,msg2);
char msg3[20];
ReturnWarfieldName(p->u.NationWar.VoteData.WarfieldNo,msg3);
//010928 lsw
sprintf(SMenu[MN_NATION_JOIN].nField[3].temp,lan->OutputMessage(0,142), msg2,msg3 ); //" [ %s ]惫啊肺何磐 [ %s ]甫 呕券窍扁 困秦 傈里 急器 咯何甫 捧钎窍绰 镑涝聪促.\n 捧钎 扁埃篮 5盒捞 林绢瘤哥 弊 扁埃 救俊 5疙捞 逞霸 登搁 磊悼栏肺 傈里 急器啊 捞凤笼聪促.\n 傈里篮 傈里 急器 饶 20盒 饶俊 国绢瘤霸 邓聪促."
CallSmallMenu(MN_NATION_JOIN,MN_NATION_BATTLE_BBS);
}
else
{
CallOkCancelMessageBox(TRUE, 0,0, lan->OutputMessage(0,220), FALSE); //"傈里曼咯 捧钎甫 且 荐 绝嚼聪促."
}
}
//傈里曼咯 捧钎
//牢磐其捞胶 啊 凯妨乐绰瘤 犬牢 茄促.. 掉饭捞 鸥烙俊 狼秦 急芭扁埃捞 瘤车绰单档 捧钎甫 茄促搁..
//捧钎甫 给沁促绰 菩哦捞 朝酒柯促..酒聪 朝酒客具 茄促.
//某腐磐 府胶飘 棺 DB俊 历厘秦具 茄促.
void SendCMD_VOTING_DATA() // Send Nation War Join Data
{ // Ack Does Not Retrun
t_packet p;
if (Hero->NWCharacter.DoWarJoinVote)
{
CallOkCancelMessageBox(TRUE, 0,0, lan->OutputMessage(0,221), FALSE); //"捞固 傈里 曼咯 捧钎甫 窍继嚼聪促."
return;
}
int WarfieldNo=CheckNationStatus(NW_VOTE);
if (WarfieldNo>=0)
{
if (Hero->name_status.nation!=g_DefenceNation)
{
p.h.header.type=CMD_VOTING_DATA;
p.u.NationWar.CommonDataC.Data=WarfieldNo;
p.h.header.size=sizeof(t_CommonDataC);
QueuePacket( &p, 1 );
char msg[80],msg2[200];
ReturnWarfieldName(WarfieldNo,msg);
sprintf(msg2,lan->OutputMessage(0,222),msg); //"利惫狼 [ %s ] 肺 傈里俊 悼曼 狼荤甫 灌躯嚼聪促."
CallOkCancelMessageBox(TRUE, 0,0, msg2, FALSE);
Hero->NWCharacter.DoWarJoinVote=true;
}
else
{
CallOkCancelMessageBox(TRUE, 0,0,lan->OutputMessage(0,223), FALSE); //"规绢惫啊狼 惫刮篮 傈里曼咯捧钎甫 且 荐 绝嚼聪促."
}
}
}
void SendCMD_REQUEST_SQUAD_INFO(int SquadNo) // Request Warfield Squad Information
{ // Open Turn of Squad Menu
t_packet p; // Interface Click -> CMD_REQUEST_WARFIELD_STATUS ->
int WarfieldNo=CheckNationStatus(NW_PREPARE); // CMD_ANSWER_WARFIELD_STATUS -> CMD_REQUEST_SQUAD_INFO ->
if (WarfieldNo<0) WarfieldNo=CheckNationStatus(NW_WAR); // 010927 LTS
if (WarfieldNo>=3)
{
//<! BBD 040322
char tempMessage[200];
switch(WarfieldNo)
{
case WI_SNOWY_WARFIELD:
{
sprintf(tempMessage, lan->OutputMessage(0,292), lan->OutputMessage(0,386)); //汲盔傈里磐绰 何措扁瓷阑 荤侩窍瘤 臼嚼聪促.
break;
}
case WI_HADES_WARFIELD:
{
sprintf(tempMessage, lan->OutputMessage(0,292), lan->OutputMessage(0,619));
break;
}
default:
{
break;
}
}
CallOkCancelMessageBox(TRUE, 0,0,tempMessage, FALSE);
return;
//> BBD 040322
}
// CMD_ANSWER_SQUAD_INFO -> CallOkCancelMessageBox(TRUE()
if (SquadNo<1) // 何措 锅龋 0篮 何措 祈己捞 登瘤 臼篮 蜡历狼 葛烙捞促.
{
SquadNo=1;
g_Squad=1;
}
if (SquadNo>4)
{
SquadNo=4;
g_Squad=4;
}
if (WarfieldNo>=0)
{
p.h.header.type=CMD_REQUEST_SQUAD_INFO;
p.u.NationWar.RequestSquadInfo.Nation=Hero->name_status.nation; // 老胶牢版快... 锅龋啊 甸绢埃促.
p.u.NationWar.RequestSquadInfo.WarfieldNo=WarfieldNo;
p.u.NationWar.RequestSquadInfo.SquadNo=SquadNo;
p.h.header.size=sizeof(t_RequestSquadInfo);
QueuePacket( &p, 1 );
//AddCurrentStatusMessage( 255,255,0, "何措祈己 单捞磐甫 夸没窍看嚼聪促. 何措锅龋:%d",g_Squad);
}
}
void RecvCMD_ANSWER_SQUAD_INFO(t_packet* p) // Squad Information Packet process
{
//MN 何措 牢磐 其捞胶
g_SquadLoadingPoint = p->u.NationWar.SquadInfo.LoadingPoint;
g_SquadNum = p->u.NationWar.SquadInfo.SquadNo;
NationSupportNationSquadLeader( p);//010910 lsw
}
void RecvCMD_ANSWER_SQUAD_INFO2(t_packet* p)
{
NationSupportNationSquadLeader2( p);//010910 lsw
}
//荤飞包 捧钎单捞鸥 夸没
void SendCMD_REQUEST_COMMANDER_VOTE_DATA(int CandidaterNo) // Request Commander Candidater Information, Parameter : Candidater No
{
t_packet p;
int WarfieldNo=CheckNationStatus(NW_PREPARE);
if (CandidaterNo<0) // 荤飞包 锅龋狼 眉农..
{
g_Commander=0;
CandidaterNo=0;
}
if (CandidaterNo>5)
{
g_Commander=5;
CandidaterNo=5;
}
if (WarfieldNo>=0)
{
p.h.header.type=CMD_REQUEST_COMMANDER_VOTE_DATA;
p.u.NationWar.RequestCommanderVoteData.Nation=Hero->name_status.nation;
p.u.NationWar.RequestCommanderVoteData.WarfieldNo=WarfieldNo;
p.u.NationWar.RequestCommanderVoteData.CandidaterNo=CandidaterNo;
p.h.header.size=sizeof(t_RequestCommanderVoteData);
QueuePacket( &p, 1 );
//AddCurrentStatusMessage( 255,255,0, "荤飞包 捧钎磊丰甫 夸没窍看嚼聪促. 惫啊锅龋:%d, 荤飞包 捧钎磊丰:%d",WarfieldNo,CandidaterNo);
}
}
void RecvCMD_ANSWER_COMMANDER_VOTE_DATA(t_packet* p) // Answer Commander Candidater Information
{
//捞芭档 官层具 凳 父甸绢 初疽澜
// AddCurrentStatusMessage( 255,255,0, "荤飞包 饶焊 %d狼 单捞磐涝聪促.",p->u.NationWar.CommanderVoteData.VoteNo);
// AddCurrentStatusMessage( 255,255,0, "饶焊ID : %d, 饶焊捞抚 : %s",p->u.NationWar.CommanderVoteData.CandidaterID,p->u.NationWar.CommanderVoteData.Name);
// AddCurrentStatusMessage( 255,255,0, "饭骇 : %d, 疙己摹 : %d, 瘤瘤钎 :%d",p->u.NationWar.CommanderVoteData.Level,p->u.NationWar.CommanderVoteData.Fame,p->u.NationWar.CommanderVoteData.VoteCount);
g_CommanderCandidaterLevel = p->u.NationWar.CommanderVoteData.Level;
if(p->u.NationWar.CommanderVoteData.CandidaterID != 0)
{
sprintf(SMenu[MN_NATION_VOTE].nField[5].temp,"%d",SHideNomal[HN_MAKECHARACTER_CLASS_TEXT][p->u.NationWar.CommanderVoteData.VoteCount]);
sprintf(SMenu[MN_NATION_VOTE].nField[6].temp,"%s",p->u.NationWar.CommanderVoteData.Name);
const __int8 nBefore = p->u.NationWar.CommanderVoteData.Class; // 努贰胶 // 011020 LTS
const __int8 nAfter = p->u.NationWar.CommanderVoteData.nDual; // 掂倔.. // 011020 LTS
const __int8 nStep = p->u.NationWar.CommanderVoteData.nStep; // 胶跑 // 011020 LTS
const string strName = g_mgrDual.GetClassName(nBefore, nAfter, nStep, g_CommanderCandidaterLevel);
sprintf(SMenu[MN_NATION_VOTE].nField[7].temp,"%s", strName.c_str() );
sprintf(SMenu[MN_NATION_VOTE].nField[8].temp,"%d",p->u.NationWar.CommanderVoteData.Fame);
sprintf(SMenu[MN_NATION_VOTE].nField[9].temp,"%d",p->u.NationWar.CommanderVoteData.LadderScore);
SMenu[MN_NATION_VOTE].nField[10].nWillDo = 1;//倔奔 捞固瘤 难扁
SMenu[MN_NATION_VOTE].nField[10].nImageType = p->u.NationWar.CommanderVoteData.Gender;
SMenu[MN_NATION_VOTE].nField[10].nRectImage = p->u.NationWar.CommanderVoteData.Face;
}
else
{
SMenu[MN_NATION_VOTE].nField[10].nWillDo = 0;
sprintf(SMenu[MN_NATION_VOTE].nField[5].temp,lan->OutputMessage(0,224)); //"殿废措扁"
sprintf(SMenu[MN_NATION_VOTE].nField[6].temp,lan->OutputMessage(0,224)); //"殿废措扁"
sprintf(SMenu[MN_NATION_VOTE].nField[7].temp,lan->OutputMessage(0,224)); //"殿废措扁"
sprintf(SMenu[MN_NATION_VOTE].nField[8].temp,lan->OutputMessage(0,224)); //"殿废措扁"
sprintf(SMenu[MN_NATION_VOTE].nField[9].temp,lan->OutputMessage(0,224)); //"殿废措扁"
}
}
void RecvCMD_ANSWER_COMMANDER_VOTE_DATA2(t_packet* p)
{
char msg[200];
memset(msg,0,200);
for ( int i = 0 ; i < 6 ; i++)//011001 lsw
{
sprintf(msg,"%s\n [%d]",p->u.NationWar.CommanderVoteData2.CandidaterName[i],p->u.NationWar.CommanderVoteData2.VoteCount[i]);
strcpy(SMenu[MN_NATION_VOTE].nField[11+i].temp, msg);
}
//011005 lsw >
CallSmallMenu(MN_NATION_VOTE,MN_NATION_BATTLE_BBS); // Commander Candidater Interface Open
//011005 lsw <
}
bool CheckJoinLevel(int SquadNo) // 011015 LTS
{
switch (SquadNo)
{
case 1 :
if (Hero->lv>=NW_SQUAD1_LEVEL_MIN&&Hero->lv<=NW_SQUAD1_LEVEL_MAX) return true;
return false;
case 2 :
if (Hero->lv>=NW_SQUAD2_LEVEL_MIN&&Hero->lv<=NW_SQUAD2_LEVEL_MAX) return true;
return false;
case 3 :
if (Hero->lv>=NW_SQUAD3_LEVEL_MIN&&Hero->lv<=NW_SQUAD3_LEVEL_MAX) return true;
return false;
case 4 :
if (Hero->lv>=NW_SQUAD4_LEVEL_MIN&&Hero->lv<=NW_SQUAD4_LEVEL_MAX) return true;
return false;
}
return true;
}
//何措甫 函版 茄促..
//何措锅龋绰 傈里锅龋客 窃膊 DB俊 历厘登绢具 茄促.
//捞固 何措啊 乐绰版快... //傈里锅龋客 厚背甫 茄促. // 浆婆 何措厘捞搁.. 救等促..
//捞固 何措啊 乐绰 版快
//捞傈 何措狼 锅龋 //某腐磐 府胶飘俊 眠啊登绢具 窍绰 荤亲
//何措俊 货肺 炼牢窍绰 版快
//捞傈 何措狼 锅龋 //某腐磐 府胶飘俊 眠啊登绢具 窍绰 荤亲
void SendCMD_CHANGE_SQUAD(int SquadNo) // Squad Registration Change
{
t_packet p;
int WarfieldNo=CheckNationStatus(NW_PREPARE);
if (Hero->NWCharacter.isSquadLeader)
{
CallOkCancelMessageBox(TRUE, 0,0,lan->OutputMessage(0,225), FALSE); //"何措厘篮 何措甫 官操角 荐 绝嚼聪促."
return;
}
if (Hero->NWCharacter.SquadNo) //巩力 檬扁蔼栏肺 0捞酒囱 蔼捞 乐绢具 茄促. // If Hero Have Old Squad No
{ // Send CMD_CHANGE_SQUAD Packet to Manage Server
CallOkCancelMessageBox(TRUE, 0,0,lan->OutputMessage(0,226), FALSE); //"促弗 何措肺 殿废窍角 荐 绝嚼聪促."
}
else // Hero Does Not Have Old Squad No
{ // Send CMD_JOIN_SQUAD Packet to Manage Server
if (CheckJoinLevel(SquadNo)) // 011015 LTS
{
p.h.header.type=CMD_JOIN_SQUAD; // Answer was CMD_JOIN_SQUAD or CMD_YOU_ARE_SQUAD_LEADER
p.u.NationWar.JoinSquad.Nation=Hero->name_status.nation;
p.u.NationWar.JoinSquad.WarfieldNo=WarfieldNo;
p.u.NationWar.JoinSquad.SquadNo=g_Squad; //官诧促.. 牢磐其捞胶 蔼...
p.h.header.size=sizeof(t_JoinSquad);
QueuePacket( &p, 1 );
char msg[80],msg2[200];
ReturnWarfieldName(p.u.NationWar.JoinSquad.WarfieldNo,msg);
sprintf(msg2,lan->OutputMessage(0,227),msg, p.u.NationWar.JoinSquad.SquadNo); //"[ %s ]狼 [力 %d 何措] 何措盔栏肺 殿废灯嚼聪促."
PlayListAutoSounds(257,0,0,0);
CallOkCancelMessageBox(TRUE, 0,0, msg2, FALSE);
}
else CallOkCancelMessageBox(TRUE, 0,0, lan->OutputMessage(0,228), FALSE); //"秦寸 何措俊 殿废窍扁俊 嘎瘤 臼篮 饭骇涝聪促."
}
}
void RecvCMD_YOU_ARE_SQUAD_LEADER(t_packet *p)
{
//何措厘捞骨肺.. 包访等 单捞鸥甫 技飘茄促.. ぬ.ぬ
if (Hero->name_status.nation==NW_YL) Hero->NWCharacter.YL_JoinNation=p->u.NationWar.JoinSquad.Nation;
Hero->NWCharacter.WarfieldNo=p->u.NationWar.JoinSquad.WarfieldNo;
Hero->NWCharacter.SquadNo=p->u.NationWar.JoinSquad.SquadNo;
Hero->NWCharacter.isSquadLeader=1;
char msg[80],msg2[200];
ReturnWarfieldName(Hero->NWCharacter.WarfieldNo,msg);
sprintf(msg2,lan->OutputMessage(0,229),msg,Hero->NWCharacter.SquadNo); //"[ %s ]狼 [力 %d 何措] 何措厘俊 殿废灯嚼聪促."
CallOkCancelMessageBox(TRUE, 0,0, msg2, FALSE);
}
void RecvCMD_JOIN_SQUAD(t_packet *p)
{
if (Hero->name_status.nation==NW_YL) Hero->NWCharacter.YL_JoinNation=p->u.NationWar.JoinSquad.Nation;
Hero->NWCharacter.WarfieldNo=p->u.NationWar.JoinSquad.WarfieldNo;
Hero->NWCharacter.SquadNo=p->u.NationWar.JoinSquad.SquadNo;
char msg[80],msg2[200];
ReturnWarfieldName(Hero->NWCharacter.WarfieldNo,msg);
sprintf(msg2,lan->OutputMessage(0,227),msg,Hero->NWCharacter.SquadNo); //"[ %s ]狼 [力 %d 何措] 何措盔栏肺 殿废灯嚼聪促."
CallOkCancelMessageBox(TRUE, 0,0, msg2, FALSE);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -