mirror of
https://github.com/ENSL/NS.git
synced 2024-11-30 08:20:56 +00:00
49 lines
1.4 KiB
C
49 lines
1.4 KiB
C
|
//======== (C) Copyright 2002 Charles G. Cleveland All rights reserved. =========
|
||
|
//
|
||
|
// The copyright to the contents herein is the property of Charles G. Cleveland.
|
||
|
// The contents may be used and/or copied only with the written permission of
|
||
|
// Charles G. Cleveland, or in accordance with the terms and conditions stipulated in
|
||
|
// the agreement/contract under which the contents have been supplied.
|
||
|
//
|
||
|
// Purpose:
|
||
|
//
|
||
|
// $Workfile: $
|
||
|
// $Date: $
|
||
|
//
|
||
|
//-------------------------------------------------------------------------------
|
||
|
// $Log: $
|
||
|
//===============================================================================
|
||
|
#ifndef AVH_CLOAKABLE_H
|
||
|
#define AVH_CLOAKABLE_H
|
||
|
|
||
|
class AvHCloakable
|
||
|
{
|
||
|
public:
|
||
|
AvHCloakable();
|
||
|
|
||
|
virtual bool GetCanCloak() const;
|
||
|
virtual float GetCloakTime() const;
|
||
|
virtual bool GetIsCloaked() const;
|
||
|
bool GetIsPartiallyCloaked() const;
|
||
|
virtual float GetUncloakTime() const;
|
||
|
virtual float GetOpacity() const;
|
||
|
void SetSpeeds(float inCurrentSpeed, float inMaxSpeed, float inMaxWalkSpeed);
|
||
|
virtual void Cloak(bool inNoFade = false);
|
||
|
virtual void Uncloak(bool inNoFade = false);
|
||
|
|
||
|
virtual void ResetCloaking();
|
||
|
virtual void Update();
|
||
|
|
||
|
private:
|
||
|
float GetTime() const;
|
||
|
void Init();
|
||
|
float mCurrentSpeed;
|
||
|
float mMaxSpeed;
|
||
|
float mMaxWalkSpeed;
|
||
|
float mTimeOfLastCloak;
|
||
|
float mTimeOfLastUncloak;
|
||
|
float mOpacity;
|
||
|
float mTimeOfLastUpdate;
|
||
|
};
|
||
|
|
||
|
#endif
|