📄 nationsupport.cpp
字号:
#include "..\stdafx.h"
#include "DefaultHeader.h"
#include "CItem.h"
#include "Op_Magic.h"
#include "Op_Battle.h"
#include "Map.h"
#include "ChrLog.h"
#include "nationsys.h"
extern cWarfield* g_pWarfield;
extern bool isNationWarfieldServer();
extern bool isNationManageServer();
#define MAX_SQUAD_1_RARE_CALSS 5
#define MAX_SQUAD_2_RARE_CALSS 4
#define MAX_SQUAD_3_RARE_CALSS 3
#define MAX_SQUAD_4_RARE_CALSS 2
#define MAX_SQUAD_NUMBER 4
#define MAX_SQUAD_RARE 3
int iSquadRareType[MAX_SQUAD_NUMBER][MAX_SQUAD_RARE];
bool bSquadRared[MAX_SQUAD_NUMBER];
//扁裙磊啊 力傍茄 绊沥利牢 钙胶蔼.
const int iSquadMaxRareClass[MAX_SQUAD_NUMBER] = {MAX_SQUAD_1_RARE_CALSS,MAX_SQUAD_2_RARE_CALSS,MAX_SQUAD_3_RARE_CALSS,MAX_SQUAD_4_RARE_CALSS};
//惑炔俊 蝶扼 函窍绰 钙胶蔼.
int iSquadNowMaxRareClass[MAX_SQUAD_NUMBER] = {MAX_SQUAD_1_RARE_CALSS,MAX_SQUAD_2_RARE_CALSS,MAX_SQUAD_3_RARE_CALSS,MAX_SQUAD_4_RARE_CALSS};
int iSquadNowRareClass[MAX_SQUAD_NUMBER] = {0,0,0,0};
void SquadRarePlus(CHARLIST *ch, int iRareType, int iClass)
{
if(!isNationWarfieldServer()) return;//咯扁啊 惫啊傈 甘 酒聪搁 例措肺 啊吝摹甫 林瘤 臼绰促.
int iPlusValue = ItemRare[iRareType].GRADE[iClass];
}
//傈里磐 甘 辑滚父 靖 捞芭绰... 努贰胶父 沥窃 饭绢 鸥涝篮 惑包 绝澜
int CheckSquadRareGrade( int iBattleType,int iSquadNo, int iManCount, bool bCommanderLogin, bool bSquadLeaderLogin, int iSquadItemStatus)
{
int iRareSquadGradeNow = 0;
//饭绢 甸绢哎 傍侥阑 眉农 窍磊
//何措厘捞 殿废 凳苞 悼矫俊 饭绢 鸥涝篮 唱坷霸 等促
if(!isNationWarfieldServer()) return 0;//荤恩荐 眉农 秦辑 扁夯利牢吧 葛滴 眉欧 秦 敌促
int MemberCount = g_pWarfield->GetSquadCurrentMemberCount(iBattleType,iSquadNo);
if( MemberCount )//炼扒
{
if(MemberCount < 19 )
iRareSquadGradeNow = 1;
if(MemberCount < 29 && MemberCount > 19 )
iRareSquadGradeNow = 2;
if(MemberCount < 39 && MemberCount > 29 )
iRareSquadGradeNow = 3;
if(MemberCount < 49 && MemberCount > 39)
iRareSquadGradeNow = 4;
if(MemberCount > 49 )
iRareSquadGradeNow = 5;
iSquadNowRareClass[iSquadNo] = iRareSquadGradeNow ;//捞仇狼 蔼阑 官层 林搁 等促
}
//荤飞包捞 乐栏搁 钙胶 蔼俊 true 甫 歹秦霖促 ( +1 登绰巴 )
iSquadNowMaxRareClass[iSquadNo] = iSquadNowMaxRareClass[iSquadNo]+bCommanderLogin;
if( bSquadLeaderLogin )//何措厘捞 乐栏搁 殿鞭阑 霖促
{
if(iSquadItemStatus)//荤扁 惑铰 酒捞袍阑 静搁 捞 蔼捞 +1 捞 登绊 荤扁 历窍 酒捞袍阑 静搁 -1捞 等促.
{
iSquadNowRareClass[iSquadNo] += iSquadItemStatus;//府悸 胶鸥老捞骨肺 捌沥绝捞 茄促.
if( iSquadNowRareClass[iSquadNo] > iSquadNowMaxRareClass[iSquadNo])
{
iSquadNowRareClass[iSquadNo]=iSquadNowMaxRareClass[iSquadNo];
}
else if( iSquadNowRareClass[iSquadNo] < 0)
{
iSquadNowRareClass[iSquadNo] =0;
}
}
}
else
{
iSquadNowRareClass[iSquadNo] = 0;//何措厘捞 绝栏搁 力肺促.
}
return iRareSquadGradeNow = iSquadNowRareClass[iSquadNo];
}
//傈里鸥涝 ( Attacker Defencer ReForce), 目池记 逞滚, 傈里 包访 酒捞袍(荤扁)
void SquadRareReSet(int iBattleType, int cn,int iSquadItemStatus)//iSquadItemStatus->傈里 荤扁 酒捞袍俊 狼茄 努贰胶 函版蔼
{//020215 lsw
//鸥涝苞 何措 逞滚客 荤飞包苞 府歹啊 乐唱甫 眉农 窍咯
//何咯且 饭绢 加己苞 殿鞭阑 惶酒辰促
CHARLIST *ch = &connections[cn].chrlst;
int iSquadNo = connections[cn].chrlst.NWCharacter.SquadNo;
int iRareClass = 0;
//捞霸 况鞘靛 牢啊.
if(!isNationWarfieldServer()) return;
bool bCommanderLogin = g_pWarfield->CommanderExist(iBattleType);
bool bSquadLeaderLogin = g_pWarfield->SquadLeaderExist(iBattleType,connections[cn].chrlst.NWCharacter.SquadNo);
int iSquadRareClass = CheckSquadRareGrade(iBattleType ,iSquadNo , g_pWarfield->GetSquadCurrentMemberCount(iBattleType,iSquadNo), bCommanderLogin, bSquadLeaderLogin, iSquadItemStatus);
//鸥涝( 傍拜磊 , 规绢磊 , 侩捍)
//胶孽靛 逞滚 俊 老摹 窍绰 荤恩阑 八祸 秦 郴磊
SquadList* g_SquadList;
g_SquadList = g_pWarfield->GetSquadListPointer(iBattleType,iSquadNo);
char SquadRare[3] = {0,0,0};
//011008 lsw 捞芭 林籍 仟技夸
memcpy(SquadRare,g_pWarfield->GetSquadRareSok2(iBattleType,iSquadNo),3);
for(SquadListItor itor=g_SquadList->begin(); itor!=g_SquadList->end() ; itor++)
{
//胶孽靛绰 0,1,2,3 栏肺 秦 林技夸..
ch = &connections[(*itor)->GetData()].chrlst;
if(ch)
{
ch->SquadRare.grade = iSquadRareClass;
ch->SquadRare.soksung1 = SquadRare[0];
ch->SquadRare.soksung2 = SquadRare[1];
ch->SquadRare.soksung3 = SquadRare[2];
ResetAbility(ch);
}
}
}
//傈里 包府侩 辑滚啊 龋免 // 加己沥窍扁父 钦聪促.
void GetSquadRare(char *Squadrare,int squadNo/*char [3]*/)
{
if( !isNationManageServer() )
return;
if (!Squadrare[0]) //捞固 加己阑 罐篮 版快绰 加己 何咯 窍瘤 臼绰促
{
int squadrarecount =0;
int squadrarecountMax =0;
switch (squadNo)
{
case 1:
case 2:
{
squadrarecountMax = 3;
}break;
case 3:
case 4:
{
squadrarecountMax = 2;
}break;
default:
squadrarecountMax = 0;
break;
}
for(squadrarecount = 0;squadrarecount<squadrarecountMax;squadrarecount++)
{
//捞力 加己阑 罐酒吭促//加己捞 葛滴 沥秦脸促.
//咯扁辑 持绢林扁
Squadrare[squadrarecount] = ItemMgr.GetAbleRareKind(RARE_ABLE|RARE_ABLE_SQUAD,0);//惫啊傈侩//020725 lsw
}
}
}
extern bool isNewWarfieldServer();
extern CNewWarfield* g_pNewWarfield;
// 020418 YGI
int IsStartNationWar() // 捞 甘捞 傈捧 甘捞绊 泅犁 傈捧 吝牢啊?
{
if (isNationWarfieldServer())
{
if (g_pWarfield->GetStatus()==NW_WAR)
return true;
}
if (isNewWarfieldServer())
{
if (g_pNewWarfield->GetWarfieldStatus()==NW_WAR)
return true;
}
return false;
// return ( isNationWarfieldServer() && g_pWarfield->GetStatus()==NW_WAR );
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -