📄 eventmorph.cpp
字号:
} else { // ItemTraceLog 甫 巢变促 if ( pItem != NULL && pItem->isTraceItem() ) { remainTraceLog( pItem, pFromCreature->getName(), "GOD", ITEM_LOG_DELETE, DETAIL_DROP); } pItem->destroy(); SAFE_DELETE(pItem); } } } } // ExtraInventorySlot俊辑 牢亥配府肺.. pItem = pSlayer->getExtraInventorySlotItem(); if (pItem) { pSlayer->deleteItemFromExtraInventorySlot(); if (pInventory->getEmptySlot(pItem, point)) { pInventory->addItem(point.x, point.y, pItem); pItem->save(pVampire->getName(), STORAGE_INVENTORY, 0, point.x, point.y); } else if ( pItem->isTimeLimitItem() ) { pSlayer->deleteItemByMorph( pItem ); pItem->destroy(); SAFE_DELETE(pItem); } else { TPOINT pt; ZoneCoord_t ZoneX = pSlayer->getX(); ZoneCoord_t ZoneY = pSlayer->getY(); pt = pZone->addItem(pItem, ZoneX, ZoneY); if (pt.x != -1) { pItem->save("", STORAGE_ZONE, pZone->getZoneID(), pt.x , pt.y); log(LOG_DROP_ITEM_MORPH, pSlayer->getName(), ""); // ItemTraceLog 甫 巢变促 if ( pItem != NULL && pItem->isTraceItem() ) { char zoneName[15]; sprintf( zoneName, "%4d%3d%3d", pZone->getZoneID(), pt.x, pt.y); remainTraceLog( pItem, pFromCreature->getName(), zoneName, ITEM_LOG_MOVE, DETAIL_DROP); } } else { // ItemTraceLog 甫 巢变促 if ( pItem != NULL && pItem->isTraceItem() ) { remainTraceLog( pItem, pFromCreature->getName(), "GOD", ITEM_LOG_DELETE, DETAIL_DROP); } pItem->destroy(); SAFE_DELETE(pItem); } } } if (pSlayer->hasRideMotorcycle()) { pSlayer->getOffMotorcycle(); } pVampire->loadTimeLimitItem(); // Vampire肺 函沁阑锭绰 捣阑 檬扁拳茄促. //pVampire->setGoldEx(pSlayer->getGold()); pVampire->setGoldEx(0); pVampire->setStashGoldEx(0); // set packet data gcEventMorph1.setPCInfo2(pVampire->getVampireInfo2()); gcEventMorph1.setInventoryInfo(pVampire->getInventoryInfo()); gcEventMorph1.setGearInfo(pVampire->getGearInfo()); gcEventMorph1.setExtraInfo(pVampire->getExtraInfo()); gcEventMorphVampire2.setVampireInfo(pVampire->getVampireInfo3()); if (pFromCreature->isPC()) { Player* pPlayer = pFromCreature->getPlayer(); pPlayer->sendPacket(&gcEventMorph1); } pZone->broadcastPacket(x, y, &gcEventMorphVampire2, pFromCreature); Tile & tile = pZone->getTile(x, y); // Delete FromCreature from tile & PCManager tile.deleteCreature(fromObjectID); pZone->deletePC(pFromCreature); // add toCreature tile.addCreature(pVampire, false, false); pZone->addPC(pVampire);// pZone->addPC(pVampire, x, y, pVampire->getDir());// pZone->deleteCreature(pFromCreature, x, y);// pZone->morphCreature(pFromCreature, pVampire); // 矫具 update.. pZone->updateHiddenScan(pVampire); // 轨橇 扁贱 pVampire->sendVampireSkillInfo(); m_pTargetCreature = NULL; // 轨橇肺 函沁促绰 沥焊甫 Slayer Field俊 眠啊茄促. pSlayer->tinysave("Race='VAMPIRE'"); // 轨颇捞绢 付阑肺 捞悼矫挪促. uint ZoneNum = 1003; ZoneCoord_t ZoneX = 62; ZoneCoord_t ZoneY = 64; Assert((int)ZoneX < 256); Assert((int)ZoneY < 256); Assert(pVampire->isPC()); GamePlayer* pGamePlayer = dynamic_cast<GamePlayer*>(pVampire->getPlayer());// Zone* pZone = pVampire->getZone(); //-------------------------------------------------------------------------------- // 档馒粮捞 绢蠢 辑滚, 绢蠢 粮弊缝俊 加窍绰瘤 舅酒夯促. //-------------------------------------------------------------------------------- ZoneInfo* pZoneInfo; try { pZoneInfo = g_pZoneInfoManager->getZoneInfo(ZoneNum); } catch (NoSuchElementException&) { cerr << "Critical Error : 器呕俊 瘤沥等 粮 酒捞叼啊 撇府芭唱, ZoneInfoManager俊 秦寸 粮捞 粮犁窍瘤 臼嚼聪促." << endl; throw Error("Critical Error : 器呕俊 瘤沥等 粮 酒捞叼啊 撇府芭唱, ZoneInfoManager俊 秦寸 粮捞 粮犁窍瘤 臼嚼聪促."); } ZoneGroup* pZoneGroup; try { pZoneGroup = g_pZoneGroupManager->getZoneGroup(pZoneInfo->getZoneGroupID()); } catch (NoSuchElementException&) { cerr << "Critical Error : 泅犁肺绰 霸烙 辑滚绰 1措挥捞寸.." << endl; // 老窜篮 辑滚啊 1措捞骨肺.. 弊措肺 唱埃促... throw Error("Critical Error : 泅犁肺绰 霸烙 辑滚绰 1措挥捞寸.."); } //-------------------------------------------------------------------------------- // 快急 捞傈 粮俊辑 PC 甫 昏力窍绊, 敲饭捞绢甫 ZPM -> IPM 栏肺 颗变促. //-------------------------------------------------------------------------------- try { // 捞力, 粮俊辑 PC甫 昏力茄促. // // *CAUTION* // // pVampire 谅钎啊 角力肺 pVampire啊 粮犁窍绰 鸥老狼 谅钎客 鞍酒具 茄促. // 蝶扼辑, 捞 皋筋靛甫 龋免窍扁 傈俊 谅钎甫 肋 官层出具 茄寸.. // pZone->deleteCreature(pVampire, pVampire->getX() , pVampire->getY()); // 粮弊缝狼 ZPM俊辑 敲饭捞绢甫 昏力茄促. //pZone->getZoneGroup()->getZonePlayerManager()->deletePlayer_NOBLOCKED(pGamePlayer); //pZone->getZoneGroup()->getZonePlayerManager()->deletePlayer_NOBLOCKED(pGamePlayer->getSocket()->getSOCKET()); pZone->getZoneGroup()->getZonePlayerManager()->deletePlayer(pGamePlayer->getSocket()->getSOCKET()); //-------------------------------------------------- // 农府贸狼 货肺款 谅钎绰 器呕狼 档馒 瘤痢捞促. //-------------------------------------------------- // 林籍贸府 by sigi. 2002.5.17 //pVampire->setXY(ZoneX, ZoneY); //pVampire->setZone(NULL); // IPM栏肺 敲饭捞绢甫 颗变促. //g_pIncomingPlayerManager->addPlayer(pGamePlayer); //g_pIncomingPlayerManager->pushPlayer(pGamePlayer); pZone->getZoneGroup()->getZonePlayerManager()->pushOutPlayer(pGamePlayer); } catch (NoSuchElementException & nsee) { cerr << nsee.toString() << endl; throw Error(nsee.toString()); } // 农府贸俊促啊 粮阑 瘤沥秦霖促. 捞绰 OID 甫 且寸罐扁 困秦辑捞促. Zone* pNewZone = pZoneGroup->getZone(ZoneNum); Assert(pNewZone != NULL); //pVampire->setZone(pZone); // 捞悼且 粮阑 汲沥茄促. by sigi. 2002.5.11 pVampire->setNewZone(pNewZone); pVampire->setNewXY(ZoneX, ZoneY); // 农府贸狼 沥焊甫 历厘茄促. pVampire->setZone(pNewZone); pVampire->setXY(ZoneX, ZoneY); pVampire->save(); pVampire->setZone(pZone); pVampire->setXY(x, y); // 农府贸 磊脚苞 家蜡 酒捞袍甸狼 OID甫 且寸罐绰促. //pVampire->registerObject(); /* //-------------------------------------------------------------------------------- // GCUpdateInfo 菩哦阑 父甸绢敌促. //-------------------------------------------------------------------------------- GCUpdateInfo gcUpdateInfo; makeGCUpdateInfo(&gcUpdateInfo, pVampire); pGamePlayer->sendPacket(&gcUpdateInfo); */ //-------------------------------------------------- // change player status //-------------------------------------------------- pGamePlayer->setPlayerStatus(GPS_WAITING_FOR_CG_READY); // 瘤陛 瘤快搁.. 倒绊 乐绰 EffectManager绰 绢纳 登巢? -_-; //---------------------------------- /* Creature* pEventMorphCreature = m_pGamePlayer->getCreature(); Assert(pEventMorphCreature != m_pTargetCreature); Assert(pEventMorphCreature != NULL); // by sigi Zone* pZone = pEventMorphCreature->getZone(); Assert(pZone != NULL); */ /* ofstream file("blood.txt", ios::out | ios::app); file << "浇饭捞绢 [" << pSlayer->getName() << "] 轨颇肺 函窍促 >> "; file << getCurrentTimeStringEx() << endl; file.close(); */ log(LOG_SLAYER_TO_VAMPIRE, pFromCreature->getName(), ""); SAFE_DELETE(pFromCreature); __END_DEBUG __END_CATCH} string EventMorph::toString () const throw (){ StringStream msg; msg << "EventMorph(" << ")"; return msg.toString();}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -