79 lines
2.5 KiB
C++
79 lines
2.5 KiB
C++
//========= Copyright © 1996-2008, Valve Corporation, All rights reserved. ====
|
|
//
|
|
// Purpose:
|
|
//
|
|
//=============================================================================
|
|
|
|
#ifndef LOGIC_PLAYERPROXY_H
|
|
#define LOGIC_PLAYERPROXY_H
|
|
#pragma once
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Purpose: Used to relay outputs/inputs from the player to the world and vice versa
|
|
//-----------------------------------------------------------------------------
|
|
class CLogicPlayerProxy : public CLogicalEntity
|
|
{
|
|
DECLARE_CLASS( CLogicPlayerProxy, CLogicalEntity );
|
|
DECLARE_DATADESC();
|
|
|
|
public:
|
|
// FIXME: Subclass
|
|
#ifdef PORTAL2
|
|
COutputEvent m_OnStartSlowingTime;
|
|
COutputEvent m_OnStopSlowingTime;
|
|
COutputEvent m_OnCoopPing;
|
|
|
|
COutputEvent m_OnPrimaryPortalPlaced;
|
|
COutputEvent m_OnSecondaryPortalPlaced;
|
|
#endif // PORTAL2
|
|
|
|
#if defined( HL2_DLL )
|
|
COutputEvent m_OnFlashlightOn;
|
|
COutputEvent m_OnFlashlightOff;
|
|
COutputEvent m_PlayerMissedAR2AltFire; // Player fired a combine ball which did not dissolve any enemies.
|
|
#endif // HL2_DLL
|
|
|
|
COutputEvent m_PlayerHasAmmo;
|
|
COutputEvent m_PlayerHasNoAmmo;
|
|
COutputEvent m_PlayerDied;
|
|
|
|
COutputEvent m_OnDuck;
|
|
COutputEvent m_OnUnDuck;
|
|
COutputEvent m_OnJump;
|
|
|
|
COutputInt m_RequestedPlayerHealth;
|
|
|
|
#if defined HL2_EPISODIC
|
|
void InputSetFlashlightSlowDrain( inputdata_t &inputdata );
|
|
void InputSetFlashlightNormalDrain( inputdata_t &inputdata );
|
|
void InputLowerWeapon( inputdata_t &inputdata );
|
|
void InputSetLocatorTargetEntity( inputdata_t &inputdata );
|
|
#endif // HL2_EPISODIC
|
|
|
|
void InputRequestPlayerHealth( inputdata_t &inputdata );
|
|
void InputSetPlayerHealth( inputdata_t &inputdata );
|
|
void InputRequestAmmoState( inputdata_t &inputdata );
|
|
void InputEnableCappedPhysicsDamage( inputdata_t &inputdata );
|
|
void InputDisableCappedPhysicsDamage( inputdata_t &inputdata );
|
|
|
|
#if defined ( PORTAL2 )
|
|
void InputAddPotatosToPortalgun( inputdata_t &inputdata );
|
|
void InputRemovePotatosFromPortalgun( inputdata_t &inputdata );
|
|
|
|
void InputSetDropEnabled( inputdata_t &inputdata );
|
|
void InputForceVMGrabController( inputdata_t &inputdata );
|
|
void InputForcePhysicsGrabController( inputdata_t &inputdata );
|
|
void InputResetGrabControllerBehavior( inputdata_t &inputdata );
|
|
void InputPaintPlayerWithPortalPaint( inputdata_t &inputdata );
|
|
void InputSetMotionBlurAmount( inputdata_t &inputdata );
|
|
#endif
|
|
|
|
void Activate( void );
|
|
|
|
bool PassesDamageFilter( const CTakeDamageInfo &info );
|
|
|
|
EHANDLE m_hPlayer;
|
|
};
|
|
|
|
|
|
#endif // LOGIC_PLAYERPROXY_H
|