mirror of
https://github.com/nillerusr/source-engine.git
synced 2026-08-13 12:19:13 +00:00
1
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
//=======================================================================================//
|
||||
|
||||
#ifndef BASETHINKER_H
|
||||
#define BASETHINKER_H
|
||||
#ifdef _WIN32
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
|
||||
#include "ithinker.h"
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
|
||||
//
|
||||
// Adds/removes itself from think manager and implements a default ShouldThink().
|
||||
//
|
||||
class CBaseThinker : public IThinker
|
||||
{
|
||||
public:
|
||||
CBaseThinker();
|
||||
virtual ~CBaseThinker();
|
||||
|
||||
protected:
|
||||
virtual void Think();
|
||||
virtual bool ShouldThink() const;
|
||||
virtual void PostThink();
|
||||
|
||||
// Derived classes must implement this.
|
||||
// Return 0 to think every frame.
|
||||
// Return -1 to never think.
|
||||
virtual float GetNextThinkTime() const = 0;
|
||||
|
||||
private:
|
||||
float m_flNextThinkTime;
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------------------------
|
||||
|
||||
#endif // BASETHINKER_H
|
||||
Reference in New Issue
Block a user