88 lines
4 KiB
C++
88 lines
4 KiB
C++
// Copyright (C) 2007 Id Software, Inc.
|
|
//
|
|
|
|
|
|
#ifndef __GAME_INTERFACES_USABLEINTERFACE_H__
|
|
#define __GAME_INTERFACES_USABLEINTERFACE_H__
|
|
|
|
class sdWeaponLockInfo;
|
|
class sdEntityDisplayIconInfo;
|
|
|
|
|
|
class sdUsableInterface {
|
|
public:
|
|
virtual bool OnExit( idPlayer* player, bool force = false ) = 0;
|
|
virtual void SwapViewMode( idPlayer* player ) = 0;
|
|
|
|
virtual void BecomeActiveViewProxy( idPlayer* viewPlayer ) = 0;
|
|
virtual void StopActiveViewProxy( void ) = 0;
|
|
virtual void UpdateProxyView( idPlayer* viewPlayer ) = 0;
|
|
|
|
virtual bool GetHideHud( idPlayer* player ) const = 0;
|
|
virtual bool GetSensitivity( idPlayer* player, float& sensX, float& sensY ) const = 0;
|
|
virtual bool GetShowPlayer( idPlayer* player ) const = 0;
|
|
virtual bool GetShowPlayerShadow( idPlayer* player ) const = 0;
|
|
virtual float GetFov( idPlayer* player ) const = 0;
|
|
virtual void ClampViewAngles( idPlayer* player, const idAngles& oldViewAngles ) const = 0;
|
|
virtual bool GetShowCrosshair( idPlayer* player ) const = 0;
|
|
virtual bool GetHideDecoyInfo( idPlayer* player ) const = 0;
|
|
virtual bool GetShowTargetingInfo( idPlayer* player ) const = 0;
|
|
virtual playerStance_t GetPlayerStance( idPlayer* player ) const = 0;
|
|
virtual jointHandle_t GetPlayerIconJoint( idPlayer* player ) const = 0;
|
|
|
|
virtual float GetDamageScale( idPlayer* player ) const = 0;
|
|
|
|
virtual void UpdateHud( idPlayer* player, guiHandle_t handle ) = 0;
|
|
virtual void UpdateViewAngles( idPlayer* player ) = 0;
|
|
virtual void UpdateViewPos( idPlayer* player, idVec3& origin, idMat3& axis, bool fullUpdate ) = 0;
|
|
virtual void CalculateRenderView( idPlayer* player, renderView_t& renderView ) = 0;
|
|
virtual const idAngles GetRequiredViewAngles( idPlayer* player, idVec3& target ) = 0;
|
|
|
|
virtual int GetDestructionEndTime( void ) const = 0;
|
|
virtual bool GetDirectionWarning( void ) const = 0;
|
|
virtual int GetRouteKickDistance( void ) const = 0;
|
|
|
|
virtual const sdDeclGUI* GetOverlayGUI( void ) const = 0;
|
|
|
|
virtual bool HasAbility( qhandle_t handle, const idPlayer* player ) const = 0;
|
|
|
|
virtual void ForcePlacement( idPlayer* other, int index, int oldIndex, bool keepCamera ) = 0;
|
|
virtual void FindPositionForPlayer( idPlayer* player ) = 0;
|
|
virtual int GetNumPositions() const = 0;
|
|
virtual idPlayer* GetPlayerAtPosition( int i ) const = 0;
|
|
virtual const sdDeclLocStr* GetPositionTitle( int i ) const = 0;
|
|
|
|
virtual idPlayer* GetXPSharer( float& shareFactor ) = 0;
|
|
|
|
virtual void SwapPosition( idPlayer* player ) = 0;
|
|
virtual void SelectWeapon( idPlayer* player, int index ) = 0;
|
|
|
|
virtual const sdWeaponLockInfo* GetWeaponLockInfo( idPlayer* player ) const = 0;
|
|
|
|
virtual void NextWeapon( idPlayer* player ) const = 0;
|
|
virtual void PrevWeapon( idPlayer* player ) const = 0;
|
|
|
|
virtual bool GetAllowPlayerMove( idPlayer* player ) const = 0;
|
|
virtual bool GetAllowPlayerDamage( idPlayer* player ) const = 0;
|
|
virtual bool GetAllowPlayerWeapon( idPlayer* player ) const = 0;
|
|
virtual bool GetAllowAdjustBodyAngles( idPlayer* player ) const = 0;
|
|
virtual const sdDeclLocStr* GetWeaponName( const idPlayer* player ) const = 0;
|
|
virtual const char* GetWeaponLookupName( const idPlayer* player ) const = 0;
|
|
|
|
virtual void OnPostThink( void ) = 0;
|
|
};
|
|
|
|
class sdInteractiveInterface {
|
|
public:
|
|
virtual bool OnActivate( idPlayer* player, float distance ) = 0;
|
|
virtual bool OnActivateHeld( idPlayer* player, float distance ) = 0;
|
|
virtual bool OnUsed( idPlayer* player, float distance ) = 0;
|
|
};
|
|
|
|
class sdEntityDisplayIconInterface {
|
|
public:
|
|
virtual bool HasIcon( idPlayer* viewer, sdWorldToScreenConverter& converter ) = 0;
|
|
virtual bool GetEntityDisplayIconInfo( idPlayer* viewer, sdWorldToScreenConverter& converter, sdEntityDisplayIconInfo& iconInfo ) = 0;
|
|
};
|
|
|
|
#endif // __GAME_INTERFACES_USABLEINTERFACE_H__
|