mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-12 05:21:29 +00:00
Test
This commit is contained in:
parent
0b0ee921a5
commit
735b4181fa
106
zone/client.cpp
106
zone/client.cpp
@ -1472,7 +1472,7 @@ void Client::SendSound(){//Makes a sound.
|
|||||||
memset(&x[64],0xffffffff,sizeof(uint32));
|
memset(&x[64],0xffffffff,sizeof(uint32));
|
||||||
memcpy(outapp->pBuffer,x,outapp->size);
|
memcpy(outapp->pBuffer,x,outapp->size);
|
||||||
QueuePacket(outapp);
|
QueuePacket(outapp);
|
||||||
DumpPacket(outapp);
|
//DumpPacket(outapp);
|
||||||
safe_delete(outapp);
|
safe_delete(outapp);
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -7137,68 +7137,76 @@ void Client::SendMercPersonalInfo()
|
|||||||
|
|
||||||
if (GetClientVersion() >= EQClientRoF)
|
if (GetClientVersion() >= EQClientRoF)
|
||||||
{
|
{
|
||||||
MercenaryDataUpdate_Struct* mdus = new MercenaryDataUpdate_Struct;
|
|
||||||
|
|
||||||
MercTemplate *mercData = &zone->merc_templates[GetMercInfo().MercTemplateID];
|
MercTemplate *mercData = &zone->merc_templates[GetMercInfo().MercTemplateID];
|
||||||
|
|
||||||
if (mercData)
|
if (mercData)
|
||||||
{
|
{
|
||||||
|
int i = 0;
|
||||||
|
int stancecount = 0;
|
||||||
|
stancecount += zone->merc_stance_list[GetMercInfo().MercTemplateID].size();
|
||||||
|
|
||||||
|
if (mercCount > 0)
|
||||||
|
{
|
||||||
|
EQApplicationPacket *outapp = new EQApplicationPacket(OP_MercenaryDataUpdate, sizeof(MercenaryDataUpdate_Struct) + (mercTypeCount * sizeof(MercenaryData_Struct)) + stancecount * sizeof(MercenaryStance_Struct));
|
||||||
|
MercenaryDataUpdate_Struct* mdus = (MercenaryDataUpdate_Struct*)outapp->pBuffer;
|
||||||
mdus->MercStatus = 0;
|
mdus->MercStatus = 0;
|
||||||
mdus->MercCount = mercCount;
|
mdus->MercCount = mercCount;
|
||||||
if (mercCount > 0)
|
mdus->MercData = new MercenaryData_Struct[mercCount];
|
||||||
|
mdus->MercData[i].MercID = mercData->MercTemplateID;
|
||||||
|
mdus->MercData[i].MercType = mercData->MercType;
|
||||||
|
mdus->MercData[i].MercSubType = mercData->MercSubType;
|
||||||
|
mdus->MercData[i].PurchaseCost = Merc::CalcPurchaseCost(mercData->MercTemplateID, GetLevel(), 0);
|
||||||
|
mdus->MercData[i].UpkeepCost = Merc::CalcUpkeepCost(mercData->MercTemplateID, GetLevel(), 0);
|
||||||
|
mdus->MercData[i].Status = 0;
|
||||||
|
mdus->MercData[i].AltCurrencyCost = Merc::CalcPurchaseCost(mercData->MercTemplateID, GetLevel(), altCurrentType);
|
||||||
|
mdus->MercData[i].AltCurrencyUpkeep = Merc::CalcPurchaseCost(mercData->MercTemplateID, GetLevel(), altCurrentType);
|
||||||
|
mdus->MercData[i].AltCurrencyType = altCurrentType;
|
||||||
|
mdus->MercData[i].MercUnk01 = 0;
|
||||||
|
mdus->MercData[i].TimeLeft = GetMercInfo().MercTimerRemaining; //GetMercTimer().GetRemainingTime();
|
||||||
|
mdus->MercData[i].MerchantSlot = i + 1;
|
||||||
|
mdus->MercData[i].MercUnk02 = 1;
|
||||||
|
mdus->MercData[i].StanceCount = zone->merc_stance_list[mercData->MercTemplateID].size();
|
||||||
|
mdus->MercData[i].MercUnk03 = 0;
|
||||||
|
mdus->MercData[i].MercUnk04 = 1;
|
||||||
|
strn0cpy(mdus->MercData[i].MercName, GetMercInfo().merc_name , sizeof(mdus->MercData[i].MercName));
|
||||||
|
uint32 stanceindex = 0;
|
||||||
|
if (mdus->MercData[i].StanceCount != 0)
|
||||||
{
|
{
|
||||||
mdus->MercData = new MercenaryData_Struct[mercCount];
|
mdus->MercData[i].Stances = new MercenaryStance_Struct[mdus->MercData[i].StanceCount];
|
||||||
mdus->MercData[i].MercID = mercData->MercTemplateID;
|
list<MercStanceInfo>::iterator iter = zone->merc_stance_list[mercData->MercTemplateID].begin();
|
||||||
mdus->MercData[i].MercType = mercData->MercType;
|
while(iter != zone->merc_stance_list[mercData->MercTemplateID].end())
|
||||||
mdus->MercData[i].MercSubType = mercData->MercSubType;
|
|
||||||
mdus->MercData[i].PurchaseCost = Merc::CalcPurchaseCost(mercData->MercTemplateID, GetLevel(), 0);
|
|
||||||
mdus->MercData[i].UpkeepCost = Merc::CalcUpkeepCost(mercData->MercTemplateID, GetLevel(), 0);
|
|
||||||
mdus->MercData[i].Status = 0;
|
|
||||||
mdus->MercData[i].AltCurrencyCost = Merc::CalcPurchaseCost(mercData->MercTemplateID, GetLevel(), altCurrentType);
|
|
||||||
mdus->MercData[i].AltCurrencyUpkeep = Merc::CalcPurchaseCost(mercData->MercTemplateID, GetLevel(), altCurrentType);
|
|
||||||
mdus->MercData[i].AltCurrencyType = altCurrentType;
|
|
||||||
mdus->MercData[i].MercUnk01 = 0;
|
|
||||||
mdus->MercData[i].TimeLeft = GetMercInfo().MercTimerRemaining; //GetMercTimer().GetRemainingTime();
|
|
||||||
mdus->MercData[i].MerchantSlot = i + 1;
|
|
||||||
mdus->MercData[i].MercUnk02 = 1;
|
|
||||||
mdus->MercData[i].StanceCount = zone->merc_stance_list[mercData->MercTemplateID].size();
|
|
||||||
mdus->MercData[i].MercUnk03 = 0;
|
|
||||||
mdus->MercData[i].MercUnk04 = 1;
|
|
||||||
strn0cpy(mdus->MercData[i].MercName, GetMercInfo().merc_name , sizeof(mdus->MercData[i].MercName));
|
|
||||||
uint32 stanceindex = 0;
|
|
||||||
if (mdus->MercData[i].StanceCount != 0)
|
|
||||||
{
|
{
|
||||||
mdus->MercData[i].Stances = new MercenaryStance_Struct[mdus->MercData[i].StanceCount];
|
mdus->MercData[i].Stances[stanceindex].StanceIndex = stanceindex;
|
||||||
list<MercStanceInfo>::iterator iter = zone->merc_stance_list[mercData->MercTemplateID].begin();
|
mdus->MercData[i].Stances[stanceindex].Stance = (iter->StanceID);
|
||||||
while(iter != zone->merc_stance_list[mercData->MercTemplateID].end())
|
stanceindex++;
|
||||||
{
|
iter++;
|
||||||
mdus->MercData[i].Stances[stanceindex].StanceIndex = stanceindex;
|
|
||||||
mdus->MercData[i].Stances[stanceindex].Stance = (iter->StanceID);
|
|
||||||
stanceindex++;
|
|
||||||
iter++;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
mdus->MercData[i].MercUnk05 = 1;
|
mdus->MercData[i].MercUnk05 = 1;
|
||||||
|
//DumpPacket(outapp);
|
||||||
EQApplicationPacket *outapp = new EQApplicationPacket(OP_MercenaryDataUpdate, 1); //Packet sizes are handled by the encoder.
|
FastQueuePacket(&outapp);
|
||||||
outapp->pBuffer = (unsigned char*)mdus;
|
return;
|
||||||
//DumpPacket(outapp);
|
|
||||||
FastQueuePacket(&outapp);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
MercenaryMerchantList_Struct* mml = new MercenaryMerchantList_Struct;
|
int stancecount = 0;
|
||||||
|
stancecount += zone->merc_stance_list[GetMercInfo().MercTemplateID].size();
|
||||||
|
|
||||||
|
EQApplicationPacket *outapp = new EQApplicationPacket(OP_MercenaryDataResponse, sizeof(MercenaryMerchantList_Struct) + (mercTypeCount * sizeof(MercenaryGrade_Struct)) + (mercCount * sizeof(MercenaryListEntry_Struct)) + stancecount * sizeof(MercenaryStance_Struct)); //Packet sizes are handled by the encoder.
|
||||||
|
MercenaryMerchantList_Struct* mml = (MercenaryMerchantList_Struct*)outapp->pBuffer;
|
||||||
MercTemplate *mercData = &zone->merc_templates[GetMercInfo().MercTemplateID];
|
MercTemplate *mercData = &zone->merc_templates[GetMercInfo().MercTemplateID];
|
||||||
|
|
||||||
|
|
||||||
if(mercData)
|
if(mercData)
|
||||||
{
|
{
|
||||||
if(mercTypeCount > 0)
|
if(mercTypeCount > 0)
|
||||||
{
|
{
|
||||||
mml->MercTypeCount = mercTypeCount; //We only should have one merc entry.
|
mml->MercTypeCount = mercTypeCount; //We only should have one merc entry.
|
||||||
mml->MercGrades = new MercenaryGrade_Struct[mercTypeCount]; // DBStringID for Type
|
mml->MercGrades = new MercenaryGrade_Struct[mercTypeCount]; // DBStringID for Type
|
||||||
|
mml->MercGrades[0].GradeCountEntry = 1;
|
||||||
}
|
}
|
||||||
mml->MercCount = mercCount;
|
mml->MercCount = mercCount;
|
||||||
if(mercCount > 0)
|
if(mercCount > 0)
|
||||||
@ -7234,17 +7242,25 @@ void Client::SendMercPersonalInfo()
|
|||||||
iter++;
|
iter++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
EQApplicationPacket *outapp = new EQApplicationPacket(OP_MercenaryDataResponse, 1); //Packet sizes are handled by the encoder.
|
|
||||||
outapp->pBuffer = (unsigned char*)mml;
|
|
||||||
// DumpPacket(outapp);
|
|
||||||
FastQueuePacket(&outapp);
|
FastQueuePacket(&outapp);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
safe_delete(outapp);
|
||||||
|
SendMercMerchantResponsePacket(0);
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (GetClientVersion() == EQClientSoD)
|
if (GetClientVersion() == EQClientSoD)
|
||||||
{
|
{
|
||||||
SendMercMerchantResponsePacket(0);
|
SendMercMerchantResponsePacket(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
safe_delete(outapp);
|
||||||
|
SendMercMerchantResponsePacket(0);
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -7256,7 +7272,7 @@ void Client::SendClearMercInfo()
|
|||||||
nmhs->MercCount = 0;
|
nmhs->MercCount = 0;
|
||||||
nmhs->MercID = 1;
|
nmhs->MercID = 1;
|
||||||
|
|
||||||
DumpPacket(outapp);
|
//DumpPacket(outapp);
|
||||||
FastQueuePacket(&outapp);
|
FastQueuePacket(&outapp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -13496,8 +13496,6 @@ void Client::Handle_OP_MercenaryDataRequest(const EQApplicationPacket *app)
|
|||||||
//send info about your current merc(s)
|
//send info about your current merc(s)
|
||||||
}
|
}
|
||||||
|
|
||||||
DumpPacket(app);
|
|
||||||
|
|
||||||
if(!RuleB(Mercs, AllowMercs)) {
|
if(!RuleB(Mercs, AllowMercs)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -13515,19 +13513,28 @@ void Client::Handle_OP_MercenaryDataRequest(const EQApplicationPacket *app)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
MercenaryMerchantList_Struct* mml = new MercenaryMerchantList_Struct;
|
|
||||||
|
|
||||||
mercTypeCount = tar->GetNumMercTypes(GetClientVersion());
|
mercTypeCount = tar->GetNumMercTypes(GetClientVersion());
|
||||||
mercCount = tar->GetNumMercs(GetClientVersion());
|
mercCount = tar->GetNumMercs(GetClientVersion());
|
||||||
|
|
||||||
|
|
||||||
std::list<MercType> mercTypeList = tar->GetMercTypesList(GetClientVersion());
|
std::list<MercType> mercTypeList = tar->GetMercTypesList(GetClientVersion());
|
||||||
std::list<MercData> mercDataList = tar->GetMercsList(GetClientVersion());
|
std::list<MercData> mercDataList = tar->GetMercsList(GetClientVersion());
|
||||||
|
|
||||||
mml->MercTypeCount = mercTypeCount;
|
|
||||||
int i = 0;
|
int i = 0;
|
||||||
|
int StanceCount = 0;
|
||||||
|
|
||||||
|
for(std::list<MercData>::iterator mercListItr = mercDataList.begin(); mercListItr != mercDataList.end(); mercListItr++)
|
||||||
|
{
|
||||||
|
list<MercStanceInfo>::iterator siter = zone->merc_stance_list[mercListItr->MercTemplateID].begin();
|
||||||
|
for(siter = zone->merc_stance_list[mercListItr->MercTemplateID].begin(); siter != zone->merc_stance_list[mercListItr->MercTemplateID].end(); siter++)
|
||||||
|
{
|
||||||
|
StanceCount++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
EQApplicationPacket *outapp = new EQApplicationPacket(OP_MercenaryDataResponse, sizeof(MercenaryMerchantList_Struct) + (mercTypeCount * sizeof(MercenaryGrade_Struct)) + (mercCount * sizeof(MercenaryListEntry_Struct)) + (StanceCount * sizeof(MercenaryStance_Struct)));
|
||||||
|
MercenaryMerchantList_Struct* mml = (MercenaryMerchantList_Struct*)outapp->pBuffer;
|
||||||
|
|
||||||
|
mml->MercTypeCount = mercTypeCount;
|
||||||
if(mercTypeCount > 0)
|
if(mercTypeCount > 0)
|
||||||
{
|
{
|
||||||
mml->MercGrades = new MercenaryGrade_Struct[mercTypeCount];
|
mml->MercGrades = new MercenaryGrade_Struct[mercTypeCount];
|
||||||
@ -13540,50 +13547,50 @@ void Client::Handle_OP_MercenaryDataRequest(const EQApplicationPacket *app)
|
|||||||
|
|
||||||
if(mercCount > 0)
|
if(mercCount > 0)
|
||||||
{
|
{
|
||||||
mml->Mercs = new MercenaryListEntry_Struct[mercCount];
|
|
||||||
i = 0;
|
i = 0;
|
||||||
for(std::list<MercData>::iterator mercListItr = mercDataList.begin(); mercListItr != mercDataList.end(); mercListItr++)
|
mml->Mercs = new MercenaryListEntry_Struct[mercCount];
|
||||||
|
for(std::list<MercData>::iterator mercListIter = mercDataList.begin(); mercListIter != mercDataList.end(); mercListIter++)
|
||||||
{
|
{
|
||||||
mml->Mercs[i].MercID = mercListItr->MercTemplateID;
|
mml->Mercs[i].MercID = mercListIter->MercTemplateID;
|
||||||
mml->Mercs[i].MercType = mercListItr->MercType;
|
mml->Mercs[i].MercType = mercListIter->MercType;
|
||||||
mml->Mercs[i].MercSubType = mercListItr->MercSubType;
|
mml->Mercs[i].MercSubType = mercListIter->MercSubType;
|
||||||
mml->Mercs[i].PurchaseCost = RuleB(Mercs, ChargeMercPurchaseCost) ? Merc::CalcPurchaseCost(mercListItr->MercTemplateID, GetLevel(), 0): 0;
|
mml->Mercs[i].PurchaseCost = RuleB(Mercs, ChargeMercPurchaseCost) ? Merc::CalcPurchaseCost(mercListIter->MercTemplateID, GetLevel(), 0): 0;
|
||||||
mml->Mercs[i].UpkeepCost = RuleB(Mercs, ChargeMercUpkeepCost) ? Merc::CalcUpkeepCost(mercListItr->MercTemplateID, GetLevel(), 0): 0;
|
mml->Mercs[i].UpkeepCost = RuleB(Mercs, ChargeMercUpkeepCost) ? Merc::CalcUpkeepCost(mercListIter->MercTemplateID, GetLevel(), 0): 0;
|
||||||
mml->Mercs[i].Status = 0;
|
mml->Mercs[i].Status = 0;
|
||||||
mml->Mercs[i].AltCurrencyCost = RuleB(Mercs, ChargeMercPurchaseCost) ? Merc::CalcPurchaseCost(mercListItr->MercTemplateID, GetLevel(), altCurrentType): 0;
|
mml->Mercs[i].AltCurrencyCost = RuleB(Mercs, ChargeMercPurchaseCost) ? Merc::CalcPurchaseCost(mercListIter->MercTemplateID, GetLevel(), altCurrentType): 0;
|
||||||
mml->Mercs[i].AltCurrencyUpkeep = RuleB(Mercs, ChargeMercUpkeepCost) ? Merc::CalcUpkeepCost(mercListItr->MercTemplateID, GetLevel(), altCurrentType): 0;
|
mml->Mercs[i].AltCurrencyUpkeep = RuleB(Mercs, ChargeMercUpkeepCost) ? Merc::CalcUpkeepCost(mercListIter->MercTemplateID, GetLevel(), altCurrentType): 0;
|
||||||
mml->Mercs[i].AltCurrencyType = altCurrentType;
|
mml->Mercs[i].AltCurrencyType = altCurrentType;
|
||||||
mml->Mercs[i].MercUnk01 = 0;
|
mml->Mercs[i].MercUnk01 = 0;
|
||||||
mml->Mercs[i].TimeLeft = -1;
|
mml->Mercs[i].TimeLeft = -1;
|
||||||
mml->Mercs[i].MerchantSlot = i + 1;
|
mml->Mercs[i].MerchantSlot = i + 1;
|
||||||
mml->Mercs[i].MercUnk02 = 1;
|
mml->Mercs[i].MercUnk02 = 1;
|
||||||
mml->Mercs[i].StanceCount = zone->merc_stance_list[mercListItr->MercTemplateID].size();
|
int mercStanceCount = 0;
|
||||||
|
list<MercStanceInfo>::iterator iter = zone->merc_stance_list[mercListIter->MercTemplateID].begin();
|
||||||
|
for(iter = zone->merc_stance_list[mercListIter->MercTemplateID].begin(); iter != zone->merc_stance_list[mercListIter->MercTemplateID].end(); iter++)
|
||||||
|
{
|
||||||
|
mercStanceCount++;
|
||||||
|
}
|
||||||
|
mml->Mercs[i].StanceCount = mercStanceCount;
|
||||||
mml->Mercs[i].MercUnk03 = 519044964;
|
mml->Mercs[i].MercUnk03 = 519044964;
|
||||||
mml->Mercs[i].MercUnk04 = 1;
|
mml->Mercs[i].MercUnk04 = 1;
|
||||||
//mml->Mercs[i].MercName;
|
//mml->Mercs[i].MercName;
|
||||||
int stanceindex = 0;
|
int stanceindex = 0;
|
||||||
if(mml->Mercs[i].StanceCount != 0)
|
if(mercStanceCount > 0)
|
||||||
{
|
{
|
||||||
mml->Mercs[i].Stances = new MercenaryStance_Struct[mml->Mercs[i].StanceCount];
|
mml->Mercs[i].Stances = new MercenaryStance_Struct[mercStanceCount];
|
||||||
list<MercStanceInfo>::iterator iter = zone->merc_stance_list[mercListItr->MercTemplateID].begin();
|
list<MercStanceInfo>::iterator iter2 = zone->merc_stance_list[mercListIter->MercTemplateID].begin();
|
||||||
while(iter != zone->merc_stance_list[mercListItr->MercTemplateID].end())
|
while(iter2 != zone->merc_stance_list[mercListIter->MercTemplateID].end())
|
||||||
{
|
{
|
||||||
mml->Mercs[i].Stances[stanceindex].StanceIndex = stanceindex;
|
mml->Mercs[i].Stances[stanceindex].StanceIndex = stanceindex;
|
||||||
mml->Mercs[i].Stances[stanceindex].Stance = (iter->StanceID);
|
mml->Mercs[i].Stances[stanceindex].Stance = (iter2->StanceID);
|
||||||
stanceindex++;
|
stanceindex++;
|
||||||
iter++;
|
iter2++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
EQApplicationPacket *outapp = new EQApplicationPacket(OP_MercenaryDataResponse, 1); //Packet sizes are handled by the encoder.
|
|
||||||
outapp->pBuffer = (unsigned char*)mml;
|
|
||||||
// DumpPacket(outapp);
|
|
||||||
FastQueuePacket(&outapp);
|
FastQueuePacket(&outapp);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -13605,7 +13612,7 @@ void Client::Handle_OP_MercenaryHire(const EQApplicationPacket *app)
|
|||||||
uint32 merc_unk1 = mmrq->MercUnk01;
|
uint32 merc_unk1 = mmrq->MercUnk01;
|
||||||
uint32 merc_unk2 = mmrq->MercUnk02;
|
uint32 merc_unk2 = mmrq->MercUnk02;
|
||||||
|
|
||||||
DumpPacket(app);
|
//DumpPacket(app);
|
||||||
|
|
||||||
if(MERC_DEBUG > 0)
|
if(MERC_DEBUG > 0)
|
||||||
Message(7, "Mercenary Debug: Template ID (%i), Merchant ID (%i), Unknown1 (%i), Unknown2 (%i)", merc_template_id, merchant_id, merc_unk1, merc_unk2);
|
Message(7, "Mercenary Debug: Template ID (%i), Merchant ID (%i), Unknown1 (%i), Unknown2 (%i)", merc_template_id, merchant_id, merc_unk1, merc_unk2);
|
||||||
@ -13668,7 +13675,7 @@ void Client::Handle_OP_MercenarySuspendRequest(const EQApplicationPacket *app)
|
|||||||
SuspendMercenary_Struct* sm = (SuspendMercenary_Struct*) app->pBuffer;
|
SuspendMercenary_Struct* sm = (SuspendMercenary_Struct*) app->pBuffer;
|
||||||
uint32 merc_suspend = sm->SuspendMerc; // Seen 30 for suspending or unsuspending
|
uint32 merc_suspend = sm->SuspendMerc; // Seen 30 for suspending or unsuspending
|
||||||
|
|
||||||
DumpPacket(app);
|
//DumpPacket(app);
|
||||||
|
|
||||||
if(MERC_DEBUG > 0)
|
if(MERC_DEBUG > 0)
|
||||||
Message(7, "Mercenary Debug: Suspend ( %i ) received.", merc_suspend);
|
Message(7, "Mercenary Debug: Suspend ( %i ) received.", merc_suspend);
|
||||||
@ -13699,7 +13706,7 @@ void Client::Handle_OP_MercenaryCommand(const EQApplicationPacket *app)
|
|||||||
GetMercInfo().State = option;
|
GetMercInfo().State = option;
|
||||||
}
|
}
|
||||||
|
|
||||||
DumpPacket(app);
|
//DumpPacket(app);
|
||||||
|
|
||||||
if(MERC_DEBUG > 0)
|
if(MERC_DEBUG > 0)
|
||||||
Message(7, "Mercenary Debug: Command %i, Option %i received.", merc_command, option);
|
Message(7, "Mercenary Debug: Command %i, Option %i received.", merc_command, option);
|
||||||
@ -13723,7 +13730,7 @@ void Client::Handle_OP_MercenaryDataUpdateRequest(const EQApplicationPacket *app
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
DumpPacket(app);
|
//DumpPacket(app);
|
||||||
|
|
||||||
if(MERC_DEBUG > 0)
|
if(MERC_DEBUG > 0)
|
||||||
Message(7, "Mercenary Debug: Data Update Request Received.");
|
Message(7, "Mercenary Debug: Data Update Request Received.");
|
||||||
@ -13745,7 +13752,7 @@ void Client::Handle_OP_MercenaryDismiss(const EQApplicationPacket *app)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
DumpPacket(app);
|
//DumpPacket(app);
|
||||||
|
|
||||||
uint8 Command = 0;
|
uint8 Command = 0;
|
||||||
if(app->size > 0)
|
if(app->size > 0)
|
||||||
@ -13765,7 +13772,7 @@ void Client::Handle_OP_MercenaryDismiss(const EQApplicationPacket *app)
|
|||||||
merc->Dismiss();
|
merc->Dismiss();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Unsure if there is a server response to this packet
|
SendMercMerchantResponsePacket(10);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -13780,7 +13787,7 @@ void Client::Handle_OP_MercenaryTimerRequest(const EQApplicationPacket *app)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
DumpPacket(app);
|
//DumpPacket(app);
|
||||||
|
|
||||||
if(MERC_DEBUG > 0)
|
if(MERC_DEBUG > 0)
|
||||||
Message(7, "Mercenary Debug: Timer Request received.");
|
Message(7, "Mercenary Debug: Timer Request received.");
|
||||||
|
|||||||
@ -5123,7 +5123,7 @@ bool Merc::Unsuspend(bool setMaxStats) {
|
|||||||
if(!mercOwner->IsGrouped())
|
if(!mercOwner->IsGrouped())
|
||||||
{
|
{
|
||||||
Group *g = new Group(mercOwner);
|
Group *g = new Group(mercOwner);
|
||||||
if(AddMercToGroup(this, g))
|
if(g && AddMercToGroup(this, g))
|
||||||
{
|
{
|
||||||
entity_list.AddGroup(g);
|
entity_list.AddGroup(g);
|
||||||
database.SetGroupLeaderName(g->GetID(), mercOwner->GetName());
|
database.SetGroupLeaderName(g->GetID(), mercOwner->GetName());
|
||||||
@ -5134,6 +5134,15 @@ bool Merc::Unsuspend(bool setMaxStats) {
|
|||||||
|
|
||||||
loaded = true;
|
loaded = true;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if(MERC_DEBUG > 0)
|
||||||
|
mercOwner->Message(7, "Mercenary failed to join the group - Suspending");
|
||||||
|
|
||||||
|
Suspend();
|
||||||
|
safe_delete(g);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (AddMercToGroup(this, mercOwner->GetGroup()))
|
else if (AddMercToGroup(this, mercOwner->GetGroup()))
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user