Drop Info compile error

02/03/2017 13:12 Sizzurpz#1
So i added the drop info feature from the dc files and i get this error while compiling the world server :

Code:
WorldServer error LNK2001: unresolved external symbol "public: static class CInfoDrop * __cdecl CInfoDrop::GetInstance(void)" (?GetInstance@CInfoDrop@@SAPAV1@XZ)

WorldServer error LNK2019: unresolved external symbol "public: class std::vector<struct s_info,class std::allocator<struct s_info> > __thiscall CInfoDrop::GetInfoDrop(void)const " (?GetInfoDrop@CInfoDrop@@QBE?AV?$vector@Us_info@@V?$allocator@Us_info@@@std@@@std@@XZ) referenced in function "private: void __thiscall CDPSrvr::OnInfoDrop(class CAr &,unsigned long,unsigned long,unsigned char *,unsigned long)" (?OnInfoDrop@CDPSrvr@@AAEXAAVCAr@@KKPAEK@Z)

WorldServer error LNK2019: unresolved external symbol "public: static class CInfoDrop * __cdecl CInfoDrop::GetInstance(void)" (?GetInstance@CInfoDrop@@SAPAV1@XZ) referenced in function "private: void __thiscall CDPSrvr::OnInfoDrop(class CAr &,unsigned long,unsigned long,unsigned char *,unsigned long)" (?OnInfoDrop@CDPSrvr@@AAEXAAVCAr@@KKPAEK@Z)

WorldServer error LNK2019: unresolved external symbol "public: void __thiscall CInfoDrop::AddInfoDrop(int const &,unsigned long const &,unsigned long const &)" (?AddInfoDrop@CInfoDrop@@QAEXABHABK1@Z) referenced in function "public: int __thiscall CProject::LoadPropMoverEx(char const *)" (?LoadPropMoverEx@CProject@@QAEHPBD@Z)

WorldServer fatal error LNK1120: 3 unresolved externals
DPsrvr.h
Code:
#ifdef __INFO_DROP
    void	OnInfoDrop( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize );
#endif //__INFO_DROP
DPsrvr.cpp
Code:
#ifdef __INFO_DROP
    ON_MSG( PACKKETTYPE_INFO_DROP, &CDPSrvr::OnInfoDrop );
#endif //__INFO_DROP

#ifdef __INFO_DROP
void CDPSrvr::OnInfoDrop( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
{
    CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );
    if( IsValidObj( pUser ) )
    {
		DWORD dwID;
        ar >> dwID;
		
		if( dwID == NULL_ID)
			return;
			
		MoverProp* pMover = prj.GetMoverProp( dwID );
		if( !pMover)
			return;
		
		vector<t_info> 	info;
		size_t nSize = 0;
		for( vector<t_info>::const_iterator it = CInfoDrop::GetInstance()->GetInfoDrop().begin(); it != CInfoDrop::GetInstance()->GetInfoDrop().end(); ++it )
		{
			if( dwID == it->dwID )
			{
				t_info		tmp;
				
				memset( &tmp, 0, sizeof( tmp ) );
				tmp.dwID = it->dwID;
				tmp.dwIndex = it->dwIndex;
				tmp.dwProbability = it->dwProbability;
				info.push_back( tmp );
				nSize++;
			}
		}
		if( info.size() > 0 && info.size() < 80 )
			pUser->AddInfoDrop( info, nSize );
		info.clear();
	}
}
#endif //__INFO_DROP
and for the last error this window opens:
WorldServer.ini
Code:
ResourceFolder "Removed"
Key 0101
Core "127.0.0.1"
DB "127.0.0.1"
Account "127.0.0.1"

LANG	1
Heartbeat 10101

Proc	2

GUILDWAR

//18
//PK
//PKCOST
//STEAL

DROPITEM_REMOVE

WORMON
GUILDBANK
GUILDCOMBAT
GUILDCOMBAT1TO1
ARENA
SECRETROOM
RAINBOWRACE

RECOMMEND

//NO_MEMBER_TRADE
NO_TEAM_TRADE
//NO_ADMIN_TRADE
I hope someone can help me out :)