You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.1 KiB
35 lines
1.1 KiB
1 year ago
|
#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 */
|