mirror of
https://github.com/ENSL/NS.git
synced 2024-12-11 05:11:27 +00:00
b5590dd5d9
git-svn-id: https://unknownworlds.svn.cloudforge.com/ns1@144 67975925-1194-0748-b3d5-c16f83f1a3a1
93 lines
No EOL
2.5 KiB
C++
93 lines
No EOL
2.5 KiB
C++
//======== (C) Copyright 2001 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: AvHWeldable.h $
|
|
// $Date: 2002/10/03 18:49:43 $
|
|
//
|
|
//-------------------------------------------------------------------------------
|
|
// $Log: AvHWeldable.h,v $
|
|
// Revision 1.2 2002/10/03 18:49:43 Flayra
|
|
// - Changes for welding order completion
|
|
//
|
|
// Revision 1.1 2002/05/23 02:32:40 Flayra
|
|
// - Post-crash checkin. Restored @Backup from around 4/16. Contains changes for last four weeks of development.
|
|
//
|
|
//===============================================================================
|
|
#ifndef AVH_WELDABLE_H
|
|
#define AVH_WELDABLE_H
|
|
|
|
#include "mod/AvHEntities.h"
|
|
|
|
class AvHWeldable : public AvHBaseEntity
|
|
{
|
|
public:
|
|
AvHWeldable();
|
|
|
|
void AddBuildTime(float inTime);
|
|
|
|
virtual void AddChecksum(Checksum& inChecksum);
|
|
|
|
void EndTrace(void);
|
|
|
|
bool GetCanBeWelded() const;
|
|
|
|
bool GetIsWelded() const;
|
|
|
|
virtual float GetNormalizedBuildPercentage() const;
|
|
|
|
bool GetWeldOpens() const;
|
|
|
|
virtual void KeyValue( KeyValueData* pkvd );
|
|
|
|
virtual void Killed( entvars_t *pevAttacker, int iGib );
|
|
|
|
virtual void NotifyUpgrade(AvHUpgradeMask inUpgradeMask);
|
|
|
|
virtual void Precache(void);
|
|
|
|
virtual void ResetEntity(void);
|
|
|
|
virtual void Spawn();
|
|
|
|
void StartTrace(void);
|
|
//virtual int TakeDamage( entvars_t* pevInflictor, entvars_t* pevAttacker, float flDamage, int bitsDamageType );
|
|
|
|
//void EXPORT WeldableThink(void);
|
|
|
|
void EXPORT WeldableTouch(CBaseEntity *pOther);
|
|
|
|
void EXPORT WeldableUse( CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value );
|
|
|
|
private:
|
|
void Init();
|
|
void SetHealth();
|
|
void SetPEVFlagsFromState();
|
|
void TriggerBroken();
|
|
void TriggerFinished();
|
|
void TriggerUse();
|
|
void UpdateEntityState();
|
|
|
|
bool mWelded;
|
|
bool mWeldOpens;
|
|
bool mUseState;
|
|
bool mDestroyed;
|
|
|
|
Materials mMaterial;
|
|
string mTargetOnBreak;
|
|
string mTargetOnFinish;
|
|
string mTargetOnUse;
|
|
float mTimeBuilt;
|
|
float mBuildTime;
|
|
float mMaxHealth;
|
|
float mNonUpgradedMaxHealth;
|
|
float mThinkInterval;
|
|
float mTimeLastPlayerTouch;
|
|
};
|
|
|
|
#endif |