本文整理汇总了C++中PlayerCreature::getSMSCharge方法的典型用法代码示例。如果您正苦于以下问题:C++ PlayerCreature::getSMSCharge方法的具体用法?C++ PlayerCreature::getSMSCharge怎么用?C++ PlayerCreature::getSMSCharge使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PlayerCreature
的用法示例。
在下文中一共展示了PlayerCreature::getSMSCharge方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: execute
void CGSMSSendHandler::execute (CGSMSSend* pPacket , Player* pPlayer)
throw(ProtocolException , Error)
{
__BEGIN_TRY __BEGIN_DEBUG_EX
#ifdef __GAME_SERVER__
Assert(pPacket != NULL);
Assert(pPlayer != NULL);
GamePlayer* pGamePlayer = dynamic_cast<GamePlayer*>(pPlayer);
Assert(pGamePlayer != NULL);
PlayerCreature* pPC = dynamic_cast<PlayerCreature*>(pGamePlayer->getCreature());
Assert(pPC != NULL);
filelog("SMS.log", "[%s:%s] %s", pGamePlayer->getID().c_str(), pPC->getName().c_str(), pPacket->toString().c_str());
GCAddressListVerify gcVerify;
if (pPC->getSMSCharge() < pPacket->getNumbersList().size() )
{
filelog("SMS.log", "[%s:%s] Charge가 모자랍니다.", pGamePlayer->getID().c_str(), pPC->getName().c_str());
gcVerify.setCode(GCAddressListVerify::SMS_SEND_FAIL);
gcVerify.setParameter(GCAddressListVerify::SMS_SEND_FAIL_NOT_ENOUGH_CHARGE);
pGamePlayer->sendPacket(&gcVerify);
return;
}
pPC->setSMSCharge(pPC->getSMSCharge() - pPacket->getNumbersList().size());
char buffer[100];
sprintf(buffer, "SMSCharge=%u", pPC->getSMSCharge());
pPC->tinysave(buffer);
list<string>::const_iterator itr = pPacket->getNumbersList().begin();
list<string>::const_iterator endItr = pPacket->getNumbersList().end();
for (; itr != endItr ; ++itr )
{
if (SMSServiceThread::Instance().isValidNumber(*itr ) )
{
SMSMessage* pMsg = new SMSMessage(pPC->getName(), *itr, pPacket->getCallerNumber(), pPacket->getMessage());
SMSServiceThread::Instance().pushMessage(pMsg);
}
}
gcVerify.setCode(GCAddressListVerify::SMS_SEND_OK);
gcVerify.setParameter(pPC->getSMSCharge());
pGamePlayer->sendPacket(&gcVerify);
#endif
__END_DEBUG_EX __END_CATCH
}