HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!
Merhaba, birisi bana yardımcı olabilir mi, oyunu ve veritabanını oluşturma konusunda bir sorunum var
HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!
#ifdef ENABLE_DROP_INFO
void CInputMain::DropInfo(LPCHARACTER ch)
{
if (!ch || !ch->GetDesc())
return;
const auto pkTarget = ch->GetTarget();
if (!pkTarget)
return;
if (pkTarget->IsMonster() || pkTarget->IsStone())
{
std::vector<TDropInfoItem> vecDropInfo;
const auto bHasDropInfo = ITEM_MANAGER::Instance().CreateDropItemInfo(pkTarget, ch, vecDropInfo);
if (bHasDropInfo)
{
TEMP_BUFFER buf;
for (const auto& it : vecDropInfo)
{
TPacketDropInfoItem item;
item.dwVnum = it.dwVnum;
item.byMinCount = it.byMinCount;
item.byMaxCount = it.byMaxCount;
buf.write(&it, sizeof(TPacketDropInfoItem));
}
TPacketDropInfo packet;
packet.header = HEADER_GC_DROP_INFO;
packet.size = sizeof(TPacketDropInfo) + buf.size();
packet.item_count = vecDropInfo.size();
const auto& tTable = pkTarget->GetMobTable();
packet.gold_min = tTable.dwGoldMin;
packet.gold_max = tTable.dwGoldMax;
packet.mob_vnum = pkTarget->GetRaceNum();
ch->GetDesc()->BufferedPacket(&packet, sizeof(TPacketDropInfo));
ch->GetDesc()->Packet(buf.read_peek(), buf.size());
}
}
}
#endif
[KOD]#ifdef ENABLE_DROP_INFO
void CInputMain:ropInfo(rozdział LPCHARACTER)
{
if (!ch || !ch->GetDesc())
powrót;
const auto pkTarget = ch->GetTarget();
jeśli (!pkTarget)
powrót;
if (pkTarget->IsMonster() || pkTarget->IsStone())
{
std::vector<TDropInfoItem> vecDropInfo;
const auto bHasDropInfo = ITEM_MANAGER::Instance().CreateDropItemInfo(pkTarget, ch, vecDropInfo);
jeśli (bHasDropInfo)
{
przygotowanie TEMP_BUFFER;
for (const auto& it: vecDropInfo)
{
Element TPacketDropInfoItem;
bozycja.dwVnum = it.dwVnum;
item.byMinCount = it.byMinCount;
item.byMaxCount = it.byMaxCount;
buf.write(&it, rozmiar(TPacketDropInfoItem));
}
pakiet TPacketDropInfo;
pakiet.header = HEADER_GC_DROP_INFO;
pakiet.rozmiar = rozmiar(TPacketDropInfo) + buf.rozmiar();
pakiet.item_count = vecDropInfo.size();
const auto& tTable = pkTarget->GetMobTable();
pakiet.gold_min = tTable.dwGoldMin;
pakiet.gold_max = tTable.dwGoldMax;
pakiet.mob_vnum = pkTarget->GetRaceNum();
ch->GetDesc()->BufferedPacket(&packet, sizeof(TPacketDropInfo));
ch->GetDesc()->Packet(buf.read_peek(), buf.size());
}
}
}
#endif
[/KOD]
