本文整理汇总了C++中PlayerCreature::getGold方法的典型用法代码示例。如果您正苦于以下问题:C++ PlayerCreature::getGold方法的具体用法?C++ PlayerCreature::getGold怎么用?C++ PlayerCreature::getGold使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PlayerCreature
的用法示例。
在下文中一共展示了PlayerCreature::getGold方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: execute
void CGStashRequestBuyHandler::execute (CGStashRequestBuy* pPacket , Player* pPlayer)
throw(ProtocolException , Error)
{
__BEGIN_TRY __BEGIN_DEBUG_EX
__BEGIN_DEBUG
#ifdef __GAME_SERVER__
Assert(pPacket != NULL);
Assert(pPlayer != NULL);
GamePlayer* pGamePlayer = dynamic_cast<GamePlayer*>(pPlayer);
Creature* pPC = pGamePlayer->getCreature();
PlayerCreature* pPlayerCreature = dynamic_cast<PlayerCreature*>(pPC);
BYTE curStashNum = pPlayerCreature->getStashNum();
// 가지고 있는 보관함이 맥스라면 리턴
if (curStashNum >= STASH_RACK_MAX)
{
GCNPCResponse failpkt;
failpkt.setCode(NPC_RESPONSE_STASH_SELL_FAIL_MAX);
pPlayer->sendPacket(&failpkt);
return;
}
Price_t price = g_pPriceManager->getStashPrice(curStashNum+1);
// 돈이 모자라도 실패쥐.
if (pPlayerCreature->getGold() < price)
{
GCNPCResponse failpkt;
failpkt.setCode(NPC_RESPONSE_STASH_SELL_FAIL_MONEY);
pPlayer->sendPacket(&failpkt);
return;
}
// 보관함 갯수를 한 칸 늘려주고...
pPlayerCreature->setStashNumEx(curStashNum+1);
// 돈을 줄인다.
//pPlayerCreature->setGoldEx(pPlayerCreature->getGold() - price);
// by sigi. 2002.9.4
pPlayerCreature->decreaseGoldEx(price);
// 마지막으로 OK 패킷을 날려준다.
GCNPCResponse okpkt;
okpkt.setCode(NPC_RESPONSE_STASH_SELL_OK);
pPlayer->sendPacket(&okpkt);
#endif
__END_DEBUG
__END_DEBUG_EX __END_CATCH
}
示例2: executeOpAllSkull
//////////////////////////////////////////////////////////////////////////////
//
// 해골 한꺼번에 팔기를 실행한다.
//
//////////////////////////////////////////////////////////////////////////////
void CGShopRequestSellHandler::executeOpAllSkull (CGShopRequestSell* pPacket , Player* pPlayer)
throw(ProtocolException , Error)
{
__BEGIN_TRY __BEGIN_DEBUG_EX
#ifdef __GAME_SERVER__
ObjectID_t NPCID = pPacket->getObjectID();
GamePlayer* pGamePlayer = dynamic_cast<GamePlayer*>(pPlayer);
Creature* pCreature = pGamePlayer->getCreature();
PlayerCreature* pPC = dynamic_cast<PlayerCreature*>(pCreature);
Zone* pZone = pPC->getZone();
if (pZone == NULL) return sendFailPacket(pPacket, pPlayer);
Creature* pNPCBase = NULL;
/*
try
{
pNPCBase = pZone->getCreature(NPCID);
}
catch (NoSuchElementException & nsee)
{
pNPCBase = NULL;
}
*/
// NoSuch제거. by sigi. 2002.5.2
pNPCBase = pZone->getCreature(NPCID);
if (pNPCBase == NULL || !pNPCBase->isNPC()) return sendFailPacket(pPacket, pPlayer);
NPC* pNPC = dynamic_cast<NPC*>(pNPCBase);
Inventory* pInventory = pPC->getInventory();
// by sigi. 2002.9.4
//Gold_t playerMoney = pPC->getGold();
Price_t itemPrice = 0;
Item* pItem = NULL;
for (uint y=0; y<pInventory->getHeight(); y++)
{
for (uint x=0; x<pInventory->getWidth(); x++)
{
pItem = pInventory->getItem(x, y);
// 아이템이 존재하고, 해골이라면...
if (pItem != NULL && pItem->getItemClass() == Item::ITEM_CLASS_SKULL)
{
// 아이템 가격을 계산해서 플레이어의 돈에다 더한다.
//itemPrice = g_pPriceManager->getPrice(pItem, pNPC->getMarketCondBuy(), SHOP_RACK_NORMAL, pPC) * pItem->getNum();
//playerMoney += itemPrice;
// by sigi. 2002.9.4
itemPrice += g_pPriceManager->getPrice(pItem, pNPC->getMarketCondBuy(), SHOP_RACK_NORMAL, pPC) * pItem->getNum();
// 인벤토리 및 DB에서 아이템을 삭제한다.
pInventory->deleteItem(x, y);
pItem->destroy();
SAFE_DELETE(pItem);
}
}
}
itemPrice = itemPrice * (g_pVariableManager->getHeadPriceBonus() / 100);
// 플레이어에게 물건값을 지불한다.
//pPC->setGoldEx(playerMoney);
// by sigi. 2002.9.4
pPC->increaseGoldEx(itemPrice);
// 물건을 산 플레이어에게 GCShopSellOK를...보낸다.
GCShopSellOK okpkt;
okpkt.setObjectID(NPCID);
okpkt.setShopVersion(pNPC->getShopVersion(SHOP_RACK_NORMAL));
okpkt.setItemObjectID(0);
okpkt.setPrice(pPC->getGold());
pPlayer->sendPacket(&okpkt);
#endif
__END_DEBUG_EX __END_CATCH
}
示例3: executeMotorcycle
//////////////////////////////////////////////////////////////////////////////
//
// 모터 사이클을 처리한다.
//
//////////////////////////////////////////////////////////////////////////////
void CGShopRequestSellHandler::executeMotorcycle (CGShopRequestSell* pPacket , Player* pPlayer)
throw(ProtocolException , Error)
{
__BEGIN_TRY __BEGIN_DEBUG_EX
#ifdef __GAME_SERVER__
// 패킷 정보를 뽑아낸다.
ObjectID_t NPCID = pPacket->getObjectID();
ObjectID_t ITEMOID = pPacket->getItemObjectID();
GamePlayer* pGamePlayer = dynamic_cast<GamePlayer*>(pPlayer);
Creature* pCreature = pGamePlayer->getCreature();
PlayerCreature* pPC = dynamic_cast<PlayerCreature*>(pCreature);
Zone* pZone = pPC->getZone();
if (pZone == NULL) return sendFailPacket(pPacket, pPlayer);
Creature* pNPCBase = NULL;
/*
try
{
pNPCBase = pZone->getCreature(NPCID);
}
catch (NoSuchElementException & nsee)
{
pNPCBase = NULL;
}
*/
// NoSuch제거. by sigi. 2002.5.2
pNPCBase = pZone->getCreature(NPCID);
if (pNPCBase == NULL || !pNPCBase->isNPC()) return sendFailPacket(pPacket, pPlayer);
NPC* pNPC = dynamic_cast<NPC*>(pNPCBase);
int CenterX = pNPC->getX();
int CenterY = pNPC->getY();
// 플레이어가 팔려고 하는 아이템을 가지고 있는지 검사
Inventory* pInventory = pPC->getInventory();
Gold_t playerMoney = pPC->getGold();
Item* pItem = pInventory->getItemWithObjectID(ITEMOID);
if (pItem == NULL) return sendFailPacket(pPacket, pPlayer);
// 주위 일정 범위를 검색해서, 모터 사이클이 있는지 확인한다.
try
{
for (int zx=CenterX-5; zx<=CenterX+5; zx++)
{
for (int zy=CenterY-5; zy<=CenterY+5; zy++)
{
// 바운드를 넘어가지 않는가를 체크
if (!isValidZoneCoord(pZone, zx, zy)) continue;
Tile & tile = pZone->getTile(zx, zy);
if (tile.hasItem())
{
Item* pItemOnTile = tile.getItem();
if (pItemOnTile == NULL) continue;
// 만일 아이템이 타일 위에 있을 경우, 모터 사이클인지 확인한다.
if (pItemOnTile->getItemClass() == Item::ITEM_CLASS_MOTORCYCLE)
{
DWORD targetID = dynamic_cast<Key*>(pItem)->getTarget();
ItemID_t motorcycleID = pItemOnTile->getItemID();
if (targetID == motorcycleID)
{
// 모터사이클을 DB에서 삭제한다.
pItemOnTile->destroy();
// 플레이어의 인벤토리에서 열쇠를 제거한다.
pInventory->deleteItem(ITEMOID);
pItem->destroy();
SAFE_DELETE(pItem);
// 열쇠 값이 아니라, 오토바이 값을 줘야 한다.
Price_t itemPrice = g_pPriceManager->getPrice(pItemOnTile, pNPC->getMarketCondBuy(), SHOP_RACK_NORMAL, pPC);
// 플레이어의 돈을 늘린다.
//pPC->setGoldEx(playerMoney+itemPrice);
// by sigi. 2002.9.4
pPC->increaseGoldEx(itemPrice);
// 물건을 판 플레이어에게 GCShopSellOK를...보낸다.
GCShopSellOK okpkt;
okpkt.setObjectID(NPCID);
if (!pItemOnTile->getOptionTypeList().empty()) okpkt.setShopVersion(pNPC->getShopVersion(SHOP_RACK_SPECIAL));
else okpkt.setShopVersion(pNPC->getShopVersion(SHOP_RACK_NORMAL));
okpkt.setItemObjectID(ITEMOID);
okpkt.setPrice(playerMoney+itemPrice);
pPlayer->sendPacket(&okpkt);
// 뻑킹 센터에서 박스를 삭제해 준다.
if (g_pParkingCenter->hasMotorcycleBox(motorcycleID))
//.........这里部分代码省略.........
示例4: executeNormal
//.........这里部分代码省略.........
// 걸어다니는 크리쳐를 검색
if (tile.hasCreature(Creature::MOVE_MODE_WALKING))
{
pNearCreature = tile.getCreature(Creature::MOVE_MODE_WALKING);
if (pNearCreature == NULL) continue;
// 방금 물건을 판 플레이어라면 생략
if (pNearCreature->getObjectID() == pPC->getObjectID()) continue;
// 만약 플레이어라면 패킷을 보내준다.
if (pNearCreature->isPC())
{
pNearPlayer = pNearCreature->getPlayer();
if (pNearPlayer == NULL) continue;
pNearPlayer->sendPacket(&boughtpkt);
}
}
// 날아다니는 크리쳐를 검색
if (tile.hasCreature(Creature::MOVE_MODE_FLYING))
{
pNearCreature = tile.getCreature(Creature::MOVE_MODE_FLYING);
if (pNearCreature == NULL) continue;
// 방금 물건을 판 플레이어라면 생략
if (pNearCreature->getObjectID() == pPC->getObjectID()) continue;
// 만약 플레이어라면 패킷을 보내준다.
if (pNearCreature->isPC())
{
pNearPlayer = pNearCreature->getPlayer();
if (pNearPlayer == NULL) continue;
pNearPlayer->sendPacket(&boughtpkt);
}
}
} // end of for (ZoneCoord_t zy=CenterY-5; zy<=CenterY+5; zy++)
} // end of for (ZoneCoord_t zx=CenterX-5; zx<=CenterX+5; zx++)
}
catch (Throwable & t)
{
filelog("shopbug_packet.log", "%s", t.toString().c_str());
}
} // if (index < SHOP_RACK_INDEX_MAX)
else
{
SAFE_DELETE(pItem);
}
} // if (pItem->getOptionType() != 0)
else
{
bSpecialItem = false;
SAFE_DELETE(pItem);
}
// 물건을 산 플레이어에게 GCShopSellOK를...보낸다.
GCShopSellOK okpkt;
okpkt.setObjectID(NPCID);
if (bSpecialItem) okpkt.setShopVersion(pNPC->getShopVersion(SHOP_RACK_SPECIAL));
else okpkt.setShopVersion(pNPC->getShopVersion(SHOP_RACK_NORMAL));
okpkt.setItemObjectID(ITEMOID);
//okpkt.setPrice(playerMoney+itemPrice);
// playerMoney + itemPrice 가 MAX_MONEY를 넘어갈 수 있다.
// 2003.1.8 by bezz
okpkt.setPrice(pPC->getGold());
pPlayer->sendPacket(&okpkt);
if (bClearDefaultOptionTypes )
{
pPC->clearDefaultOptionTypes();
pPC->initAllStatAndSend();
if (pPC->isSlayer() )
{
Slayer* pSlayer = dynamic_cast<Slayer*>(pPC);
Assert(pSlayer != NULL);
pSlayer->sendRealWearingInfo();
}
else if (pPC->isVampire() )
{
Vampire* pVampire = dynamic_cast<Vampire*>(pPC);
Assert(pVampire != NULL);
pVampire->sendRealWearingInfo();
}
else if (pPC->isOusters() )
{
Ousters* pOusters = dynamic_cast<Ousters*>(pPC);
Assert(pOusters != NULL);
pOusters->sendRealWearingInfo();
}
}
#endif
__END_DEBUG_EX __END_CATCH
}
示例5: execute
////////////////////////////////////////////////////////////////////////////////
// 액션을 실행한다.
////////////////////////////////////////////////////////////////////////////////
void ActionRegisterSiege::execute (Creature * pCreature1 , Creature * pCreature2)
throw(Error)
{
__BEGIN_TRY
#ifndef __OLD_GUILD_WAR__
Assert(pCreature1 != NULL);
Assert(pCreature2 != NULL);
Assert(pCreature1->isNPC());
Assert(pCreature2->isPC());
SYSTEM_RETURN_IF_NOT(SYSTEM_GUILD_WAR);
GCNPCResponse gcNPCResponse;
PlayerCreature* pPC = dynamic_cast<PlayerCreature*>(pCreature2);
GuildID_t guildID = pPC->getGuildID();
if (!g_pVariableManager->isWarActive() || !g_pVariableManager->isActiveGuildWar() )
{
gcNPCResponse.setCode(NPC_RESPONSE_WAR_UNAVAILABLE);
pPC->getPlayer()->sendPacket(&gcNPCResponse);
return;
}
if (!g_pGuildManager->isGuildMaster(guildID, pPC ) )
{
gcNPCResponse.setCode(NPC_RESPONSE_NOT_GUILD_MASTER);
pPC->getPlayer()->sendPacket(&gcNPCResponse);
return;
}
Gold_t warRegistrationFee = g_pVariableManager->getVariable(WAR_REGISTRATION_FEE);
if (pPC->getGold() < warRegistrationFee )
{
gcNPCResponse.setCode(NPC_RESPONSE_NOT_ENOUGH_MONEY);
pPC->getPlayer()->sendPacket(&gcNPCResponse);
return;
}
Zone* pZone = getZoneByZoneID(m_ZoneID);
Assert(pZone != NULL);
Assert(pZone->isCastle());
WarScheduler* pWarScheduler = pZone->getWarScheduler();
Assert(pWarScheduler != NULL);
/* 성을 소유했어도 전쟁 신청이 되도록 수정함 (자기 성에는 신청 못하겠지 -_-;;)
// 이미 성을 소유한 길드인가?
if (g_pGuildManager->hasCastle(guildID ) )
{
gcNPCResponse.setCode(NPC_RESPONSE_ALREADY_HAS_CASTLE);
pPC->getPlayer()->sendPacket(&gcNPCResponse);
return;
}
*/
// ServerID_t serverID;
// ZoneID_t zoneID;
// bool bHasCastle = g_pGuildManager->hasCastle(guildID , serverID , zoneID);
// if (bHasCastle && serverID == g_pConfig->getPropertyInt("ServerID" ) && zoneID == m_ZoneID )
CastleInfo* pCastleInfo = g_pCastleInfoManager->getCastleInfo(m_ZoneID);
GuildID_t ownerGuildID = pCastleInfo->getGuildID();
if (guildID == ownerGuildID )
{
gcNPCResponse.setCode(NPC_RESPONSE_ALREADY_HAS_CASTLE);
pPC->getPlayer()->sendPacket(&gcNPCResponse);
return;
}
// 이미 전쟁 신청을 했는가?
if (g_pGuildManager->hasWarSchedule(guildID ) )
{
gcNPCResponse.setCode(NPC_RESPONSE_WAR_ALREADY_REGISTERED);
pPC->getPlayer()->sendPacket(&gcNPCResponse);
return;
}
// 전쟁 스케쥴이 다 찼는가?
/* if (!pWarScheduler->canAddWar(WAR_GUILD ) )
{
gcNPCResponse.setCode(NPC_RESPONSE_WAR_SCHEDULE_FULL);
pPC->getPlayer()->sendPacket(&gcNPCResponse);
return;
}
GuildWar* pWar = new GuildWar(m_ZoneID, guildID, War::WAR_STATE_WAIT);
pWar->setRegistrationFee(warRegistrationFee);
if (!pWarScheduler->addWar(pWar ) )
{
gcNPCResponse.setCode(NPC_RESPONSE_WAR_SCHEDULE_FULL);
//.........这里部分代码省略.........
示例6: execute
//.........这里部分代码省略.........
Zone* pZone = pCreature->getZone();
Assert(pZone != NULL);
pZone->broadcastPacket(pCreature->getX(), pCreature->getY(), &gcOtherModifyInfo, pCreature);
}
__LEAVE_CRITICAL_SECTION((*g_pPCFinder))
// Guild Member 객체를 삭제한다.
SAFE_DELETE(pGuildMember);
}
// 길드 멤버 맵을 삭제한다.
Members.clear();
// 길드 매니저에서 길드를 삭제한다.
g_pGuildManager->deleteGuild(pGuild->getID());
// 길드 객체를 삭제한다.
SAFE_DELETE(pGuild);
}
else if (pGuild->getState() == Guild::GUILD_STATE_WAIT )
{
HashMapGuildMember& Members = pGuild->getMembers();
HashMapGuildMemberItor itr = Members.begin();
Statement* pStmt = NULL;
Result* pResult = NULL;
BEGIN_DB
{
pStmt = g_pDatabaseManager->getConnection("DARKEDEN" )->createStatement();
for (; itr != Members.end(); itr++ )
{
GuildMember* pGuildMember = itr->second;
// 접속해 있으면
__ENTER_CRITICAL_SECTION((*g_pPCFinder))
Creature* pCreature = g_pPCFinder->getCreature_LOCKED(pGuildMember->getName());
if (pCreature != NULL && pCreature->isPC() )
{
Player* pPlayer = pCreature->getPlayer();
Assert(pPlayer != NULL);
PlayerCreature* pPlayerCreature = dynamic_cast<PlayerCreature*>(pCreature);
Assert(pPlayerCreature != NULL);
// 등록비를 환불한다.
Gold_t Gold = pPlayerCreature->getGold();
if (pGuildMember->getRank() == GuildMember::GUILDMEMBER_RANK_MASTER )
{
Gold = min((uint64_t)(Gold + RETURN_SLAYER_MASTER_GOLD), (uint64_t)2000000000);
}
else if (pGuildMember->getRank() == GuildMember::GUILDMEMBER_RANK_SUBMASTER )
{
Gold = min((uint64_t)(Gold + RETURN_SLAYER_SUBMASTER_GOLD), (uint64_t)2000000000);
}
pPlayerCreature->setGoldEx(Gold);
GCModifyInformation gcModifyInformation;
gcModifyInformation.addLongData(MODIFY_GOLD, Gold);
pPlayer->sendPacket(&gcModifyInformation);
// 메시지를 보낸다.
pResult = pStmt->executeQuery("SELECT Message FROM Messages WHERE Receiver = '%s'", pCreature->getName().c_str());
while (pResult->next() )
{
GCSystemMessage message;
message.setMessage(pResult->getString(1));
pPlayer->sendPacket(&message);
}
pStmt->executeQuery("DELETE FROM Messages WHERE Receiver = '%s'", pCreature->getName().c_str());
}
__LEAVE_CRITICAL_SECTION((*g_pPCFinder))
// 길드 멤버 객체를 삭제한다.
SAFE_DELETE(pGuildMember);
}
// 길드 멤버 해쉬 맵을 지운다.
Members.clear();
// 길드 매니저에서 길드를 삭제한다.
g_pGuildManager->deleteGuild(pGuild->getID());
GuildUnionManager::Instance().removeMasterGuild(pGuild->getID());
// 길드 객체를 삭제한다.
SAFE_DELETE(pGuild);
SAFE_DELETE(pStmt);
}
END_DB(pStmt)
}
示例7: execute
//----------------------------------------------------------------------
//
// SGAddGuildMemberOKHandler::execute()
//
//----------------------------------------------------------------------
void SGAddGuildMemberOKHandler::execute (SGAddGuildMemberOK* pPacket )
throw(ProtocolException , Error )
{
__BEGIN_TRY __BEGIN_DEBUG_EX
#ifdef __GAME_SERVER__
// 길드 멤버 object 를 만든다.
GuildMember* pGuildMember = new GuildMember();
pGuildMember->setGuildID(pPacket->getGuildID());
pGuildMember->setName(pPacket->getName());
pGuildMember->setRank(pPacket->getGuildMemberRank());
// 길드에 추가한다.
Guild* pGuild = g_pGuildManager->getGuild(pGuildMember->getGuildID());
pGuild->addMember(pGuildMember);
// 멤버에게 메세지를 보낸다.
__ENTER_CRITICAL_SECTION((*g_pPCFinder))
Creature* pCreature = g_pPCFinder->getCreature_LOCKED(pGuildMember->getName());
if (pCreature != NULL && pCreature->isPC() )
{
Player* pPlayer = pCreature->getPlayer();
Assert(pPlayer != NULL);
if (pGuildMember->getRank() == GuildMember::GUILDMEMBER_RANK_MASTER ||
pGuildMember->getRank() == GuildMember::GUILDMEMBER_RANK_SUBMASTER ) // 길드마스터나 서브마스터일 경우
{
PlayerCreature* pPlayerCreature = dynamic_cast<PlayerCreature*>(pCreature);
Assert(pPlayerCreature != NULL);
Gold_t Fee;
if (pGuildMember->getRank() == GuildMember::GUILDMEMBER_RANK_MASTER )
Fee = REQUIRE_SLAYER_MASTER_GOLD;
else if (pGuildMember->getRank() == GuildMember::GUILDMEMBER_RANK_SUBMASTER )
Fee = REQUIRE_SLAYER_SUBMASTER_GOLD;
else
Fee = 0;
Gold_t CurMoney = pPlayerCreature->getGold();
if (CurMoney < Fee )
{
// 큰일났군
CurMoney = 0;
}
else
CurMoney -= Fee;
pPlayerCreature->setGoldEx(CurMoney);
if (Fee != 0 )
{
GCModifyInformation gcModifyInformation;
gcModifyInformation.addLongData(MODIFY_GOLD, CurMoney);
// 바뀐정보를 클라이언트에 보내준다.
pPlayer->sendPacket(&gcModifyInformation);
}
// 길드 가입 메시지를 보여준다.
GCSystemMessage gcSystemMessage;
if (pGuild->getRace() == Guild::GUILD_RACE_SLAYER )
gcSystemMessage.setMessage(g_pStringPool->getString(STRID_TEAM_JOIN_ACCEPTED ));
else if (pGuild->getRace() == Guild::GUILD_RACE_VAMPIRE )
gcSystemMessage.setMessage(g_pStringPool->getString(STRID_CLAN_JOIN_ACCEPTED ));
else if (pGuild->getRace() == Guild::GUILD_RACE_OUSTERS )
gcSystemMessage.setMessage(g_pStringPool->getString(STRID_CLAN_JOIN_ACCEPTED ));
pPlayer->sendPacket(&gcSystemMessage);
}
else if (pGuildMember->getRank() == GuildMember::GUILDMEMBER_RANK_WAIT )
{
// 길드 가입 신청 메시지를 보낸다.
GCSystemMessage gcSystemMessage;
if (pGuild->getRace() == Guild::GUILD_RACE_SLAYER )
gcSystemMessage.setMessage(g_pStringPool->getString(STRID_TEAM_JOIN_TRY ));
else if (pGuild->getRace() == Guild::GUILD_RACE_VAMPIRE )
gcSystemMessage.setMessage(g_pStringPool->getString(STRID_CLAN_JOIN_TRY ));
else if (pGuild->getRace() == Guild::GUILD_RACE_OUSTERS )
gcSystemMessage.setMessage(g_pStringPool->getString(STRID_CLAN_JOIN_TRY ));
pPlayer->sendPacket(&gcSystemMessage);
}
}
else
{
// 접속이 안되어 있다.
// 마스터나 서브마스터일 경우
// DB 에서 돈을 까도록 한다.
if ((pGuildMember->getRank() == GuildMember::GUILDMEMBER_RANK_MASTER ||
pGuildMember->getRank() == GuildMember::GUILDMEMBER_RANK_SUBMASTER ) // 길드마스터나 서브마스터일 경우
&& pPacket->getServerGroupID() == g_pConfig->getPropertyInt("ServerID" ) ) // 이 게임 서버에서 추가한 길드원인가?
{
//.........这里部分代码省略.........