Modified source engine (2017) developed by valve and leaked in 2020. Not for commercial purporses
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.

68 lines
1.6 KiB

5 years ago
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef FUNC_AREAPORTALWINDOW_H
#define FUNC_AREAPORTALWINDOW_H
#ifdef _WIN32
#pragma once
#endif
#include "baseentity.h"
#include "utllinkedlist.h"
#include "func_areaportalbase.h"
class CFuncAreaPortalWindow : public CFuncAreaPortalBase
{
public:
DECLARE_CLASS( CFuncAreaPortalWindow, CFuncAreaPortalBase );
DECLARE_SERVERCLASS();
DECLARE_DATADESC();
CFuncAreaPortalWindow();
~CFuncAreaPortalWindow();
// Overrides.
public:
virtual void Spawn();
virtual void Activate();
// CFuncAreaPortalBase stuff.
public:
virtual bool UpdateVisibility( const Vector &vOrigin, float fovDistanceAdjustFactor, bool &bIsOpenOnClient );
public:
// Returns false if the viewer is past the fadeout distance.
bool IsWindowOpen( const Vector &vOrigin, float fovDistanceAdjustFactor );
public:
CNetworkVar( float, m_flFadeStartDist ); // Distance at which it starts fading (when <= this, alpha=m_flTranslucencyLimit).
CNetworkVar( float, m_flFadeDist ); // Distance at which it becomes solid.
// 0-1 value - minimum translucency it's allowed to get to.
CNetworkVar( float, m_flTranslucencyLimit );
string_t m_iBackgroundBModelName; // string name of background bmodel
CNetworkVar( int, m_iBackgroundModelIndex );
//Input handlers
void InputSetFadeStartDistance( inputdata_t &inputdata );
void InputSetFadeEndDistance( inputdata_t &inputdata );
};
#endif // FUNC_AREAPORTALWINDOW_H