NS/main/source/mod/AvHMarineWeapon.h

80 lines
2.2 KiB
C
Raw Normal View History

//======== (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: AvHMarineWeapon.h $
// $Date: 2002/10/03 18:58:15 $
//
//-------------------------------------------------------------------------------
// $Log: AvHMarineWeapon.h,v $
// Revision 1.3 2002/10/03 18:58:15 Flayra
// - Added heavy view models
//
// Revision 1.2 2002/06/25 17:50:59 Flayra
// - Reworking for correct player animations and new enable/disable state, new view model artwork, alien weapon refactoring
//
// Revision 1.1 2002/05/23 02:33:42 Flayra
// - Post-crash checkin. Restored @Backup from around 4/16. Contains changes for last four weeks of development.
//
//===============================================================================
#ifndef AVH_MARINE_WEAPON_H
#define AVH_MARINE_WEAPON_H
#include "AvHBasePlayerWeapon.h"
class AvHMarineWeapon : public AvHBasePlayerWeapon
{
public:
virtual float ComputeAttackInterval() const;
virtual char* GetActiveViewModel() const;
bool GetAllowedForUser3(AvHUser3 inUser3);
virtual float GetDeploySoundVolume() const;
virtual char* GetHeavyViewModel() const;
virtual void Precache();
};
class AvHReloadableMarineWeapon : public AvHMarineWeapon
{
public:
virtual void DeductCostForShot(void);
virtual int DefaultReload( int iClipSize, int iAnim, float fDelay );
virtual int GetGotoReloadAnimation() const = 0;
virtual float GetGotoReloadAnimationTime() const = 0;
virtual int GetShellReloadAnimation() const = 0;
virtual float GetShellReloadAnimationTime() const = 0;
virtual int GetEndReloadAnimation() const = 0;
virtual float GetEndReloadAnimationTime() const = 0;
virtual void Holster( int skiplocal);
virtual void Reload(void);
virtual void WeaponIdle(void);
protected:
virtual void Init();
private:
int mSpecialReload;
float mNextReload;
};
#endif