Tipologie server:
*Resursă folosită:
*ServerFiles utilizat:
*Syserr:
Poză:
*Detalii suplimentare: Am bagat acest sistem sursa/limita-drop-nivel-minim-maxim-t104432.html
insa acum daca dau sa vad dropul metinelor/bossi nu imi apare la lv minim care e setat apare la lv de la care el nu trebuie sa mai aibe drop ...functia de la #ifdef __SEND_TARGET_INFO__
vad ca este asta
// Level Item Group
{
itertype(m_map_pkLevelItemGroup) it;
it = m_map_pkLevelItemGroup.find(pkChr->GetRaceNum());
if ( it != m_map_pkLevelItemGroup.end() )
{
if ( it->second->GetLevelLimitStart() <= (DWORD)iLevel )
{
__typeof(it->second->GetVector()) v = it->second->GetVector();
for ( DWORD i=0; i < v.size(); i++ )
{
DWORD dwVnum = v.dwVNum;
item = CreateItem(dwVnum, v.iCount, 0, true);
if ( item ) vec_item.push_back(item);
}
}
}
}cred ca de aici citeste
ca mai am o functie la fel dar am modificato ca in tutorial.
// Level Item Group
{
itertype(m_map_pkLevelItemGroup) it;
it = m_map_pkLevelItemGroup.find(pkChr->GetRaceNum());
#ifdef DROP_LEVEL_LIMIT_RANGE
if (it != m_map_pkLevelItemGroup.end())
{
if (it->second->GetLevelLimitStart() <= (DWORD)iLevel)
{
//pkKiller->ChatPacket(CHAT_TYPE_INFO_ITEM, "GetLevelLimitStart %d", it->second->GetLevelLimitStart());// Only Output Info for test
iLevelMin = true;
}
if (it->second->GetLevelLimitEnd() >= (DWORD)iLevel)
{
//pkKiller->ChatPacket(CHAT_TYPE_INFO_ITEM, "GetLevelLimitEnd %d", it->second->GetLevelLimitEnd());// Only Output Info for test
iLevelMax = true;
}
if (iLevelMin && iLevelMax)
{
decltype(it->second->GetVector()) v = it->second->GetVector();
#else
if (it != m_map_pkLevelItemGroup.end())
{
if (it->second->GetLevelLimit() <= (DWORD)iLevel)
{
decltype(it->second->GetVector()) v = it->second->GetVector();
#endif
for ( DWORD i=0; i < v.size(); i++ )
{
if (v.dwPct >= (DWORD)number(1, 1000000/*iRandRange*/))
{
DWORD dwVnum = v.dwVNum;
item = CreateItem(dwVnum, v.iCount, 0, true);
if ( item ) vec_item.push_back(item);
}
}
}
}
}

