📄 skill_lsw.cpp
字号:
HSTMT hStmt = NULL;
RETCODE retCode;
SDWORD cbValue;
SQLAllocStmt(hDBC, &hStmt);
retCode = SQLExecDirect(hStmt, (UCHAR *)"Select * from ItemControlPercent order by [no]", SQL_NTS);
if(retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
int i = 1;
retCode = SQLFetch(hStmt);
while( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
if(i >= MAX_ITEMCONTROLPERCENT)
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
/*
typedef struct ItemControlPercent
{
int iNo
int Per[8];//0锅篮 配呕蔼 1~5绰 海捞流 弊缝 6~7篮 饭绢 弊缝
}ItemControlPercent;
*/
int column = 0;
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &ItemControlPercent[i].iNo, 0, &cbValue);
int iTotal = 0;
for(int count= 1; count <8; count ++)
{
int iDummy = 0;
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &iDummy, 0, &cbValue);
ItemControlPercent[i].per[count] = iDummy;
iTotal+=iDummy;
}
ItemControlPercent[i].per[0] = iTotal;
i++;
retCode = SQLFetch(hStmt);
if(retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
}
else if( retCode == SQL_NO_DATA )
{
break;
}
else
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
}
}
else
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
SQLFreeStmt(hStmt, SQL_DROP); // 0308 YGI
return true;
}
bool LoadItemFallPercent()//逛冈绊 父甸磊~
{
HSTMT hStmt = NULL;
RETCODE retCode;
SDWORD cbValue;
SQLAllocStmt(hDBC, &hStmt);
retCode = SQLExecDirect(hStmt, (UCHAR *)"Select * from ItemFallPercent order by [no]", SQL_NTS);
if(retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
int i = 1;
retCode = SQLFetch(hStmt);
while( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
if(i >= MAX_ITEMFALLPERCENT) return false;
/*
typedef struct ItemFallPercent
{
int iNo
int per[21];//0 锅篮 配呕 蔼 捞促
}ItemFallPercent;
*/
int column = 0;
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &ItemFallPercent[i].iNo, 0, &cbValue);
int iTotal = 0;
for(int count= 1; count <21; count ++)
{
int iDummy = 0;
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &iDummy, 0, &cbValue);
ItemFallPercent[i].per[count] = iDummy;
iTotal+=iDummy;
}
ItemFallPercent[i].per[0] = iTotal;
i++;
retCode = SQLFetch(hStmt);
if(retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
}
else if( retCode == SQL_NO_DATA )
{
break;
}
else
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
}
}
else
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
SQLFreeStmt(hStmt, SQL_DROP); // 0308 YGI
return true;
}
bool LoadBasicItemBag()
{
HSTMT hStmt = NULL;
RETCODE retCode;
SDWORD cbValue;
SQLAllocStmt(hDBC, &hStmt);
retCode = SQLExecDirect(hStmt, (UCHAR *)"Select * from BasicItemBag order by [no]", SQL_NTS);
if(retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
int i = 1;
retCode = SQLFetch(hStmt);
while( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
if(i >= MAX_BASICITEMBAG)
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
/*
typedef struct BasicItemBag
{
int iNo;
int BasicItemPercentTableNo;
int ItemNo[21];//0锅篮 绝绰蔼
}BasicItemBag;
*/
int column = 0;
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &BasicItemBag[i].iNo, 0, &cbValue);
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &BasicItemBag[i].iBasicItemPercentTableNo, 0, &cbValue);
// int iTotal = 0;
for(int count= 1; count <21; count ++)
{
int iDummy = 0;
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &iDummy, 0, &cbValue);
BasicItemBag[i].ItemNo[count] = iDummy;
// iTotal+=iDummy;
}
i++;
retCode = SQLFetch(hStmt);
if(retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
}
else if( retCode == SQL_NO_DATA )
{
break;
}
else
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
}
}
else
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
SQLFreeStmt(hStmt, SQL_DROP); // 0308 YGI
return true;
}
bool LoadItemControl()
{
HSTMT hStmt = NULL;
RETCODE retCode;
SDWORD cbValue;
SQLAllocStmt(hDBC, &hStmt);
retCode = SQLExecDirect(hStmt, (UCHAR *)"Select * from ItemControl order by [no]", SQL_NTS);
if(retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
int i = 1;
retCode = SQLFetch(hStmt);
while( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
if(i >= MAX_ITEMCONTROL)
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
/*
typedef struct ItemControl
{
int iNo;
int ItemControlPercentNo;
int ItemGroup[8];//0锅篮 绝绰蔼 1~5绰 海捞流 弊缝 6~7篮 饭绢 弊缝
int iFallItemCount;//冻绢龙 肮荐, 溜, 馆汗巩 龋免 冉荐
}ItemControl;
*/
int column = 0;
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &ItemControl[i].iNo, 0, &cbValue);
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &ItemControl[i].ItemControlPercentNo, 0, &cbValue);
// int iTotal = 0;
for(int count= 1; count <8; count ++)
{
int iDummy = 0;
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &iDummy, 0, &cbValue);
ItemControl[i].ItemGroup[count] = iDummy;
// iTotal+=iDummy;
}
retCode = SQLGetData(hStmt, ++column, SQL_C_LONG, &ItemControl[i].iFallItemCount, 0, &cbValue);
i++;
retCode = SQLFetch(hStmt);
if(retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)
{
}
else if( retCode == SQL_NO_DATA )
{
break;
}
else
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
}
}
else
{
SQLFreeStmt(hStmt, SQL_DROP);
return false;
}
SQLFreeStmt(hStmt, SQL_DROP); // 0308 YGI
return true;
}
extern void SendGameToClientWhoSendMail( char *name );
int HandleCommand2( t_packet *p, t_connection c[], int cn )
{
switch( p->h.header.type )
{
case CMD_CONFORM_SADONIX:
{
SkillMgr.RecvCMD_CONFORM_SADONIX(*p);
}break;
case CMD_MOVE_TO_HOMETOWN:
{
if(g_MapPort != 5300)
{
CHARLIST *ch = CheckServerId(cn);
if (ch)
{
if (ENABLE_HOMETOWN_LEVEL >= ch->GetLevel() && 0 < ch->GetLevel())
{ //< CSD-030806
MoveToHomeTown(ch);
} //> CSD-030806
}
}
}break;
case CMD_MOVE_TO_HOMETOWN_WITH_ALIVE:
{
if(g_MapPort != 5300 && g_MapPort != 5830)//檬焊磊 荐访家啊 酒聪扼搁 //020827 lsw
{
CHARLIST *ch = CheckServerId(cn);
if (ch)
{
if (ENABLE_HOMETOWN_LEVEL >= ch->GetLevel() && 0 < ch->GetLevel())
{ //< CSD-030806
MoveToHomeTownWithAilve(ch);
} //> CSD-030806
}
}
}break;
case CMD_COMFORM_RESET_ABILILTY:
{
RecvCMD_COMFORM_RESET_ABILITY(*p);
}break;
case CMD_MERCHANT_BUY_ITEM_SEARCH_CLIENT:
{
Auction.RecvCMD_MERCHANT_BUY_LIST_REQUEST(cn,*p);
}break;
case CMD_MERCHANT_BUY_ITEM_SEARCH_RESULT:
{
if(cn == DB_DEMON)
{
Auction.RecvCMD_MERCHANT_BUY_LIST_REQUEST_RESULT(*p); //叼厚单阁波父 牢沥
}
else
{
MyLog(0,"Crack CMD_MERCHANT_BUY_ITEM_SEARCH_RESULT");
}
}break;
case CMD_MERCHANT_SELL_LIST_REQUEST_RESULT:
{
if(cn == DB_DEMON)
{
Auction.RecvCMD_MERCHANT_SELL_LIST_REQUEST_RESULT(*p); //叼厚单阁波父 牢沥
}
else
{
MyLog(0,"Crack CMD_MERCHANT_SELL_LIST_REQUEST_RESULT");
}
}break;
case CMD_MERCHANT_SELL_ITEM_INFO_REQUEST://努扼捞攫飘 惑牢捞 焊郴绰 菩哦
{
Auction.RecvCMD_MERCHANT_SELL_LIST_REQUEST(cn,*p);
}break;
case CMD_MERCHANT_ITEM_BUY ://努扼捞攫飘肺 何磐 罐绊
{
Auction.RecvCMD_MERCHANT_ITEM_BUY(cn,*p);
}break;
case CMD_MERCHANT_ITEM_BUY_RESULT:
{
if(cn == DB_DEMON)
{
Auction.RecvCMD_MERCHANT_ITEM_BUY_RESULT(*p); //叼厚单阁波父 牢沥
}
else
{
}
}break;
case CMD_MERCHANT_ITEM_BUY_COMFORM_RESULT://叼厚单阁捞 IsEnd甫 眉农 窍绊 览翠阑 林绰镑
{
if(cn == DB_DEMON)
{
Auction.RecvCMD_MERCHANT_ITEM_BUY_COMFORM_RESULT(cn,*p); //叼厚单阁波父 牢沥
}
else
{
MyLog(0,"Crack CMD_MERCHANT_ITEM_BUY_COMFORM_RESULT");
}
}break;
case CMD_MERCHANT_SELL_ITEM_REGISTER://努扼捞攫飘肺何磐 酒捞袍 殿废 菩哦阑 罐酒忱聪促.
{
Auction.RecvCMD_MERCHANT_SELL_ITEM_REGISTER(cn,*p);
}break;
case CMD_MERCHANT_SELL_ITEM_REGISTER_RESULT://魄概酒捞袍阑 殿废茄 搬苞甫 叼厚肺 何磐 罐嚼聪促..
{
if(cn == DB_DEMON)
{
Auction.RecvCMD_MERCHANT_SELL_ITEM_REGISTER_RESULT(*p); //叼厚单阁波父 牢沥
}
else{MyLog(0,"Crack CMD_MERCHANT_ITEM_BUY_COMFORM_RESULT");}
}break;
case CMD_MERCHANT_SELL_ITEM_REGISTER_COMFORM_RESULT:
{
if(cn == DB_DEMON)
{
Auction.RecvCMD_MERCHANT_SELL_ITEM_REGISTER_COMFORM_RESULT(cn,*p); //叼厚单阁波父 牢沥
}
else{MyLog(0,"Crack CMD_MERCHANT_SELL_ITEM_REGISTER_COMFORM_RESULT");}
}break;
//昏力 窍扁
case CMD_MERCHANT_SELL_ITEM_DELETE://努扼捞攫飘肺 何磐 魄概 秒家甫 罐绰促
{
Auction.RecvCMD_MERCHANT_SELL_ITEM_DELETE(cn,*p);
}break;
case CMD_MERCHANT_SELL_ITEM_DELETE_RESULT://叼厚肺 何磐 秒家 搬苞甫 罐酒 努扼捞攫飘俊霸 焊辰促
{
Auction.RecvCMD_MERCHANT_SELL_ITEM_DELETE_RESULT(cn,*p);
}break;
case CMD_MERCHANT_SELL_ITEM_DELETE_COMFORM_RESULT://叼厚肺 何磐 魄概秒家茄 搬苞甫 罐绰促
{
Auction.RecvCMD_MERCHANT_SELL_ITEM_DELETE_COMFORM_RESULT(cn,*p);
}break;
//芭贰 搬苞 府胶飘 >
case CMD_MERCHANT_RESULT_LIST_REQUEST://府胶飘甫 夸没 罐疽嚼聪促.(努扼捞攫飘肺 何磐)
{
Auction.RecvCMD_MERCHANT_RESULT_LIST_REQUEST(cn,*p);
}break;
case CMD_MERCHANT_RESULT_LIST_REQUEST_RESULT://搬苞甫 罐疽谰聪促(叼厚肺 何磐)
{
Auction.RecvCMD_MERCHANT_RESULT_LIST_REQUEST_RESULT(*p);
}break;
//芭贰 搬苞 府胶飘 <
case CMD_MERCHANT_RESULT_TAKE://啊廉啊摆翠聪促.
{
Auction.RecvCMD_MERCHANT_RESULT_TAKE(cn,*p);
}break;
case CMD_MERCHANT_RESULT_TAKE_RESULT://搬苞拱阑 啊廉啊绰 搬苞甫 罐嚼聪促.(叼厚肺 何磐
{
if(cn == DB_DEMON)
{
Auction.RecvCMD_MERCHANT_RESULT_TAKE_RESULT(*p);
}
else{MyLog(0,"Crack CMD_MERCHANT_RESULT_TAKE_RESULT");}
}break;
case CMD_MERCHANT_RESULT_TAKE_COMFORM_RESULT:
{
if(cn == DB_DEMON)
{
Auction.RecvCMD_MERCHANT_RESULT_TAKE_COMFORM_RESULT(cn,*p);
}
else{MyLog(0,"Crack CMD_MERCHANT_RESULT_TAKE_COMFORM_RESULT");}
}break;
//<! BBD 040303 赣玫飘
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -