35 lines
1.1 KiB
C++
35 lines
1.1 KiB
C++
#ifndef _DEFINED_ASW_PICKUP_H
|
|
#define _DEFINED_ASW_PICKUP_H
|
|
|
|
#include "items.h"
|
|
#include "asw_shareddefs.h"
|
|
#include "iasw_server_usable_entity.h"
|
|
|
|
class CASW_Player;
|
|
class CASW_Marine;
|
|
|
|
class CASW_Pickup : public CItem, public IASW_Server_Usable_Entity
|
|
{
|
|
public:
|
|
DECLARE_CLASS( CASW_Pickup, CItem );
|
|
DECLARE_SERVERCLASS();
|
|
DECLARE_DATADESC();
|
|
|
|
virtual void Spawn();
|
|
|
|
bool m_bFreezePickup; // if set, the pickup won't be physically simulated, but will be frozen in place
|
|
|
|
virtual bool AllowedToPickup(CASW_Marine *pMarine) { return true; }
|
|
|
|
// IASW_Server_Usable_Entity implementation
|
|
virtual CBaseEntity* GetEntity() { return this; }
|
|
virtual bool IsUsable(CBaseEntity *pUser);
|
|
virtual bool RequirementsMet( CBaseEntity *pUser ) { return true; }
|
|
virtual void ActivateUseIcon( CASW_Marine* pMarine, int nHoldType );
|
|
virtual void MarineUsing(CASW_Marine* pMarine, float deltatime) { }
|
|
virtual void MarineStartedUsing(CASW_Marine* pMarine) { }
|
|
virtual void MarineStoppedUsing(CASW_Marine* pMarine) { }
|
|
virtual bool NeedsLOSCheck() { return true; }
|
|
};
|
|
|
|
#endif /* _DEFINED_ASW_PICKUP_H */ |