sqwarmed/sdk_src/game/server/swarm/asw_pickup.h

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 */