This repository has been archived on 2024-06-13. You can view files and clone it, but cannot push or open issues or pull requests.
nekohook/modules/source2013/sdk/game/server/func_areaportalwindow.h
2020-08-04 13:13:01 -04:00

61 lines
1.7 KiB
C++

//========= 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 "func_areaportalbase.h"
#include "utllinkedlist.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