📄 actiontradeeventitem.cpp
字号:
////////////////////////////////////////////////////////////////////////////////// Filename : ActionTradeEventItem.cpp// Written By : 厘全芒// Description :////////////////////////////////////////////////////////////////////////////////#include "ActionTradeEventItem.h"#include "PlayerCreature.h"#include "GamePlayer.h"#include "Item.h"#include "ItemUtil.h"#include "Inventory.h"#include "Zone.h"#include "ItemFactoryManager.h"#include "DB.h"#include "Thread.h"#include "Slayer.h"#include "Vampire.h"#include "StringPool.h"#include <list>#include <stdio.h>#include "item/Key.h"#include "Gpackets/GCCreateItem.h"#include "Gpackets/GCNPCResponse.h"#include "Gpackets/GCSystemMessage.h"#include "PriceManager.h"////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////void ActionTradeEventItem::read(PropertyBuffer & propertyBuffer) throw (Error){ __BEGIN_TRY try { // 罐阑 捣狼 剧阑 佬绢甸牢促. m_GoalAmount = (Gold_t)propertyBuffer.getPropertyInt("Amount"); } catch (NoSuchElementException & nsee) { throw Error(nsee.toString()); } __END_CATCH}////////////////////////////////////////////////////////////////////////////////// 咀记阑 角青茄促.////////////////////////////////////////////////////////////////////////////////void ActionTradeEventItem::execute(Creature * pCreature1 , Creature * pCreature2) throw (Error){ __BEGIN_TRY Assert(pCreature1 != NULL); Assert(pCreature2 != NULL); Assert(pCreature1->isNPC()); Assert(pCreature2->isPC()); PlayerCreature* pPC = dynamic_cast<PlayerCreature*>(pCreature2); Assert(pPC != NULL); Player* pPlayer = pPC->getPlayer(); Assert(pPlayer != NULL); Inventory* pInventory = pPC->getInventory(); XMAS_STAR star; // 刚历 努扼捞攫飘甫 困秦 GCNPCResponse甫 焊郴霖促. GCNPCResponse okpkt; pPlayer->sendPacket(&okpkt);// StringStream message; char message[100]; // 捞 荤恩狼 牢亥配府俊 绵备傍捞 面盒茄瘤 混巧促. //cout << "绵备傍 " << m_GoalAmount << " 俺 酒捞袍: " << endl; g_pPriceManager->getBallPrice(m_GoalAmount, star); if(!pInventory->hasEnoughStar(star)) {// StringStream buf;// buf << "绵备傍狼 俺荐啊 何练钦聪促. 歹 葛酒 坷技夸"; GCSystemMessage gcSystemMessage; gcSystemMessage.setMessage( g_pStringPool->getString( STRID_REQUIRE_MORE_SOCCER_BALL ) ); pPlayer->sendPacket(&gcSystemMessage); GCNPCResponse response; response.setCode(NPC_RESPONSE_QUIT_DIALOGUE); pPlayer->sendPacket(&response); return; } // 父距 捞 荤恩狼 牢亥配府俊 磊府啊 面盒窍促搁 酒捞袍阑 持绰促. // 刚历 酒捞袍阑 滴俺 父电促. Zone* pZone = pPC->getZone(); ObjectRegistry& OR = pZone->getObjectRegistry(); TPOINT pt, pt2; Item* pItem1; Item* pItem2; list<OptionType_t> option1; option1.push_back( 1 ); list<OptionType_t> option2; option2.push_back( 2 ); list<OptionType_t> option3; option3.push_back( 3 ); list<OptionType_t> option4; option4.push_back( 4 ); list<OptionType_t> option5; option5.push_back( 5 ); if(pPC->isSlayer()) { Slayer* pSlayer = dynamic_cast<Slayer*>(pCreature2); if(pSlayer->getSex() == 1) // male { switch(m_GoalAmount) { case 100: pItem1 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_COAT, 0, option4); pItem2 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_TROUSER, 0, option4);// message << "STR+4 敲房 力哦苞 STR+4 浇发阑 瘤鞭秦 靛啡嚼聪促. 内府酒评 颇捞泼!"; sprintf( message, g_pStringPool->c_str( STRID_KOREA_FIGHTING_1 ) ); break; case 125: pItem1 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_COAT, 2, option5); pItem2 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_TROUSER, 2, option5);// message << "STR+5 海胶飘客 STR+5 飘扼快廉甫 瘤鞭秦 靛啡嚼聪促. 内府酒评 颇捞泼!"; sprintf( message, g_pStringPool->c_str( STRID_KOREA_FIGHTING_2 ) ); break; case 175: pItem1 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_COAT, 4, option1); pItem2 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_TROUSER, 4, option1);// message << "STR+1 硅撇酱飘客 STR+1 饭彪令甫 瘤鞭秦 靛啡嚼聪促. 内府酒评 颇捞泼!"; sprintf( message, g_pStringPool->c_str( STRID_KOREA_FIGHTING_3 ) ); break; case 225: pItem1 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_COAT, 4, option2); pItem2 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_TROUSER, 4, option2);// message << "STR+2 硅撇酱飘客 STR+2 饭彪令甫 瘤鞭秦 靛啡嚼聪促. 内府酒评 颇捞泼!"; sprintf( message, g_pStringPool->c_str( STRID_KOREA_FIGHTING_4 ) ); break; case 275: pItem1 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_COAT, 4, option3); pItem2 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_TROUSER, 4, option3);// message << "STR+3 硅撇酱飘客 STR+3 饭彪令甫 瘤鞭秦 靛啡嚼聪促. 内府酒评 颇捞泼!"; sprintf( message, g_pStringPool->c_str( STRID_KOREA_FIGHTING_5 ) ); break; default: return; } } else if(pSlayer->getSex() == 0) { switch(m_GoalAmount) { case 100: pItem1 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_COAT, 1, option4); pItem2 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_TROUSER, 1, option4);// message << "STR+4 敲房 力哦苞 STR+4 浇发阑 瘤鞭秦 靛啡嚼聪促. 内府酒评 颇捞泼!"; sprintf( message, g_pStringPool->c_str( STRID_KOREA_FIGHTING_6 ) ); break; case 125: pItem1 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_COAT, 3, option5); pItem2 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_TROUSER, 3, option5);// message << "STR+5 海胶飘客 STR+5 飘扼快廉甫 瘤鞭秦 靛啡嚼聪促. 内府酒评 颇捞泼!"; sprintf( message, g_pStringPool->c_str( STRID_KOREA_FIGHTING_7 ) ); break; case 175: pItem1 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_COAT, 5, option1); pItem2 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_TROUSER, 5, option1);// message << "STR+1 硅撇酱飘客 STR+1 饭彪令甫 瘤鞭秦 靛啡嚼聪促. 内府酒评 颇捞泼!"; sprintf( message, g_pStringPool->c_str( STRID_KOREA_FIGHTING_8 ) ); break; case 225: pItem1 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_COAT, 5, option2); pItem2 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_TROUSER, 5, option2);// message << "STR+2 硅撇酱飘客 STR+2 饭彪令甫 瘤鞭秦 靛啡嚼聪促. 内府酒评 颇捞泼!"; sprintf( message, g_pStringPool->c_str( STRID_KOREA_FIGHTING_9 ) ); break; case 275: pItem1 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_COAT, 5, option3); pItem2 = g_pItemFactoryManager->createItem(Item::ITEM_CLASS_TROUSER, 5, option3);// message << "STR+3 硅撇酱飘客 STR+3 饭彪令甫 瘤鞭秦 靛啡嚼聪促. 内府酒评 颇捞泼!"; sprintf( message, g_pStringPool->c_str( STRID_KOREA_FIGHTING_10 ) ); break; default: return; } } else return;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -